使用CCS memory browser的问题

2019-03-24 10:24发布

我使用了F28069进行开发学习,进行了内部温度传感器的采集实验。但是使用memory browser时候,遇到了如下问题。在int16 GetTemperatureC(int16 sensorSample)函数中, getTempOffset()和getTempSlope()可以得到rom存储的数据。// The folloing pointers to function calls are:
//Slope of temperature sensor (deg. C / ADC code). Stored in fixed point Q15 format.
#define getTempSlope() (*(int (*)(void))0x3D7E82)()
//ADC code corresponding to temperature sensor output at 0 deg. C
#define getTempOffset() (*(int (*)(void))0x3D7E85)()

我观察了getTempOffset()和getTempSlope()两个数值,如下int16 GetTemperatureC(int16 sensorSample)
{
slope = getTempSlope();
offset = getTempOffset();
return ((sensorSample - getTempOffset())*(int32)getTempSlope() + FP_ROUND + KELVIN_OFF)/FP_SCALE - KELVIN;
}
3.png 在expression看到slope为5568,即0x15c0;offset为0x680.但是我使用memory browser观察0x3D7E82,得到如下结果: 1.png 但是我使用memory browser观察0x3D7E85,得到如下结果: 2.png
指定地址并不是正确的数据,后面一个却是对的。请问是为什么呀?
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
1条回答
dontium
2019-03-24 20:10
< 查看它的汇编指令,也是读的指定存储器:

        MOVL      XAR7,#4030082         ;  -----------0x3D7E82
        LCR       *XAR7               
        MOV       *-SP[3],AL           


        MOVL      XAR7,#4030085       ; ------------     0x3D7E85
        LCR       *XAR7              
        MOV       *-SP[4],AL         




实验了一下,读出的结果也是(在memory browser中)后一个数据。



b3.JPG

一周热门 更多>

相关问题

    相关文章