请问UCA0TXBUF=0xff发送一次空字节是什么意思

2019-07-15 15:29发布

另一个问题
if(UCA0STAT&UCBUSY)是判断硬件SPI正忙的意思,为何不能if(UCBUSY)这么用??
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
60user39
1楼-- · 2019-07-15 15:35
UCA0STAT&UCBUSY是把UCA0STAT寄存器的值和UCBUSY作与运算,即UCA0STAT&0x01,即保留第一位,其他位全部置0。
所以if(UCA0STAT&UCBUSY)的结果就是如果UCA0STAT第一位是1,就是真,第一位为0就是假。
而if(UCBUSY)就是if(0x01),恒为真
tigerwang711
2楼-- · 2019-07-15 16:59
#define UCBUSY              (0x01)    /* USCI Busy Flag */
UCBUSY其实就是1,所以if(UCBUSY)不就是if(1)了吗,这不就恒成立了吗?
jufenyi
3楼-- · 2019-07-15 21:54
是问if(UCA0STAT&UCBUSY)与if(UCBUSY)的区别?
龙胆紫a
4楼-- · 2019-07-16 00:38
奥奥!!!多谢多谢!!
卿小知1
5楼-- · 2019-07-16 05:38
 精彩回答 2  元偷偷看……
wanglq2011
6楼-- · 2019-07-16 05:39
可能是因为MOSI空闲是高电平,那发送oxff时MOSI不会有任何变化,所以就叫它空字节了。
其实接收的时候随便发什么都可以的,这时候发送一个数据目的只是为了启动一次传输,产生时钟信号而已。

一周热门 更多>