用Keil移植了Nano3.15版本,
步骤一:创建静态线程
步骤二:线程内调用Hal库的SPI 写函数发送一个数据 然后用读函数将该数据读出
现象:数据没有被写入
实验:用裸板(不带nano)可以实现读写
想请教下各位 该怎么去做
没配置 msp ?spi的几个引脚没有配置?
一、添加nano和裸机版本的SPI使用是差不多的;
二、裸机上实现,添加nano没实现;那就是SPI的使用或者是使用有问题;建议:
1.SPI需要初始化;
2.SPI的发送、接收,如果有条件可以使用示波器来确定时序(重点CS片选引脚);
三、另外,问一下,你的线程中不会只是执行一次,没有while(1)循环吧,这样的话,这个线程只会执行一次的;
你的裸板也是调用Hal库的SPI 写函数吗?如果不是那就没有参照价值,如果是的,那就需要你在SPI写函数中打个断点调试确认你的线程可以执行到这步。
另外,我们争对不同的SPI芯片写入的方式也要注意,因为有字节写,页写二种模式,这二种模式在写入的过程中是有区别的。
裸板上可以跑通SPI 证明这些都是正确的
@卟说zdv 是啊,移植到 nano 系统里了吗?
nono 系统里你没用设备驱动框架,直接调用裸机接口的吗?
@出出啊 直接用的裸机接口
@卟说zdv 调试过吗?那个线程运行正常吗? hal 的函数调用顺序对不对,需要被调用的函数有没有正常被调用?
@出出啊 线程正常 ,hal的函数调用正常,
@卟说zdv 线程栈多大,别小于 512 最好 1024 起步。
这两周,你是第二个确定所有代码执行正常,但是就是外面引脚没有信号的。