一、问题描述:
这个问题来源于使用YL-KL26Z学习SPI接口的问题。
YL-KL26Z的SPI接W25Q32的电路如下:
![](http://www.freescaleic.org/module/forum/data/attachment/forum/201509/24/224719taekn7k07nxxikx2.jpg)
可以看出CS引脚使用的时PTB0,而非SPI模块的PTC4。
那如何使用KSDK库编程,使用I/O口模拟CS引脚呢?
二、解决办法:
1、在使用KSDK库中的SPI功能的driver库函数时,没有发现配置SPI的CS引脚使用模拟I/O引脚来代替。
经分析,发现driver库使用的时SPI模块的CS0,自动片选模式:
![](http://www.freescaleic.org/module/forum/data/attachment/forum/201509/24/225652gf8sh7tgttg5l5hg.jpg)
2、这就是说,KSDK的driver库本身不支持CS的I/O模拟来实现,需要自己从新写SPI驱动函数。
3、本人比较懒,还是在KSDK库的基础上修改一下吧。站在巨人的肩上![](http://www.freescaleic.org/module/forum/static/image/smiley/default/lol.gif)
4、首先,在pin_mux.c中去掉cs的引脚配置:
![](http://www.freescaleic.org/module/forum/data/attachment/forum/201509/24/231537lu6pcdxs7od74uup.jpg)
|