注意它的IO口!
我们可以直接在数码管的基础上来修改,首先,依旧是延时函数,
1 void delay(float t) 2 { 3 unsigned int j,i; 4 j=t*100; 5 while(j--) // 150400-1 6 { 7 for(i=1505;i;i--); //1505-1=1504 1504-1=1503 8 } 9 }
头文件
1 //hjc52.h 头文件 2 3 #ifndef hjc52_H 4 #define hjc52_H 5 6 //定义LED流水灯IO口 7 sbit LED0 =P1^0; 8 sbit LED1 =P1^1; 9 sbit LED2 =P1^2; 10 sbit LED3 =P1^3; 11 sbit LED4 =P1^4; 12 sbit LED5 =P1^5; 13 sbit LED6 =P1^6; 14 sbit LED7 =P1^7; 15 16 //定义按键 17 //HL-1 HJ-3G按键IO口 18 sbit K1 =P3^4; 19 sbit K2 =P3^5; 20 sbit K3 =P3^6; 21 sbit K4 =P3^7; 22 23 sbit HLDU =P2^6; //HL-1 24 sbit HLWE =P2^7; //HL-1 25 26 sbit FM =P1^2; //P2.3 HL-1 27 sbit EN =P2^5; //LCD1602 28 sbit RST =P1^2; //DS1302 29 30 #endif
主板函数
1 #include <reg52.h> 2 #include"hjc52.h" 3 4 //请板函数 5 void hjc52_init(void) 6 { 7 FM=0; //FM 8 EN=0; //LCD1602 9 RST=0; //DS1302 10 }
主函数,注意思想
1 #include<reg52.h> 2 #include"hjc52.h" 3 4 void main() 5 { 6 hjc52_init();//调用初始化函数 7 P1=0xff; 8 while(1) //检测 9 { 10 LED0=K1; //定义 11 LED1=K2; 12 LED2=K3; 13 LED3=K4; 14 // 可以用开短路来想 K1=1;松开时高电平 1 15 // K1=0;按下时低电平 0 16 } 17 18 }