这样的出错我是头一次碰到,折腾了两三天没解决

[复制链接]
 楼主| action99 发表于 2008-3-10 15:42 | 显示全部楼层 |阅读模式
我用的18F4423芯片,MCC18的C语言编辑器,在编辑时出现如此的错,怎么解决才好,请指教。。<br /><br />程序如下:<br />#include&nbsp;&ltp18cxxx.h&gt<br />#include&nbsp;&ltp18f4423.h&gt<br /><br />//__CONFIG(XT&WDTEN&PWRTEN&BOREN);<br />#define&nbsp;BAUD&nbsp;9600&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />#define&nbsp;FOSC&nbsp;4000000L<br />#define&nbsp;NINE&nbsp;0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Use&nbsp;9bit&nbsp;communication?&nbsp;FALSE=8bit&nbsp;*/<br /><br />#define&nbsp;DIVIDER&nbsp;((int)(FOSC/(16UL&nbsp;*&nbsp;BAUD)&nbsp;-1))<br />#define&nbsp;HIGH_SPEED&nbsp;1<br /><br />#if&nbsp;HIGH_SPEED&nbsp;==&nbsp;1<br />#define&nbsp;SPEED&nbsp;0x4<br />#else<br />#define&nbsp;SPEED&nbsp;0<br />#endif<br /><br />#define&nbsp;&nbsp;a164_clk&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RD0<br />#define&nbsp;&nbsp;a164_data&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RD1<br /><br /><br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;init();<br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;delay();<br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;delay1();<br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;factory_set();<br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;send_164();<br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;class_choose();<br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;send_rs232();<br />&nbsp;void&nbsp;&nbsp;&nbsp;&nbsp;receive_spi_data();<br />&nbsp;void&nbsp;&nbsp;&nbsp;send_spi_data();<br /><br />unsigned&nbsp;&nbsp;&nbsp;near&nbsp;char&nbsp;uii;<br /><br />#pragma&nbsp;code<br /><br />void&nbsp;main(void){<br /><br />&nbsp;&nbsp;while(1){<br />&nbsp;&nbsp;&nbsp;&nbsp;ClrWdt();<br />&nbsp;&nbsp;&nbsp;_Nop();<br /><br /><br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /><br /><br /><br /><br /><br />Error[1109]&nbsp;C:\MCC18\h\p18f4423.h&nbsp;59&nbsp;:&nbsp;type&nbsp;mismatch&nbsp;in&nbsp;redeclaration&nbsp;of&nbsp;'PORTAbits'<br />Error[1109]&nbsp;C:\MCC18\h\p18f4423.h&nbsp;133&nbsp;:&nbsp;type&nbsp;mismatch&nbsp;in&nbsp;redeclaration&nbsp;of&nbsp;'PORTCbits'<br />Error[1109]&nbsp;C:\MCC18\h\p18f4423.h&nbsp;192&nbsp;:&nbsp;type&nbsp;mismatch&nbsp;in&nbsp;redeclaration&nbsp;of&nbsp;'PORTEbits'<br /><br />。<br />。<br />。<br />。
zgl7903 发表于 2008-3-10 16:57 | 显示全部楼层

没玩过MCC编译器,随便猜测一下

把#include&nbsp;&ltp18f4423.h&gt屏蔽掉,<br />可能在&nbsp;#include&nbsp;&ltp18cxxx.h&gt&nbsp;已经包含了&nbsp;&ltp18f4423.h&gt头文件
zgl7903 发表于 2008-3-10 16:58 | 显示全部楼层

还有可以在在p18f4423.h中加入预编译控制宏

#ifndef&nbsp;__P18F4423_H<br />#define&nbsp;__P18F4423_H<br /><br />//原始内容<br /><br />#endif
skygrow 发表于 2008-3-10 17:20 | 显示全部楼层

屏蔽掉一个头文件

打开p18cxxx.h看看就知道为什么了
hotpower 发表于 2008-3-10 23:54 | 显示全部楼层

哈哈~~~这种事情俺常干~~~

  
兰天白云 发表于 2008-3-12 21:05 | 显示全部楼层

MCC18没必要这样

#include&nbsp;&ltp18cxxx.h&gt<br />#include&nbsp;&ltp18f4423.h&gt<br /><br />留下#include&nbsp;&ltp18f4423.h&gt&nbsp;就可<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

87

主题

189

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部

87

主题

189

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部