LM3S系列的ROM RUN和RAM RUN

2019-03-24 16:00发布

试了两款LM3S8962和LM3S9B96,问题都一样。
LM3S系列能够将程序下载到内存,然后修改PC指针,在内存中运行,这样调试程序下载速度比较快,也减少了flash的读写次数,这是背景。

除了一些大的程序,我都是在内存中调试,简称RAM RUN,大家可以翻翻我以前的一个DS18B20的帖子,当时调试DS18B20时,是下载到flash中调试的,后来学会了RAM RUN,调试程序一直在RAM,但是这个DS18B20的程序,下载到ROM里运行,一切正常,但是下载到flash里,就无法搜索到器件,所以可以确定肯定是RAM的问题。今天用数字逻辑分析仪看了DS18B20数据管脚上的波形,发现波形的延时不对。刚刚特地写了一个延时程序,产生一个100Hz的方波,来看看到底怎么回事:
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);
    GPIOPinTypeGPIOOutput(GPIO_PORTC_BASE,0x80);
    while(1)
    {
        GPIOPinWrite(GPIO_PORTC_BASE,0x80,0x00);
        _delay_ms(5);
        GPIOPinWrite(GPIO_PORTC_BASE,0x80,0x80);
        _delay_ms(5);
    }
先是下载到ROM里,看波形:
2011-07-18-213615_770x359_scrot.jpg
正常,然后下载到RAM里,再看波形:
2011-07-18-213704_771x342_scrot.jpg
发现延时很大,不知道怎么回事。
不知道有没有人能给个解释?
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
12条回答
mybays
2019-03-24 23:40
 精彩回答 2  元偷偷看……0人看过

一周热门 更多>

相关问题

    相关文章