Other Parts Discussed in Thread:OMAP-L138, AM1810
您好!
1.我的6748板卡是用spi0 cs0连接spi flash,请问以上设置有问题吗?
2.我用的ccs加载程序是C6748\OMAP-L138_FlashAndBootUtils_2_40\OMAP-L138_FlashAndBootUtils_2_40\OMAP-L138\CCS\SPIWriter\DSP\SPIWriter_OMAP-L138.out,已经把spi的宏定义从1改为0,然后执行过程中出现擦除失败,请问您这是什么原因?
谢谢!
Shine:
1.连cs0是对的。2. 按下面的wiki网站上的提示检查一下。http://processors.wiki.ti.com/index.php/Serial_Boot_and_Flash_Loading_Utility_for_OMAP-L138#Modifications_for_Custom_Boards
具体报什么错?
,
Tony Tang:
检查一下代码里有相应的pinmux设置没有。
,
wenrui zhai:
我用的spi flash是W25Q64FWSSIG
DEVICE_SPI_MEM_params里面的参数是
const SPI_MEM_ParamsObj DEVICE_SPI_MEM_params = { SPI_MEM_TYPE_FLASH, 24, // addrWidth 256, // pageSize #ifdef AM1810 4096, // sectorSize #else 0, // sectorSize #endif 64*1024, // blockSize 8*1024*1024 // memorySize };
我检查过没有问题,spi定义的是spi0,cs0(#define DEVICE_SPIBOOT_PERIPHNUM (0),#define DEVICE_SPIBOOT_CSNUM (0)),其它的没有改动
,
Tony Tang:
我建议再检查一下硬件连接是否正确。代码好像没什么问题。
,
wenrui zhai:
我单步执行的时候发现程序在执行结构体赋值的完之后,并没有赋值成功,以上之赋值完成之后提示信息,会不会这套程序只适合L138,不适合C6748
,
wenrui zhai:
程序能烧写到spi flash,上电程序运行正常,因为自己的板卡并没有DDR和EMIF外设,我把原先的地址重新改在L3和L2里面,会不会内存太小,这样有问题吗?
,
wenrui zhai:
程序能烧写到spi flash,上电程序运行正常,因为自己的板卡并没有DDR和EMIF外设,我把原先的地址重新改在L3和L2里面,会不会内存太小,这样有问题吗?
,
Tony Tang:
意思是问题解决了是吗?怎么解决的?
,
wenrui zhai:
1.我用的是SPI0,在DEVICE_SPI_config结构体里面先把发送时钟降低,然后在device_spi.h里面设置spi0接口
2.自己的板卡没有ddr和emif外设,在单步调试的时候发现在设置spi配置结构体,赋值不成功,我就把cmd文件最后两个地址指向L3和L2,这样程序赋值成功,spi能够烧写。
3.我对最后两个地址的定义还是不太明白,. += 0x04000000;如果需要这么大的空间,L2是不够的
,
Tony Tang:
wenrui zhai 说:3.我对最后两个地址的定义还是不太明白,. += 0x04000000; 如果需要这么大的空间,L2是不够的
这里只是按照开发板的配置,DDR size是64Mbyte。只是给util.c里的内存分配置函数用的。
,
raspberry:
你好,请问一下,我的也是SPI0烧写,在上面的某一部,需要我输入flash开始的地址,我该输入多少呢?
,
Tony Tang:
烧的第一个文件或者叫UBL的地址是0,芯片上电后是从SPI flash的开始地址搬代码的。
如果是采用了二级boot,在烧APP AIS文件时,其偏移地址要与二级boot UBL里指定的偏移地址一致,这个地址是在UBL用户可以自已约定的。
,
raspberry:
太意外了,我抱着试试看的态度咨询的,没想到2016年的帖子还有回复,谢谢,我这几天正在学习这一块,要是有什么疑问,再问问您!
,
raspberry:
你好,这是实现烧写进flash了吗?
,
raspberry:
我的是没有二级引导,这只是一个简单的led程序,你看这样操作对吗,谢谢!
,
Tony Tang:
是的。写完成了。