iar 4.42编译freeRTOS出错
2009-07-02 13:31
267 查看
执行语句 unsigned portSHORT usValue = ( unsigned portSHORT ) 0;时的汇编图,
执行到绿色处时,sp值为0x2000494C
该值用于
if( xQueueSend( *( ( xQueueHandle * ) pvParameters ), ( void * ) &usValue, pollqNO_DELAY ) != pdPASS )
中时,不能修改其值,即使如上的初始化0都不行.不知为什么是0x496c这个值,本来应该是0的呀。
xQueueSend原型是:
signed portBASE_TYPE xQueueGenericSend( xQueueHandle pxQueue, const void * const pvItemToQueue, portTickType xTicksToWait, portBASE_TYPE xCopyPosition )
即( void * ) &usValue对应于const void * const pvItemToQueue。
//------------------
本来以为是类型转换出了问题,但另外用函数测试没有问题,现在看到汇编指令也应该是对的呀。
该例子是freeRTOS的pollQ例子,在vc6.0和iar5.3上尝试都正确的。
相关文章推荐
- 【工具】IAR编译出错警告详解
- 在IAR上用变量来定义数数组长度编译出错解决办法
- IAR编译出错:Error[Pe165]: too few arguments in function call
- IAR 8051 8.30.2 编译 BLE- CC254X_1.4.0例程出错
- nagios编译出错
- Win Ce 6下dpCurSettings编译出错及解决办法
- 从其他机子上复制过来的一些代码编译时出错的问题处理
- IAR 编译报错 Fatal Error[Pe1696]: cannot open source file "Lcd_Display.h"
- 构建ReactJs项目node-sass编译出错
- Android for i.MX6 编译出错解决
- 替代IAR,使用免费的gcc编译开发cortex-m3产品
- 安卓编译出错: Process 'command 'C:\Java\jdk1.8.0_51\bin\java.exe'' finished with non-zero exit value 1 解决!
- window下Qt编译出错
- 编译apache时出错error: APR not found
- android eclipse ndk -debug 编译出错
- Android2.3 编译出错:No rule to make InterpAsm-x86.S
- 2.5在Eclipse里面编译samples/Cpp/里面的几个例子,会出错 "Unable to execute dex: java.nio.BufferOverflowException"
- 运行SimpleDict例子编译出错,解决办法如下。
- httpd ssl模块编译出错
- Ubunto 下编译libxml2出错