SPI
📎 原始文档:https://www.kdocs.cn/l/cqK5MvNkTpbi SPI
- SPI基本知识 SPI接口是一种同步串行总线(Serial Peripheral Interface)多用于Flash存储器、LCD控制器等外围器件的通讯接口。

- SPI-SDK应用 SPI在board_ac695x_demo.c中的配置选项

2.1 SPI外挂norflash
以695xSDK为例,实现外挂 flash录音、外挂 flash 提示音播放、外挂 flash 分区(fat+tone+rec)功能等。详细程序配置步骤和驱动方法可见SDK程序包资料doc文件夹下的外挂flash 相关操作文档[AC695x外挂Flash分区操作说明文档V2.0.pdf]。
AC695x外挂Flash分区操作说明文档V2.0.pdf
2.2.外挂nandflash设备
目前NANDFLASH设备只支持读操作
AC695N系列添加方法
链接:https://pan.baidu.com/s/1vzV_o6UBURQ4wyvHh-LYHQ
提取码:8888
下载后请对比公版SDK,对比查看修改。
AC696N系列添加方法
链接:ac696x_soundbox_sdk.7z
内部:库地址
AC104N系列添加方法
链接:https://pan.baidu.com/s/1grbYIfmkd_nySn7eHVhmBA
提取码:8888
下载后请对比公版SDK,对比查看修改。
6082系列添加方法
链接:https://pan.baidu.com/s/1VhDS_xSIxWxlWUGF2hMlCQ
提取码:8888
2.2.1 制作FAT文件系统并在usb强制下载样机程序时把FAT文件系统文件下载到外挂flash
- 制作FAT
- 工具链接FAT文件生成工具.7z
- 制作img文件系统镜像

- 双击packres.bat运行脚本给镜像文件打标签,使程序能正常使用

- usb强制下载程序时把res.bin文件下载打外挂norflas
- ini文件中配置外部flash引脚
;//CS_pin / spi (0/1/2) /port(A/B) / power_io
EX_FLASH = PC03_1A_PC06;
;//data_width / CLK_pin / DO_pin / DI_pin / D2_pin / D3_pin 当data_width为4的时候,D2_pin和D3_pin才有效
EX_FLASH_IO = 2_PC01_PC02_PC04_PC05_PC00;
- 在isd_download.exe 命令的最后添加 ex_flash [可带路径的文件名]
isd_download.exe -tonorflash -dev br27 -boot 0x120000 -div8 -wait 300 -uboot uboot.boot -app app.bin -tone %TONE_FILES% -res cfg_tool.bin p11_code.bin stream.bin %LCD_SOURCE_FILES% %KEY_FILE% %FORMAT% -ex_flash res.bin
2.3 SPI驱动LCD屏
LCD与主控硬件接口:(一组SPI口+3个普通GPIO)如下
| 主控接口1 | LCD屏接口 |
|---|---|
| LCD_DATA | SDA |
| LCD_CLK | SCK |
| LCD_A0 | RS |
| LCD_RES | RST |
| LCD_CS | CS |
以695为例的SPI推动LCD12864demo程序:
【金山文档】 LCD12864_AC695N_soundbox_sdk_release_3.1.0
报错添加此行代码:copy ....\ui_resource .
2.4 SPI驱动RGB灯
SPI驱动RGB灯的详细内容参考文档UI相关应用.otl中的【单线串行控制幻彩灯珠】资料,包含695/696/700/701驱动RGB灯的详细方法,需要注意查看文档中的【代码注意点】