完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
程序很短,把flash的程序全部搬移到ram中运行。
.stack : > RAMM0 PAGE = 1 .ebss : > RAML4L5L6L7 PAGE = 1 .esysmem : > RAMM1 PAGE = 1 .text : LOAD = FLASHA, PAGE = 0 RUN = RAM_L0L1L2L3, PAGE = 0 LOAD_START(_text_loadstart), RUN_START(_text_runstart), SIZE(_text_size) 上面这个RAM_L0L1L2L3是程序空间,定义成 : origin = 0x008000, length = 0x006000 RAML4L5L6L7 是数据空间定义成 : origin = 0x00E000, length = 0x002000 现在发现这个程序烧写在部分板子中是能正常运行的(观察中断 toggle的呼吸灯),但是有些板子中,上电后怎么都不能正常运行(呼吸灯不闪),连上仿真器能看到是进了illegal_isr了,有些板子用硬件狗TPS3828-33DBVT复位多次后,程序又能正常运行了,开始以为是硬件电路的问题。 但是我更改上面程序空间和数据空间的分配后,不能正常的板子也可以一上电就能跑起来,但是另一些本来好着的板子又不能运行了,这样感觉好像是cmd的问题,我查看map,.txt 等分配都是没有超范围的。请专家帮我分析分析,万分感激! 我上传了整个工程,请大家帮我看看,谢谢! |
|
相关推荐
4 个讨论
|
|
运行时间你测的是定时中断那个函数的吗?
我的理解: 如果你要把定时中断的函数都放在RAM中,包括调用的子函数。那么应该如下设置 Timer0 ISR[ ... 调用A函数; 调用B函数; ...] 那么就要通过 #pragma CODE_SECTION(timer_isr, "ramfuncs"); #pragma CODE_SECTION(A "ramfuncs"); #pragma CODE_SECTION(B,"ramfuncs"); 把这些函数映射到RAM。调用前记得MEMORY COPY。 如此即可。 你可以单独,看反汇编,从而看到代码是跑在flash还是RAM。 Eric - ERIC |
|
|
|
|
|
谢谢你的回复,运行时间我测的是整个定时中断函数的时间,从一进中断设个断点,运行到中断最后一句再设一个断点,看这两个断点的clock 计数值来测算时间。 中断程序本身和其调用的所有子函数都用#pragma code_section 放在ramfuncs内,也memory copy了,用反汇编看了,确实是跑在ram中 0x008000到0x00C000内,运行时间确实是长了。 我的ram定义是合起来了,这样应该没问题吧? RAM_L0L1L2L3: origin = 0x008000, length = 0x004000 ramfuncs : LOAD = FLASHD, RUN = RAM_L0L1L2L3, LOAD_START(_RamfuncsLoadStart), LOAD_END(_RamfuncsLoadEnd), RUN_START(_RamfuncsRunStart), PAGE = 0 |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
336 浏览 1 评论
529 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
774 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
651 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1130 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
58浏览 29评论
147浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
252浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
202浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
59浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 13:27 , Processed in 1.064723 second(s), Total 72, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号