引言做蓝牙音箱、耳机这类产品总少不了往外面挂点东西——存个提示音、加个小屏幕、弄几个跑马灯这些都是标配需求。JL杰理AC696N的SPI接口速度够快驱动这些外设正合适。不过SPI这东西配起来简单但挂不同设备的时候坑点不一样Flash要分区、LCD要看初始化序列、RGB灯珠还得卡时序。在AC696N开发板上把这几个外设都驱动了一遍把配置要点和踩过的坑整理一下省得后面重复造轮子。SPI接口因其高速、全双工的特性常被用于连接外设。JL杰理AC696N开发板支持SPI主机模式可轻松驱动各类外设。在board_ac696x_demo.c中配置SPI的平台数据包括端口、模式、时钟和角色主机/从机。其典型应用有三一是外挂Nor Flash可用于实现录音存储、外置提示音播放、分区管理FATTONEREC等功能具体操作参考《Flash录音(外置)以及分区操作说明文档》。二是驱动LCD屏通过SPI发送命令和数据控制显示屏。三是驱动RGB幻彩灯珠需注意查阅文档中的【单线串行控制幻彩灯珠】资料及【代码注意点】因为这类灯珠通常有特定的时序要求。灵活运用SPI可以极大扩展AC696N开发板的功能为产品增添显示、灯光等交互元素。总结SPI挂Flash是比较成熟的用法照着文档配完基本就能用分区那部分稍微注意一下地址别跟程序区重叠就行。LCD驱动主要看屏厂给的初始化序列不同型号差异挺大但SPI发送逻辑是一样的调通一个其他都好办。RGB灯珠比如WS2812稍微麻烦点时序要求高建议先在AC696N开发板上用SPI MOSI模拟波形调通一两颗灯确认时序没问题之后再扩展。如果SPI总线上挂了多个设备片选脚要分开时钟频率按最慢的那个设备来定不然高速设备跑得欢低速设备可能不响应。