سلام
من برنامه راه اندازی uart با interrupt برای کاراکتر رو دارم و درست کار می کنه، برنامه رو برای رشته که تغییر میدم دیگه کار نمیکنه...
برنامه مربوط به کاراکتر :
ولی وقتی دستورات مربوط به رشته رو می نویسم هیچ رشته ای نمی گیره!
اینم برمامه مربوط به رشته:
کسی اگه با یه همچین برنامه ای جواب گرفته ممنون میشم کمک کنه و مشکل رو بگه :biggrin:
من برنامه راه اندازی uart با interrupt برای کاراکتر رو دارم و درست کار می کنه، برنامه رو برای رشته که تغییر میدم دیگه کار نمیکنه...
برنامه مربوط به کاراکتر :
کد:
#include <LPC17xx.h> #include "uart.h" int u0=0, l=0; char input; void UART0_IRQHandler(){ input = UَART0_GetChar(); u0=1; return; } int main(){ UART0_Init(); LPC_UART0->IER = 0x01; //interrupt NVIC_SetPriority(UART0_IRQn,0); NVIC_EnableIRQ(UART0_IRQn); while(1){ if(u0==1){ UART0_SendByte(input); u0=0; } } }
اینم برمامه مربوط به رشته:
کد:
#include <LPC17xx.h> #include "uart.h" int u0=0, l=0; unsigned char input[20]; char temp; void UART0_IRQHandler(){ l=0 ; temp = U0_GetChar(); if(temp==0x0D){ u0=1; input[l]=0; return; } else{ input[l] = temp ; l++ ; } } int main(){ UART0_Init(); LPC_UART0->IER = 0x01; //interrupt NVIC_SetPriority(UART0_IRQn,0); NVIC_EnableIRQ(UART0_IRQn); while(1){ if(u0==1){ UART0_SendString(input); u0=0; } } }
دیدگاه