嵌入式开发者社区

标题: @shejishi0225 周末为你加了下班 调了串口烧写 SPI FLASH 的工具~ [打印本页]

作者: 希望缄默    时间: 2014-12-20 15:18
标题: @shejishi0225 周末为你加了下班 调了串口烧写 SPI FLASH 的工具~
@shejishi0225周末为你加了下班 调了串口烧写 SPI FLASH 的工具~


烧写方法
LINUX 下(需要安装 MONO 框架)
sudo mono ./sfh_OMAP-L138.exe -flash_noubl -targetType C6748 -flashType SPI_MEM -p /dev/ttyUSB0 demo.ais

Wndows  下(CMD 窗口)
sfh_OMAP-L138.exe -flash_noubl -targetType C6748 -flashType SPI_MEM -p COM3 demo.ais


[attach]131[/attach]

下载
[attach]132[/attach]



作者: shejishi0225    时间: 2014-12-20 16:41



真的非常非常非常感谢!你周末加班真的很不好意思呢;都不知道怎么感谢你了!


作者: shejishi0225    时间: 2014-12-20 16:48
本帖最后由 shejishi0225 于 2014-12-20 16:54 编辑

我们的PCB板是同事已经设计好了的板子,烧写程序只能通过CCS往spi flash写,启动模式也固定为spi flash;不能通过uart,也不能通过sd卡等方式。

所以,我按照你之前的建议,一直再调ti的程序烧写集;目前进展如下:
在使用TI 烧写工具集实现往SPI FLASH烧写程序时,步骤如下:
1. 硬件是创龙的评估板, SPI1 CS0;
2. 用TL提供的*.gel完成对PLL,DDR2,SPI1的初始化;同时再代码中将SPI1在初始化一次;
    我比较过创龙提供的spi flash例程执行后dsp寄存器的初始化,以及烧写程序集中对dsp初始化后的寄存器,这两个值除了spi初始化不一样,其它均一样;其中创龙的SPI使能了SPI enable引脚,我没有使能;
3. TI的烧写程序集在读写操作时,没有使能cs的操作,我将创龙spi flash例程中的代码给copy进去了;
4. 我采用的是通过CCS将代码下载到flash中去;因为我的dsp硬件设计时没有将uart及sd等端口开放出来,我只能通过ccs烧写程序
5. 我尝试将GPIO_LED.ais烧写到spi flash中去,步骤如下:
    5.1 读取ais文件,并确认无误
    5.2 擦除spi flash,并确认擦除无误
    5.3 将ais写入flash,并确认无误

在进行到擦除flash时ok,但确认擦除无误时一直不行,读回来的数据一直都是0x00;

现在就是卡在擦除flash那里了;我准备周一的时候在看看flash的资料,以及再次理解下spi的原理;创龙提供的例程里spi flash发送接收数据采用的是中断,ti烧写程序集中SPI MEN是循环方式发送接收数据的;

你认为spi擦除不成功有可能是哪些原因呢?
非常非常感谢你的帮忙,真的不知道怎么谢谢你了;
不过可能你提供的工具在我们自己的硬件上没法使用了;



作者: shejishi0225    时间: 2014-12-20 16:48
本帖最后由 shejishi0225 于 2014-12-20 16:57 编辑

不好意思,发重了





欢迎光临 嵌入式开发者社区 (https://51dsp.net/) Powered by Discuz! X3.4