سلام
من برنامه راه اندازی 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;
}
}
}



دیدگاه