|
硬件:AT89C51 LCD1602 DS1302
功能描述:三個按鍵一個為功能選擇鍵,兩個為調(diào)節(jié)鍵,可分別對年月日星期進(jìn)行調(diào)節(jié)
仿真圖
51hei截圖20191220130856.png (119.19 KB, 下載次數(shù): 23)
下載附件
2019-12-20 13:14 上傳
單片機(jī)源程序
- #include<reg51.h>
- unsigned char code tab[] ="HELLO,WORLD!";
- unsigned char code tab1[] ="WELCOME!";
- sbit lcdrs=P2^0;
- sbit lcde=P2^1;
- unsigned char i;
- void delay(unsigned int z)
- {
- unsigned int x,y;
- for(x=z;x>0;x- -)
- for(y=125;y>0;y- -)
- }
- void write_com(unsigned char com)
- {
- lcdrs=0;
- P3=com;
- delay(5)
- lcde=1;
- delay(5);
- lcde=0;
- }
- void write_data(unsigned char data1)
- {
- lcdrs=1;
- P3=data1;
- delay(5)
- lcde=1;
- delay(5);
- lcde=0;
- }
- void init()
- {
- lcde=0;
- write_com(0x38);
- write_com(0x0f);
- write_com(0x06);
- write_com(0x01);
- write_com(0x80);
- }
- void main()
- {
- init();
- write_com(0x80+0x12);
- for(i=0;i<12;i++)
- {
- write_data(tab[i]);
- delay(20);
- }
- write_com(0x80+0x54);
- for(i=0;i<8;i++)
- {
- write_data(tab1[i]);
- delay(20);
- }
- for(i=0;i<16;i++)
- {
- write_com(0x1c);
- delay(200);
- }
- while(1);
- }
復(fù)制代碼 |
|