单片机入门必学的一些课程
#include <Reg52.h > sbit key1=P3^1; sbit key2=P3^0; sbit key3=P3^2; sbit key4=P3^3; char a[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; int n=0; int cc = 0; int T1MS = 65536-50000; int hour; int minute; int second; void disp_time(int hour, int minute, int second); void init_interrupt(); void delay(int i) { int x,y; for(x=0;x < i;x++) for(y=0;y<255;y++); } void disp_time(int hour, int minute, int second) { P0 = 0x00; P2=0xFF;//111(1 11)11 P0=a[hour/10]; delay(1); P0 = 0x00; P2=0xFB;//111(1 10)11 P0=a[hour%10]; delay(1); P0 = 0x00; P2=0xF3;//111(1 00)11 P0=a[minute/10]; delay(1); P0 = 0x00; P2=0xEF;//111(0 11)11 P0=a[minute%10]; delay(1); P0 = 0x00; P2=0xE7;//111(0 01)11 P0=a[second/10]; delay(1); P0 = 0x00; P2=0xE3;//111(0 00)11 P0=a[second%10]; delay(1); } void main() { init_interrupt(); while(1) { disp_time(hour,minute,second); if(key1==0) { delay(1); if(key1==0) { hour+=1; } while(key1==0); } if(key2==0) { delay(1); if(key2==0) { minute+=1; } while(key2==0); } if(key3==0) { delay(1); if(key3==0) { second+=1; } while(key3==0); } if(key4==0) { delay(1); if(key4==0) { hour=0; minute=0; second=0; } } } } void init_interrupt() { TMOD = 0x00; TL0 = T1MS%256; TH0 = T1MS/256; TR0= 1; ET0 = 1; EA = 1; } void T0_interrupt() interrupt 1 { TL0 = T1MS%256; TH0 = T1MS/256; cc++; if (cc > =80) { cc = 0; second++; } if(second==60) { second=0; minute+=1; } if(minute==60) { minute=0; hour+=1; } if(hour==24) { hour=0; minute=0; second=0; } }============================找指导老师布置任务吧==============================