打印
[技术问答]

HC32L136 的SPI多字节写入,波形却只有一字节

[复制链接]
1705|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
heart小十一|  楼主 | 2022-8-8 14:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 heart小十一 于 2022-8-8 14:50 编辑

void SPIWriteMultiByte(uint8_t *pBuf,uint16_t length)
{
        uint16_t i;
        uint8_t temp;
        PIN_CS_L;
        M0P_SPI0->SSN&=~(1<<0);
        for(i=0;i<length;i++)
        {
                /*查询等待TXE发送缓冲器状态标志*/
                while(M0P_SPI0->STAT&(1<<2)==0);
                M0P_SPI0->DATA = *(pBuf+i);        
                /*查询等待RXNE发送缓冲器状态标志*/
                while(M0P_SPI0->STAT&(1<<1)==0);
                temp = M0P_SPI0->DATA;
        }
        /*查询等待TXE发送缓冲器状态标志*/
        while(M0P_SPI0->STAT&(1<<2)==0);
        /*查询等待busy总线状态标志 0-空闲  1-正在传输*/
        while(M0P_SPI0->STAT&(1<<3)!=0);        
       M0P_SPI0->SSN|=(1<<0);
        PIN_CS_H;
}
这么写有什么毛病吗?难


使用特权

评论回复
沙发
carpsnow| | 2022-8-8 21:21 | 只看该作者
你是怎么抓取字节的

使用特权

评论回复
板凳
heart小十一|  楼主 | 2022-8-9 08:50 | 只看该作者
carpsnow 发表于 2022-8-8 21:21
你是怎么抓取字节的

使用的示波器,在写入DATA寄存器数据后加一些延时就能出现多于一字节的波形

使用特权

评论回复
地板
carpsnow| | 2022-8-11 21:52 | 只看该作者
能仿真么?或者逻辑分析仪抓一下

使用特权

评论回复
5
koala889| | 2022-8-16 20:09 | 只看该作者
逻辑分析仪看看

使用特权

评论回复
6
tpgf| | 2022-9-6 08:08 | 只看该作者
每包前后都有标识位的吧

使用特权

评论回复
7
芯路例程| | 2022-9-6 09:35 | 只看该作者
你用示波器抓的,抓的范围大吗?有没可能两个字节中间间隔太大?

使用特权

评论回复
8
芯路例程| | 2022-9-6 09:39 | 只看该作者
可以把示波器抓到的图发出来,这样大家好分析!

使用特权

评论回复
9
qcliu| | 2022-9-6 12:25 | 只看该作者
spi配置成什么模式了

使用特权

评论回复
10
drer| | 2022-9-6 12:32 | 只看该作者
每包之间的时间间隔是多久呢

使用特权

评论回复
11
coshi| | 2022-9-6 12:39 | 只看该作者
这个字节是固定的波形吗

使用特权

评论回复
12
kxsi| | 2022-9-6 12:46 | 只看该作者
在线仿真一下

使用特权

评论回复
13
wiba| | 2022-9-6 12:54 | 只看该作者
除了多出来的字节 其他正常字节可以发送吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

9

帖子

2

粉丝