用LITE编译后不止时间不准,按键啥的都没反应了。不是说用LITE版本的编译功能都是一样的吗,我看了PICC的介绍也是这样的。因为时间比较急,也没具体分析。。请大家再帮我分析下原因谢谢!
用LITE编译后的一些信息如下:
Build E:\work\M203\M203 for device 18F8627
Using driver C:\Program Files\HI-TECH Software\PICC-18\9.80\bin\picc18.exe
HI-TECH C Compiler for PIC18 MCUs (Lite Mode) V9.80
Copyright (C) 2011 Microchip Technology Inc.
Serial number: HCPIC18P-12345 (PRO)
Advisory[1233] Employing 18F8627 errata work-arounds:
Advisory[1234] * Corrupted fast interrupt shadow registers
Warning [1413] E:\work\M203\M203\display.c; 303. "ROM" is positioned at address 0x0 and has had its address taken; pointer comparisons may be invalid
Running this compiler in PRO mode, with Omniscient Code Generation enabled,
often produces code which is 60% smaller and at least 400% faster than in
Lite mode. The HI-TECH C PRO compiler output for this code could be
64723 bytes smaller and run 4 times faster.
See http://www.microchip.com for more information.
Loaded E:\work\GI\pic\Debug\GI__Pump_V1.0(20130306)\GI__Pump_V1.0(20130306).cof.
********** Build successful! **********
从上面的编译信息也只是提醒LITE版本编译只是在代码优化方面,编译速度方面有差别而已,编译出来程序应该不会被阉割的不是的吗
以下是用PRO版本编译的一些信息:
Build E:\work\U203\pic\U203 for device 18F8627
Using driver C:\Program Files\HI-TECH Software\PICC-18\9.80\bin\picc18.exe
HI-TECH C Compiler for PIC18 MCUs (PRO Mode) V9.80
Copyright (C) 2011 Microchip Technology Inc.
Serial number: HCPIC18P-12345 (PRO)
Advisory[1233] Employing 18F8627 errata work-arounds:
Advisory[1234] * Corrupted fast interrupt shadow registers
Warning [1413] E:\work\M203\M203\display.c; 303. "ROM" is positioned at address 0x0 and has had its address taken; pointer comparisons may be invalid
编译到此处后,就不动了。难道是因为我程序的问题吗。旧的V9.50就可以正常使用啊。
还有,编译时提到的Warning [1413] E:\work\M203\M203\display.c; 303. "ROM" is positioned at address 0x0 and has had its address taken; pointer comparisons may be invalid
。我现在也还是没找出来是为什么。
程序相关部分是这样的:
const *display_data; // 定义显示数据
display_data="Yes";//
请问一下这样编写是不是不规范呢。还重新翻了C语言的书,也还是没发现错在哪里啊。
请指点下,谢谢