Microchip
直播中

徐静怡

7年用户 142经验值
私信 关注
[问答]

MPLABX和SDCC选择哪个更好?

嗨,在看到XC8 1.37(免费)产生一些垃圾代码并且还添加了许多不必要的银行交换指令之后,我决定尝试使用SDCC,因为我已经在8051变体上使用它很多年了。我正在使用PIC18F26K22、SDCC 3.6.0 MPLAB 3.35和SDD Plugin 2.02(?)Windows 7 Pro。我让它工作,并有几个问题关于期待什么。1)MPLABX回退扫描器不喜欢_u inter.。我是否正确,有一个解决方案。2)您必须手动添加-Debug在编译行中以允许C源级调试,否则您将获得汇编级调试。我是否正确,或者MPLABX可以通过一些设置自动添加它。这是否正常,或者是否有一些可以设置为显示内容的标志。如果我可以修复这些怪癖中的一些,这将是“最优秀的”,但是目前看不到数组的内容对调试来说有点阻碍。否则,我感谢所有实现此功能的人。非常感谢Andy。

回帖(4)

沈会笛

2019-8-2 13:35:24
Hi.支持中断,但是对于PIC18Fxxx,它们具有以下语法:voidhighInter.(void)_inter.(1){}voidlowInter.(void)_inter.(2){}这也是SDCC手册中记录的。(是标准C语法吗?)看一下模板中的构建:MPLABX->NEW FILE->Micro.Embed.->SDCC编译器->main_pic18.cFor debugging info-我将研究这一点。我可能错过了一些东西。现在,在“PIC16独占选项”下尝试“输出更多调试信息”选项。
举报

赵护林

2019-8-2 13:55:00
你好,M6PAC,谢谢你的回复。我离开电脑,所以我有点后知后觉。我试过你的建议和中断程序不再由背groundscanner得到红线。(我没有一个括号围绕ItUPT号。)“(并且是标准C语法?)我不想中断在Kernigan和里奇,他们太编译/处理器的依赖。但我仍然有问题,调试,调试,调试,额外的命令行中我可以休息,在源代码的一步但我现在不能添加表。——调试Xtra不会调试的源代码你可以添加表,但他们只显示数组的第一个位置。没有——调试或调试Xtra的我只能调试汇编程序,添加手表但他们只表明firstelementofan阵列。以上适用于数组声明红色主要在里面。我刚搬到宣言是全球性的,我可以把它作为一个手表,但我看到的第一个元素。我知道这是没有连接到主要的问题,但是我如何添加,以及图书馆都需要使用prinf。我谷歌,但是大多数的答案不适合mplabx。我添加了图书馆如“C:程序文件    SDCC 3.6.0 lib中libsdcc .lib”但我仍然得到“缺少定义的符号“_printf”。手册似乎没有给出准确的指导。
举报

沈会笛

2019-8-2 14:00:46
您好,andync。我还在“夏季”,所以响应速度有点慢:[8]u inter.部分是正确的——不是标准的,而是XC8和SDCC支持的扩展。调试部分是MPLABX专用的,和SDCC插件无关(我希望),如果包括以下行,可以使用printf:包含和lt;sdio.h & gt;然后只使用PrimTf(…);-没有下划线!查看“C:Program FilesSDCC_360includepic16”以获得include。上面的语法指示内置include,因此IDE解析以了解代码。
举报

张玉梅

2019-8-2 14:07:57
安迪的怪癖是MplabX看不到变量,有没有得到解决?我也看到了我的安装,并在解释和状态感到奇怪。踏板似乎工作良好。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分