前面的正常,最后无法输出GPIO=0x04。
- #include<pic.h>
- #define uchar unsigned char
- #define uint unsigned int
- __CONFIG(0x001A);//启用MCLR功能
- void delay(uint x);
- void init();
- void scan();
- void main()
- {
- init();
- GPIO=0x34;//0011 0100
- delay(12000);//18秒
- GPIO=0x00; //启辉电压 0000 0000
- delay(1000); //维持一秒
- GPIO=0x04; //关闭启辉电压 0000 0100
- while(1)
- {
- scan();
- }
-
-
- return;
- }
- void delay(uint x)//x为多少,就延迟多少毫秒。
- {
- uint a,b;
- for(a=x;a>0;a--)
- for(b=110;b>0;b--);
- }
- void init()
- {
- OPTION=0x07;
- //TRISGPIO=0x00;//4脚做为I/O口,MCLR内部与vdd相连
- TRISGPIO=0x0A;//4脚6脚输入,4脚作为MCLR引脚,低电平有效。
-
- }
- void scan()
- {
- if(GP1==1)//6脚反馈高电平,7脚响应高电平。
- {
- delay(10);
- if(GP1==1)
- {
- GP0=1;
- }
-
- }
-
- }
|