为什么intrins.h会编译出错?
求教,为什么在intrins.h中会出现编译出错?以下是错误信息:
Rebuild target 'Target 1'
compiling main.c...
PPM.h(6): error C132: '_PPM_3V3SW': not in formal parameter list
PPM.h(6): error C141: syntax error near 'void'
PPM.h(7): error C132: '_PPM_CHGSW': not in formal parameter list
PPM.h(7): error C141: syntax error near 'void'
C:\Keil_v5\C51\Inc\intrins.h(19): error C132: '_PPM_USBOUTSW': not in formal parameter list
C:\Keil_v5\C51\Inc\intrins.h(19): error C141: syntax error near 'extern'
C:\Keil_v5\C51\Inc\intrins.h(19): error C132: '__nop_': not in formal parameter list
C:\Keil_v5\C51\Inc\intrins.h(20): error C127: '__testbit_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(21): error C127: '__cror_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(22): error C127: '__iror_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(23): error C127: '__lror_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(24): error C127: '__crol_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(25): error C127: '__irol_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(26): error C127: '__lrol_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(27): error C127: '__chkfloat_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(33): error C127: '__push_': invalid storage class
C:\Keil_v5\C51\Inc\intrins.h(34): error C127: '__pop_': invalid storage class
main.c(10): error C244: 'sta_chg': can't initialize, bad type or class
main.c(10): error C132: 'sta_chg': not in formal parameter list
main.c(11): error C244: 'sta_on': can't initialize, bad type or class
main.c(11): error C132: 'sta_on': not in formal parameter list
main.c(12): error C244: 'sta_batavail': can't initialize, bad type or class
main.c(12): error C132: 'sta_batavail': not in formal parameter list
main.c(13): error C244: 'sta_12Vavail': can't initialize, bad type or class
main.c(13): error C132: 'sta_12Vavail': not in formal parameter list
main.c(14): error C244: 'sta_USBavail': can't initialize, bad type or class
main.c(14): error C132: 'sta_USBavail': not in formal parameter list
main.c(15): error C244: 'sta_lowbat': can't initialize, bad type or class
main.c(15): error C132: 'sta_lowbat': not in formal parameter list
main.c(17): error C244: 'prevsta_chg': can't initialize, bad type or class
main.c(17): error C132: 'prevsta_chg': not in formal parameter list
main.c(18): error C244: 'prevsta_on': can't initialize, bad type or class
main.c(18): error C132: 'prevsta_on': not in formal parameter list
main.c(19): error C244: 'prevsta_batavail': can't initialize, bad type or class
main.c(19): error C132: 'prevsta_batavail': not in formal parameter list
main.c(20): error C244: 'prevsta_12Vavail': can't initialize, bad type or class
main.c(20): error C132: 'prevsta_12Vavail': not in formal parameter list
main.c(21): error C244: 'prevsta_USBavail': can't initialize, bad type or class
main.c(21): error C132: 'prevsta_USBavail': not in formal parameter list
main.c(22): error C244: 'prevsta_lowbat': can't initialize, bad type or class
main.c(22): error C132: 'prevsta_lowbat': not in formal parameter list
main.c(24): error C244: 'status': can't initialize, bad type or class
main.c(24): error C132: 'status': not in formal parameter list
main.c(26): error C244: 'isda': can't initialize, bad type or class
main.c(26): error C132: 'isda': not in formal parameter list
main.c(27): error C244: 'isma': can't initialize, bad type or class
main.c(27): error C132: 'isma': not in formal parameter list
main.c(28): error C244: 'addr': can't initialize, bad type or class
main.c(28): error C132: 'addr': not in formal parameter list
main.c(31): error C132: 'GPIO_Init': not in formal parameter list
main.c(31): error C141: syntax error near '{'
main.c(32): error C136: 'P0M0': 'void' on variable
main.c(32): error C132: 'P0M0': not in formal parameter list
main.c(32): error C136: 'P0M1': 'void' on variable
main.c(32): error C132: 'P0M1': not in formal parameter list
main.c(33): error C136: 'P1M0': 'void' on variable
main.c(33): error C132: 'P1M0': not in formal parameter list
main.c(33): error C136: 'P1M1': 'void' on variable
main.c(33): error C132: 'P1M1': not in formal parameter list
main.c(34): error C136: 'P2M0': 'void' on variable
main.c(34): error C244: 'P2M0': can't initialize, bad type or class
main.c(34): error C136: 'P2M0': 'void' on variable
main.c(34): error C132: 'P2M0': not in formal parameter list
main.c(34): error C244: 'P2M1': can't initialize, bad type or class
main.c(34): error C132: 'P2M1': not in formal parameter list
main.c(35): error C132: 'P3M0': not in formal parameter list
main.c(35): error C141: syntax error near '|='
main.c(35): error C132: 'P3M1': not in formal parameter list
main.c(39): error C132: 'I2C_Init': not in formal parameter list
main.c(39): error C141: syntax error near '{'
main.c(40): error C141: syntax error near 'unsigned'
main.c(41): error C141: syntax error near 'unsigned'
main.c(42): error C141: syntax error near 'unsigned'
main.c(43): error C141: syntax error near 'unsigned'
main.c(44): error C244: 'EA': can't initialize, bad type or class
main.c(44): error C132: 'EA': not in formal parameter list
main.c(45): error C141: syntax error near '}'
compiling Delayms.c...
compiling ADC.c...
compiling PPM.c...
Target not created.
Build Time Elapsed:00:00:01 看你报的这个错不像是包含INTRINS这个头文件造成的,是不是还有其他关键头文件没包含进来,截个图上来看看 白开水1233 发表于 2023-12-8 15:10
看你报的这个错不像是包含INTRINS这个头文件造成的,是不是还有其他关键头文件没包含进来,截个图上来看看 ...
谢谢!
叁柒子-6137 发表于 2023-12-8 23:49
谢谢!
先试着把intrins这个头文件放在STC8h之后,在调用其他头文件,如果你这个程序不是很重要的话就打包上来,一起分析
麻烦帮忙看一下,谢谢大佬 白开水1233 发表于 2023-12-9 08:51
先试着把intrins这个头文件放在STC8h之后,在调用其他头文件,如果你这个程序不是很重要的话就打包上来, ...
另附电路原理图 这一堆加;
gentleman 发表于 2023-12-9 12:13
这一堆加;
问题解决了,谢谢指教! 像这种出问题的话,如果你觉得是你的库问题的话, 你就逐个删除库引用,然后检查哪一个报错就好了 PPM_H 头文件里函数声明需要加;
Main函数第122行if(sta_USBavail == 1)应去掉;
Main函数第176行status = (sta_chg << 3) | (sta_batavail << 2) | (sta_12Vavail << 1) | (sta_USBavail);
应改成status = (sta_chg << 3) | |(sta_batavail << 2) | |(sta_12Vavail << 1) || (sta_USBavail);
这个是条件或得用||,位或用|
另外这一行sta_chg,sta_batavail,sta_12Vavail,sta_USBavail这几个你定义的是布尔变量,无法执行左右移操作,执行左右移必须的是char,long,int以上的字符。
你把这行屏蔽了就什么问题都没有了
页:
[1]
2