共2条
1/1 1 跳转至页
iar,workbench 一个上次以发过的iar workbench 的问题,版主帮忙

问
我在option里已经设置我的MSP430类型了,包括.xcl和.ddf
我在用c语言编的时候,它在compile的时候就报错,如下所示:
IAR MSP430 C Compiler V2.10A/W32
Copyright 1996-2003 IAR Systems. All rights reserved.
Error[Pa032]: the type "long long" does not exist
Error[Pa032]: the type "long long" does not exist
Error[Pa032]: the type "long long" does not exist
Errors: 3
Warnings: none
我双击Error[Pa032]: the type "long long" does not exist时,
跳到intrinsics.h文件的如下语句处 __intrinsic unsigned long long __bcd_add_long_long(unsigned long long, unsigned long long);
请问是怎么回事?
请大哥多多指教! 答 1: 我拿ti的例子都报错啊
我觉得这个语句是不是应该删掉啊,原文是这样的
#ifndef __INTRINSICS_H
#define __INTRINSICS_H
#pragma language=extended
/*
* The return value of "__get_interrupt_state".
*/
typedef unsigned short istate_t;
#ifdef __cplusplus
extern "C"
{
#endif
__intrinsic void __no_operation(void);
__intrinsic void __enable_interrupt(void);
__intrinsic void __disable_interrupt(void);
__intrinsic istate_t __get_interrupt_state(void);
__intrinsic void __set_interrupt_state(istate_t);
__intrinsic void __op_code(unsigned short);
__intrinsic unsigned short __swap_bytes(unsigned short);
__intrinsic void __bic_SR_register(unsigned short);
__intrinsic void __bis_SR_register(unsigned short);
__intrinsic unsigned short __get_SR_register(void);
__intrinsic void __bic_SR_register_on_exit(unsigned short);
__intrinsic void __bis_SR_register_on_exit(unsigned short);
__intrinsic unsigned short __get_SR_register_on_exit(void);
__intrinsic unsigned short __bcd_add_short(unsigned short, unsigned short);
__intrinsic unsigned long __bcd_add_long (unsigned long , unsigned long);
__intrinsic unsigned long long __bcd_add_long_long(
unsigned long long, unsigned long long); 答 2: 您说的是在建立C文件后自动生成的Intrinsics.h文件,以前老的版本没有这个文件,我试过2.20以上的版本没有什么问题。
建议您一、新安装2.20以上的版本;
二、建立工程文件后,加载文件时加载现有的例程,再汇编判断是有是自己的程序问题。
我在用c语言编的时候,它在compile的时候就报错,如下所示:
IAR MSP430 C Compiler V2.10A/W32
Copyright 1996-2003 IAR Systems. All rights reserved.
Error[Pa032]: the type "long long" does not exist
Error[Pa032]: the type "long long" does not exist
Error[Pa032]: the type "long long" does not exist
Errors: 3
Warnings: none
我双击Error[Pa032]: the type "long long" does not exist时,
跳到intrinsics.h文件的如下语句处 __intrinsic unsigned long long __bcd_add_long_long(unsigned long long, unsigned long long);
请问是怎么回事?
请大哥多多指教! 答 1: 我拿ti的例子都报错啊
我觉得这个语句是不是应该删掉啊,原文是这样的
#ifndef __INTRINSICS_H
#define __INTRINSICS_H
#pragma language=extended
/*
* The return value of "__get_interrupt_state".
*/
typedef unsigned short istate_t;
#ifdef __cplusplus
extern "C"
{
#endif
__intrinsic void __no_operation(void);
__intrinsic void __enable_interrupt(void);
__intrinsic void __disable_interrupt(void);
__intrinsic istate_t __get_interrupt_state(void);
__intrinsic void __set_interrupt_state(istate_t);
__intrinsic void __op_code(unsigned short);
__intrinsic unsigned short __swap_bytes(unsigned short);
__intrinsic void __bic_SR_register(unsigned short);
__intrinsic void __bis_SR_register(unsigned short);
__intrinsic unsigned short __get_SR_register(void);
__intrinsic void __bic_SR_register_on_exit(unsigned short);
__intrinsic void __bis_SR_register_on_exit(unsigned short);
__intrinsic unsigned short __get_SR_register_on_exit(void);
__intrinsic unsigned short __bcd_add_short(unsigned short, unsigned short);
__intrinsic unsigned long __bcd_add_long (unsigned long , unsigned long);
__intrinsic unsigned long long __bcd_add_long_long(
unsigned long long, unsigned long long); 答 2: 您说的是在建立C文件后自动生成的Intrinsics.h文件,以前老的版本没有这个文件,我试过2.20以上的版本没有什么问题。
建议您一、新安装2.20以上的版本;
二、建立工程文件后,加载文件时加载现有的例程,再汇编判断是有是自己的程序问题。
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 | |
【我踩过的那些坑】DRC使用位置错误导致的问题被打赏100分 | |
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 | |
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 | |
分享汽车电子中巡航控制系统知识被打赏10分 | |
分享安全气囊系统的检修注意事项被打赏10分 | |
分享电子控制安全气囊计算机知识点被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】【OZONE】使用方法总结被打赏20分 | |
【分享开发笔记,赚取电动螺丝刀】【S32K314】芯片启动流程分析被打赏40分 |