Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "stm32f3xx.h" // Device header
- #include <stdint.h>
- #include <string.h>
- #include <stdio.h>
- #include <stdlib.h>
- //PA9 TXD
- //PA10 RXD
- //UART con cable
- //SPI con pantalla
- //I2C con acelerometro
- #define MASK(x) (1<<x)
- extern uint32_t Rec_registros(uint32_t reg);
- extern void rm0(uint32_t datitos);
- extern void rm1(uint32_t datitos);
- extern void rm2(uint32_t datitos);
- extern void rm3(uint32_t datitos);
- extern void rm4(uint32_t datitos);
- extern void rm5(uint32_t datitos);
- extern void rm6(uint32_t datitos);
- extern void rm7(uint32_t datitos);
- extern void rm8(uint32_t datitos);
- extern void rm9(uint32_t datitos);
- extern void rm10(uint32_t datitos);
- extern void rm11(uint32_t datitos);
- extern void rm12(uint32_t datitos);
- extern void yolo1(uint32_t a,uint32_t b);
- extern void yolo2(uint32_t a,uint32_t b);
- extern void yolo3(uint32_t a,uint32_t b);
- extern void yolo4(uint32_t a,uint32_t b);
- uint16_t adc_data;
- void ADC_Init (void);
- float v_ref = 3.3f;
- float voltaje = 0.0f;
- void USART1_Config(void){
- RCC->AHBENR |= RCC_AHBENR_GPIOAEN;
- RCC->APB2ENR |= RCC_APB2ENR_USART1EN;
- GPIOA->MODER |= (2<<18)|(2<<20);
- GPIOA->AFR[1] |= (7<<4)|(7<<8);
- USART1->BRR = 69; //115200 bauds
- USART1->CR1 |= USART_CR1_TE + USART_CR1_RE + USART_CR1_RXNEIE;
- USART1->CR1 |= USART_CR1_UE;
- NVIC_EnableIRQ(USART1_IRQn);
- }
- void USART1_Send(char c) {
- while(!(USART1->ISR & USART_ISR_TXE));
- USART1->TDR=c;
- }
- void USART1_putString(char * string) {
- while(*string) {
- USART1_Send(*string);
- string++;
- }
- }
- void ADC_Init(void){
- USART1_putString("\r\n");
- USART1_putString("hol");
- USART1_putString("\r\n");
- RCC->AHBENR |= RCC_AHBENR_ADC12EN + RCC_AHBENR_GPIOAEN;
- GPIOA->MODER |= (3<<8);
- ADC2->CFGR |= ADC_CFGR_CONT + ADC_CFGR_RES_0;
- ADC2->SQR1 |= (1<<6);
- ADC1_2_COMMON->CCR |= (3<<16);
- ADC2->CR |= ADC_CR_ADEN + ADC_CR_ADSTART;
- ADC2->IER |= ADC_IER_EOCIE;
- NVIC_EnableIRQ(ADC1_2_IRQn);
- }
- void ADC1_2_IRQHandler(void){
- USART1_putString("\r\n");
- USART1_putString("Interrupcion");
- USART1_putString("\r\n");
- adc_data = ADC2->DR;
- }
- void analizar(char comando[]){
- char com[5];
- char reg[5];
- char data[20];
- const char s[2] = " ";
- char *token;
- token = strtok(comando, s);
- if (strcmp(token, "RD") == 0){
- USART1_putString("\r\n");
- USART1_putString("Ingreso RD");
- USART1_putString("\r\n");
- uint32_t val=0;
- char res[100] = "";
- val = Rec_registros(0);
- sprintf(res,"\nR%i: 0x%x\n\r",0,val);
- USART1_putString(res);
- val = Rec_registros(1);
- sprintf(res,"\nR%i: 0x%x\n\r",1,val);
- USART1_putString(res);
- val = Rec_registros(2);
- sprintf(res,"\nR%i: 0x%x\n\r",2,val);
- USART1_putString(res);
- val = Rec_registros(3);
- sprintf(res,"\nR%i: 0x%x\n\r",3,val);
- USART1_putString(res);
- val = Rec_registros(4);
- sprintf(res,"\nR%i: 0x%x\n\r",4,val);
- USART1_putString(res);
- val = Rec_registros(5);
- sprintf(res,"\nR%i: 0x%x\n\r",5,val);
- USART1_putString(res);
- val = Rec_registros(6);
- sprintf(res,"\nR%i: 0x%x\n\r",6,val);
- USART1_putString(res);
- val = Rec_registros(7);
- sprintf(res,"\nR%i: 0x%x\n\r",7,val);
- USART1_putString(res);
- val = Rec_registros(8);
- sprintf(res,"\nR%i: 0x%x\n\r",8,val);
- USART1_putString(res);
- val = Rec_registros(9);
- sprintf(res,"\nR%i: 0x%x\n\r",9,val);
- USART1_putString(res);
- val = Rec_registros(10);
- sprintf(res,"\nR%i: 0x%x\n\r",10,val);
- USART1_putString(res);
- val = Rec_registros(11);
- sprintf(res,"\nR%i: 0x%x\n\r",11,val);
- USART1_putString(res);
- val = Rec_registros(12);
- sprintf(res,"\nR%i: 0x%x\n\r",12,val);
- USART1_putString(res);
- val = Rec_registros(13);
- sprintf(res,"\nR%i: 0x%x\n\r",13,val);
- USART1_putString(res);
- val = Rec_registros(14);
- sprintf(res,"\nR%i: 0x%x\n\r",14,val);
- USART1_putString(res);
- val = Rec_registros(15);
- sprintf(res,"\nR%i: 0x%x\n\r",15,val);
- USART1_putString(res);
- USART1_putString("\r\n");
- }else if(strcmp(token, "RM") == 0){
- token = strtok(NULL, s);
- if (strcmp(token, "R0") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm0(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R0");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R1") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm1(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R1");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R2") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm2(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R2");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R3") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm3(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R3");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R4") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm4(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R4");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R5") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm5(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R5");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R6") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm6(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R6");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R7") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm7(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R7");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R8") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm8(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R8");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R9") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm9(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R9");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R10") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEndp;
- uint32_t li1p;
- li1p = strtol (token,&pEndp,16);
- rm10(li1p);
- USART1_putString("\r\n");
- USART1_putString("cambio R10");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R11") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm11(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R11");
- USART1_putString("\r\n");
- }
- }else if (strcmp(token, "R12") == 0){
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("error en el comando");
- USART1_putString("\r\n");
- }else{
- char * pEnd;
- uint32_t li1;
- li1 = strtol (token,&pEnd,16);
- rm12(li1);
- USART1_putString("\r\n");
- USART1_putString("cambio R12");
- USART1_putString("\r\n");
- }
- }else{
- USART1_putString("\r\n");
- USART1_putString("registro inválido.");
- USART1_putString("\r\n");
- }
- }else if(strcmp(token, "MD") == 0){
- USART1_putString("\r\n");
- USART1_putString("Ingreso MD");
- USART1_putString("\r\n");
- token = strtok(NULL, s);
- if(token == NULL){
- USART1_putString("No hay start y end, se utilizaran los valores default\r\nDe 0x2000064c a 0x20000666\r\n");
- char *p = (char *) 0x2000064c;
- char otro[2];
- int i ;
- for (i = 0; i < (0x20000666 - 0x2000064c); ++i)
- {
- sprintf(otro,"%02x", p[i]);
- USART1_putString(otro);
- USART1_putString(" ");
- }
- USART1_putString("\r\n");
- USART1_putString("\r\n");
- }else{
- char * start;
- uint32_t li1;
- li1 = strtol (token,&start,16);
- start = token;
- token = strtok(NULL, s);
- if(token == NULL){
- USART1_putString("Comando invalido");
- USART1_putString("\r\n");
- }else{
- char * resta;
- char *end;
- uint32_t li2;
- li2 = strtol (token,&end,16);
- end = token;
- uint32_t jka = li2-li1;
- char *p = (char *) li1;
- char otro[2];
- int contador = 4;
- char imprimir[11];
- while (li1< li2){
- if (!(contador%4)){
- USART1_putString("\r\n");
- sprintf(imprimir,"%x",li1);
- USART1_putString(imprimir);
- USART1_putString(": ");
- }
- sprintf(otro,"%02x", p[0]);
- USART1_putString(otro);
- USART1_putString("");
- li1++;
- p++;
- contador++;
- }
- USART1_putString("\r\n");
- }
- }
- }else if(strcmp(token, "MM") == 0){
- USART1_putString("\r\n");
- USART1_putString("Ingreso MM");
- USART1_putString("\r\n");
- token = strtok(NULL, s);
- if (token == NULL){
- USART1_putString("\r\n");
- USART1_putString("falta addr");
- USART1_putString("\r\n");
- }else{
- char * addr;
- uint32_t addrN;
- addrN = strtol (token,&addr,16);
- addr = token;
- token = strtok(NULL, s);
- if (token == NULL){
- USART1_putString("\r\n");
- USART1_putString("falta data");
- USART1_putString("\r\n");
- }else{
- char * data;
- uint32_t dataN;
- dataN = strtol (token,&data,16);
- data = token;
- token = strtok(NULL, s);
- if (token==NULL){
- USART1_putString("\r\n");
- USART1_putString("falta size");
- USART1_putString("\r\n");
- }else{
- char * size;
- uint32_t sizeN;
- sizeN = strtol (token,&size,16);
- size = token;
- if (sizeN == 1){
- USART1_putString("\r\n");
- USART1_putString("Size de 1 byte");
- USART1_putString("\r\n");
- yolo1(addrN,dataN);
- }else if(sizeN == 2){
- USART1_putString("\r\n");
- USART1_putString("Size de 2 byte");
- USART1_putString("\r\n");
- yolo2(addrN,dataN);
- }else if(sizeN == 3){
- USART1_putString("\r\n");
- USART1_putString("Size de 3 byte");
- USART1_putString("\r\n");
- yolo3(addrN,dataN);
- }else if(sizeN == 4){
- USART1_putString("\r\n");
- USART1_putString("Size de 4 byte");
- USART1_putString("\r\n");
- yolo4(addrN,dataN);
- }else{
- USART1_putString("\r\n");
- USART1_putString("Size invalido, SE USARA DEFAULT DE 1");
- yolo1(addrN,dataN);
- USART1_putString("\r\n");
- }
- //podemos trabajar
- USART1_putString("\r\n");
- USART1_putString(addr);
- USART1_putString(" ");
- USART1_putString(data);
- USART1_putString(" ");
- USART1_putString(size);
- USART1_putString("\r\n");
- }
- }
- }
- }else if(strcmp(token, "BF") == 0){
- USART1_putString("\r\n");
- USART1_putString("Ingreso BF");
- USART1_putString("\r\n");
- token = strtok(NULL, s);
- if (token == NULL){
- USART1_putString("\r\n");
- USART1_putString("falta start");
- USART1_putString("\r\n");
- }else{
- char * start;
- uint32_t startN;
- startN = strtol (token,&start,16);
- start = token;
- token = strtok(NULL, s);
- if (token == NULL){
- USART1_putString("\r\n");
- USART1_putString("falta end");
- USART1_putString("\r\n");
- }else{
- char * end;
- uint32_t endN;
- endN = strtol (token,&end,16);
- end = token;
- token = strtok(NULL, s);
- if (token == NULL){
- USART1_putString("\r\n");
- USART1_putString("falta data");
- USART1_putString("\r\n");
- }else{
- char * data;
- uint32_t dataN;
- dataN = strtol (token,&data,16);
- data = token;
- token = strtok(NULL, s);
- if (token == NULL){
- USART1_putString("\r\n");
- USART1_putString("No hay size, se usara el valor default de 1");
- USART1_putString("\r\n");
- while (startN<endN){
- yolo1(startN,dataN);
- startN++;
- }
- }else{
- char * size;
- uint32_t sizeN;
- sizeN = strtol (token,&size,16);
- size = token;
- if (sizeN==1){
- USART1_putString("\r\n");
- USART1_putString("Size = 1");
- USART1_putString("\r\n");
- while (startN<endN){
- yolo1(startN,dataN);
- startN++;
- }
- }else if(sizeN==2){
- USART1_putString("\r\n");
- USART1_putString("Size = 2");
- USART1_putString("\r\n");
- while (startN<endN){
- yolo2(startN,dataN);
- startN++;startN++;
- }
- }else if(sizeN==3){
- USART1_putString("\r\n");
- USART1_putString("Size = 3");
- USART1_putString("\r\n");
- while (startN<endN){
- yolo3(startN,dataN);
- startN++;startN++;startN++;
- }
- }else if(sizeN==4){
- USART1_putString("\r\n");
- USART1_putString("Size = 4");
- USART1_putString("\r\n");
- while (startN<endN){
- yolo4(startN,dataN);
- startN++;startN++;startN++;startN++;
- }
- }else{
- USART1_putString("\r\n");
- USART1_putString("size invalido");
- USART1_putString("\r\n");
- }
- USART1_putString("\r\n");
- USART1_putString(start);
- USART1_putString(" ");
- USART1_putString(end);
- USART1_putString(" ");
- USART1_putString(data);
- USART1_putString(" ");
- USART1_putString(size);
- USART1_putString("\r\n");
- }
- }
- }
- }
- }else if(strcmp(token, "RUN") == 0){
- USART1_putString("\r\n");
- USART1_putString("Ingreso RUN");
- USART1_putString("\r\n");
- }else if(strcmp(token, "CALL") == 0){
- USART1_putString("\r\n");
- USART1_putString("Ingreso CALL");
- USART1_putString("\r\n");
- }else if(strcmp(token, "Ain") == 0){
- USART1_putString("\r\n");
- USART1_putString("Ingreso Ain");
- USART1_putString("\r\n");
- uint8_t valDef;
- token = strtok(NULL, s);
- char * punt;
- uint32_t strtoint;
- strtoint = strtol (token,&punt,8);
- ADC_Init();
- RCC->AHBENR |= RCC_AHBENR_GPIODEN;
- GPIOD->MODER |= MASK(16) + MASK(18) +MASK(20) +MASK(22) +MASK(24) +MASK(26) +MASK(28) +MASK(30);
- /*
- if (token == NULL){
- ADC2->CFGR |= ADC_CFGR_RES_0;
- } else{
- if(strtoint == 6){
- ADC1->CFGR |= (3<<4);
- }else if(strtoint == 8){
- ADC1->CFGR |= (2<<4);
- }else if(strtoint == 10){
- ADC1->CFGR |= (1<<4);
- }if(strtoint == 12){
- ADC1->CFGR &= ~(11<<4);
- }else{
- USART1_putString("\r\n");
- USART1_putString("El valor de resolucion es incorrecto");
- USART1_putString("\r\n");
- }
- }*/
- GPIOD->ODR |=(1<<8);
- GPIOD->ODR |=(1<<9);
- GPIOD->ODR |=(1<<10);
- GPIOD->ODR |=(1<<11);
- GPIOD->ODR |=(1<<12);
- GPIOD->ODR |=(1<<13);
- GPIOD->ODR |=(1<<14);
- GPIOD->ODR |=(1<<15);
- while(1){
- voltaje = (adc_data*v_ref)/1023.0f;
- /*char array[10];
- sprintf(array, "%f", voltaje);
- USART1_putString("\r\n");
- USART1_putString(array);
- USART1_putString("\r\n");*/
- if (voltaje > (v_ref*0.8888f)){
- GPIOD->ODR |=(1<<8);
- GPIOD->ODR |=(1<<9);
- GPIOD->ODR |=(1<<10);
- GPIOD->ODR |=(1<<11);
- GPIOD->ODR |=(1<<12);
- GPIOD->ODR |=(1<<13);
- GPIOD->ODR |=(1<<14);
- GPIOD->ODR |=(1<<15);}
- else if (voltaje > (v_ref*0.7777f)){
- GPIOD->ODR |=(1<<8);
- GPIOD->ODR |=(1<<9);
- GPIOD->ODR |=(1<<10);
- GPIOD->ODR |=(1<<11);
- GPIOD->ODR |=(1<<12);
- GPIOD->ODR |=(1<<13);
- GPIOD->ODR |=(1<<14);
- GPIOD->ODR &= ~(1<<15);}
- else if (voltaje > (v_ref*0.6666f)){
- GPIOD->ODR |=(1<<8);
- GPIOD->ODR |=(1<<9);
- GPIOD->ODR |=(1<<10);
- GPIOD->ODR |=(1<<11);
- GPIOD->ODR |=(1<<12);
- GPIOD->ODR |=(1<<13);
- GPIOD->ODR &= ~(1<<14);
- GPIOD->ODR &= ~(1<<15);}
- else if (voltaje > (v_ref*0.5555f)){
- GPIOD->ODR |=(1<<8);
- GPIOD->ODR |=(1<<9);
- GPIOD->ODR |=(1<<10);
- GPIOD->ODR |=(1<<11);
- GPIOD->ODR |=(1<<12);
- GPIOD->ODR &= ~(1<<13);
- GPIOD->ODR &= ~(1<<14);
- GPIOD->ODR &= ~(1<<15);}
- else if (voltaje > (v_ref*0.4444f)){
- GPIOD->ODR |=(1<<8);
- GPIOD->ODR |=(1<<9);
- GPIOD->ODR |=(1<<10);
- GPIOD->ODR |=(1<<11);
- GPIOD->ODR &= ~(1<<12);
- GPIOD->ODR &= ~(1<<13);
- GPIOD->ODR &= ~(1<<14);
- GPIOD->ODR &= ~(1<<15);}
- else if (voltaje > (v_ref*0.3333f)){
- GPIOD->ODR |= (1<<8);
- GPIOD->ODR |= (1<<9);
- GPIOD->ODR |= (1<<10);
- GPIOD->ODR &= ~(1<<11);
- GPIOD->ODR &= ~(1<<12);
- GPIOD->ODR &= ~(1<<13);
- GPIOD->ODR &= ~(1<<14);
- GPIOD->ODR &= ~(1<<15);}
- else if (voltaje > (v_ref*0.2222f)){
- GPIOD->ODR |= (1<<8);
- GPIOD->ODR |= (1<<9);
- GPIOD->ODR &= ~(1<<10);
- GPIOD->ODR &= ~(1<<11);
- GPIOD->ODR &= ~(1<<12);
- GPIOD->ODR &= ~(1<<13);
- GPIOD->ODR &= ~(1<<14);
- GPIOD->ODR &= ~(1<<15);}
- else if (voltaje > (v_ref*0.1111f)){
- GPIOD->ODR |= (1<<8);
- GPIOD->ODR &= ~(1<<9);
- GPIOD->ODR &= ~(1<<10);
- GPIOD->ODR &= ~(1<<11);
- GPIOD->ODR &= ~(1<<12);
- GPIOD->ODR &= ~(1<<13);
- GPIOD->ODR &= ~(1<<14);
- GPIOD->ODR &= ~(1<<15);
- }else{
- GPIOD->ODR &= ~(1<<8);
- GPIOD->ODR &= ~(1<<9);
- GPIOD->ODR &= ~(1<<10);
- GPIOD->ODR &= ~(1<<11);
- GPIOD->ODR &= ~(1<<12);
- GPIOD->ODR &= ~(1<<13);
- GPIOD->ODR &= ~(1<<14);
- GPIOD->ODR &= ~(1<<15);
- }
- }
- /* while(1){
- voltaje = (adc_data*v_ref)/1023.0f;
- char * dir;
- * dir = voltaje;
- USART1_putString("\r\n");
- USART1_putString(dir);
- USART1_putString("\r\n");
- }*/
- }else{
- USART1_putString("\r\n");
- USART1_putString("Comando inválido");
- USART1_putString("\r\n");
- }
- }
- int cont=0;
- //PA9-Verde
- void USART1_IRQHandler(void) {
- char uart_data;
- char string[100];
- char forma[100];
- if(USART1->ISR & USART_ISR_RXNE) {
- uart_data = USART1->RDR;
- if(uart_data!='\r'){
- string[cont]=uart_data;
- USART1_Send(uart_data);
- cont++;
- } else {
- //Analiza aqui
- //sprintf(forma,"\n\rSTRING: %s\n\r",string);
- //USART1_putString(forma);
- sprintf(forma,"%s",string);
- analizar(forma);
- cont=0;
- memset(string,0,sizeof(string));
- char formato[24];
- sprintf(formato,">>Microprocesadores 2019\n\r");
- USART1_putString(formato);
- }
- }
- }
- int main() {
- char formato[24];
- USART1_Config();
- sprintf(formato,">>Microprocesadores 2019\n\r");
- USART1_putString(formato);
- while(1) {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement