|
本帖最后由 qinkaiabc 于 2014-2-21 06:44 编辑
【UART通信】
1、UCSWRST置位时UCAx和IE2、IFG2等会有多位标志位被复位,这时置位这些位会失败。只
有UCSWRST被复位后才可以成功置位这些位。
2、UCA0RXIF(接收中断标志位),只有读取UCA0RXBUF才会使UCA0RXIF复位,否则进入中断
跳出后立马再次进入该中断程序。
3、在线调试(断点等)有可能会打乱数据传输,也不一定。
【多机通信】
A、【idel-Line】
1、发送地址时一定要等到 UCAxTXIFG=0 才可以发送数据,即“while((IFG2 & UCA0TXIFG)
== 0);”这一句不可以少。
2、数据之间间隔不能太大,否者接收机检测到空闲的数据线(大于10Bits的空闲 会使目标机检
测到UCADDR置位),UCADDR置位,可以人工回到睡眠模式需要地址字节唤醒
B、【Address-Bit】
1、与【idel-Line】区别仅在于只要接收到地址字节就会跳出睡眠模式(UCDORM=0),就可以
就收数据了,即使是字节之间的间隔也不会影响接收机
C、【Automatic Baud Rate Detection】
1、与上面两种的区别在于不需要地址字节而是靠Break/Synch来启动目标机接收数据字节的。
该模式字节之间的间隔也不会影响接收机。
************************************************************************************************************
【P口】
1、PxIN只读
2、PxREN允许上拉和下拉,P1OUT控制上下拉
3、Px共用一个中断向量,即进入同一中断服务程序。且PxIFG需要人工复位,否则一再中断服务程序里循环。
|
|