TI中文支持网
TI专业的中文技术问题搜集分享网站

C6747使用SPI FLASH启动问题

手里有自己做的DspC6747的板子,程序都已经调通,这几天搞SPI Flash启动,有好多问题。烦请各位大神帮助解决,在此先谢谢了。

DEMO程序测试SPI(FLASH型号W25Q32FVSSIG):

1.使用四线制(姑且这样叫吧),CS作为SPI Function,配置后读写SPI都没有问题。将程序(AIsgen打包)烧写至SPI FLASH,读取后校验,没有问题。

2.使用三线制(姑且这样叫吧),CS作为GPIO(PINMUX7=0x81111111),开始时直接将CS拉低,SPI FLASH无法操作。后来CS配合SPI 读写(发送命令之前拉低,发送完拉高),测试SPI没有问题。程序也能读写,校验没问题。

烧写程序

将程序烧写至FLASH(FLASH内容没有问题),上电后程序无法启动,使用连接器查看寄存器状态,如下:

BOOTCFG (状态显示从SPI FLASH启动),但查看0x80000000内存,并不是程序内容(AIsgen打包.out文件代码地址为0x80000000)。

SPI0寄存器 SPIPC0最后bit为0 ,说明bootloader把CS配置成GPIO,但是PINMUX7=0x11111111,没有把CS配置成GPIO使用。

上电后示波器测试CS一瞬间的拉低,又被迅速拉高。CLK没有时钟。

我个人认为,DSP启动后进入了SPI FLASH启动模式,但可能是由于SPI 问题,没有完成把FLASH的代码搬运至内存。

从寄存器参数上看DSP 使用的是2方式配置SPI,但没有使用CS。测试过将CS一直拉低,也没有成功。

请遇到过问题的大神指点一二,再次拜谢!!!

 

 

Shine:

首先请确认BOOTCFG的值,确保是从SPI0 flash启动的
Table 6. Boot Mode Selection
www.ti.com/…/sprabb1c.pdf

在用AISgen工具生成.ais文件时,boot mode有没有选择SPI0 flash?

赞(0)
未经允许不得转载:TI中文支持网 » C6747使用SPI FLASH启动问题
分享到: 更多 (0)