求教SPI单线只接收寄存器配置问题

2019-07-20 11:04发布

#define SPI_DIRECTION_2LINES             ((uint32_t)0x00000000)
#define SPI_DIRECTION_2LINES_RXONLY      SPI_CR1_RXONLY        ((uint32_t)0x00000400)  
#define SPI_DIRECTION_1LINE              SPI_CR1_BIDIMODE            ((uint32_t)0x00008000)   

在hal库里面只有这三种宏定义,第一种是双线双向,第二种是双线只接收,第三种是单线只接收?我理解的对不对啊?
我觉着单线和双线,接收和发送,不是寄存器的两个位来决定的么,第三个宏定义只是把位15置1了,也就只能说是单线双向的啊,那我要是配置单线只接收是不是还要另外一个宏定义来说明哪个方向的,我有点晕了,忘大神指点迷津啊,;

比如0x0008000这个寄存器配置,只是把位15置1,那其他的位是不是都是0呢?还是这么配置只对位15有作用,其他的可以忽视呢?晕乎了,,大神们,求帮忙啊

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。