问题描述
如何在较旧的嵌入式c / c ++源代码上使用现代代码分析工具(例如SourceTrail),该工具最初用于诸如Micro-Controller的Hi-Tech C,PIC C,IAR Workbench之类的编译器,仅限于Microchip的PIC,PIC16和PIC18系列。
为了支持微型微控制器的有限体系结构,嵌入式编译器的供应商不得不提出对c / c ++语言的扩展,这些扩展已经(或尚未采用)c语言规范。 / p>
这会导致特定于微控制器的头文件包含以下内容:
// Register: ANSELA
extern volatile unsigned char ANSELA @ 0xF38;
#ifndef _LIB_BUILD
asm("ANSELA equ 0F38h");
#endif
typedef union {
struct {
unsigned ANSB0 :1;
unsigned ANSB1 :1;
unsigned ANSB2 :1;
unsigned ANSB3 :1;
unsigned ANSB4 :1;
unsigned ANSB5 :1;
};
} ANSELBbits_t;
extern volatile ANSELBbits_t ANSELBbits @ 0xF39;
extern volatile unsigned short long TBLPTR @ 0xFF6;
extern volatile __bit ABDEN1 @ (((unsigned) &BAUDCON1)*8) + 0;
和代码文件包含以下内容:
void interrupt high_priority InterruptVectorHigh(void)
{
}
void interrupt low_priority InterruptVectorLow(void)
{
}
用现代工具支持此源的最简单方法是什么,同时确保仍可将源与原始编译器一起使用?
编辑:
下面提供了一个答案。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)