| ??? 07/16/03 01:28 Read: times |
#50775 - RE: FX2 baudrate Responding to: ???'s previous message |
hello,
The board used 24Mhz crystal.Below is my code associate to baudrate generator: //////////////////////////////////////////////////// void timerisr(void) interrupt 1 { TF0 = 0; // clear overflow flag timer 0 counter++; } /////////////////////////////////////////////////// void inittimer(void) { TMOD &= ~0x0F; /* clear timer 0 mode bits */ TMOD |= 0x01; /* put timer 0 into MODE 1 */ ET0 = 1; // enable timer interrupt TR0 = 1; // run timer 0 } void com_baudrate1 (unsigned baudrate) { /*------------------------------------------------ Clear transmit interrupt and buffer. ------------------------------------------------*/ TI = 0; /* clear transmit interrupt */ TI1 = 0; /*------------------------------------------------ Set timer 1 up as a baud rate generator. ------------------------------------------------*/ TR1 = 0; /* stop timer 1 */ ET1 = 0; /* disable timer 1 interrupt */ PCON |= 0x80; /* 0x80=SMOD: set serial 1 baudrate doubler */ EICON |= 0x80; /* 0x80=SMOD: set serial 2 baudrate doubler*/ TMOD &= ~0xF0; /* clear timer 1 mode bits */ TMOD |= 0x20; /* put timer 1 into MODE 1 */ T1M = 1; TH1 = 0xF3; //i used auto reload value EA = 1; TR1 = 1; /* start timer 1 */ } void initcomm1(void) { /*------------------------------------------------ Setup serial port registers. ------------------------------------------------*/ SM0 = 0; SM1 = 1; /* serial port MODE 1 */ SM2 = 0; REN = 1; /* enable serial receiver */ RI = 0; /* clear receiver interrupt */ TI = 0; /* clear transmit interrupt */ ES0 = 1; /* enable serial interrupts */ PS0 = 1; /* set serial interrupts to low priority */ } void initcomm2(void) { /*------------------------------------------------ Setup serial port registers. ------------------------------------------------*/ SM01 = 0; SM11 = 1 ; /* serial port MODE 1 */ SM21 = 0; REN1 = 1; /* enable serial receiver */ RI1 = 0; /* clear receiver interrupt */ TI1 = 0; /* clear transmit interrupt */ ES1 = 1; /* enable serial interrupts */ PS1 = 1; /* set serial interrupts to low priority */ } ////////////////////////////////////////////////////// I used auto reload value to generate 9600 baudrate(TH1 = 0xF3).So,give your opinion what is the problem actually? |
| Topic | Author | Date |
| FX2 baudrate | 01/01/70 00:00 | |
| RE: FX2 baudrate | 01/01/70 00:00 | |
| RE: FX2 baudrate | 01/01/70 00:00 | |
| RE: FX2 baudrate | 01/01/70 00:00 | |
| RE: FX2 baudrate | 01/01/70 00:00 | |
| RE: FX2 baudrate | 01/01/70 00:00 | |
| RE: FX2 baudrate | 01/01/70 00:00 | |
| RE: FX2 baudrate | 01/01/70 00:00 | |
RE: FX2 baudrate | 01/01/70 00:00 |



