We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
hi all
i was trying to communicate the LPC2119 through UART0 module and PC( Hyper Terminal). the code is as follows.
#include<LPC21XX.H>
#define bitset(var,bitno) ((var) |=1<<(bitno)) #define bitclr(var,bitno) ((var) &=~(1<<(bitno)))
#define TEMT (1<<6) #define LINE_FEED 0XA #define CARRIAGE_RET 0XD
void init_UART0(void);
int main() { unsigned char indx,delay,dummy,result=0; unsigned char string[] = {"lohia"}; bitset(PINSEL2,2); //configuring port1 pin31-26 as jtag bitclr(PINSEL2,3); //configuring port1 pin25-16 as GPIO PINSEL1=0x304500C0; //configuring port0 pin16-31 PINSEL0=0X00008255; //configuring port0 pin0-15 IO1DIR=0x00170000; //making port1.16,17,18,20 as o/p init_UART0();
while(1) { indx=0; while(string[indx]) // Transmit till Null('\0') { while(!( U0LSR & TEMT )); //Wait til UOTHR&U0TSR empty
U0THR = string[indx];
dummy = string[indx];
indx++;
for(delay=0x0f;delay--;); } if(dummy==0) result=0; result++; while(!( U0LSR & TEMT )); //Wait til UOTHR&U0TSRempty U0THR = LINE_FEED; U0THR = CARRIAGE_RET; } }
void init_UART0() {
U0FCR = 0X07; // Enable FIFO's and reset them U0LCR = 0X83; // Set DLAB, word length = 8 bits U0DLL = 0X62; // Baud rate set to 9600 U0DLM = 0X0; U0LCR = 0X03; // Clear DLAB
} the hardware required for bus level conversions is also a readymade module(established). iam able to see the data was able pass correctly into dummy variable where as it was not able to go into U0THR ( observed in debug window) sometimes i recieve Framing error and Over run error(observed in debug window). i am not able to find what is the problem. if there is any problem area that i have to concentrate please let me know
Thanks VENKAT KIRAN
Maybe this example helps somehow:
http://www.keil.com/download/docs/330.asp