51微控制器做的時鐘求c程式速度要速度要速度要大神快來幫忙啊可以用的話再加30財富

2021-05-09 15:26:45 字數 3750 閱讀 6951

1樓:黃石佳誠家電維修

#include

#include

#define uint unsigned int

#define uchar unsigned char

sbit lcd_rs=p2^0;

sbit lcd_rw=p2^1;

sbit lcd_en=p2^2;

sbit key1=p1^0;

sbit key2=p1^1;

sbit key3=p1^2;

sbit key4=p1^3;

uchar display_buffer[8];

uchar count,hour=12,min=12,sec=12;

bit flag,h_or_m;

void _delay_ms(unsigned int x)

}uchar lcd_busy(void)//測忙

void lcd_write_command(uchar cmd)//寫指令

void lcd_write_data(uchar dat)//寫資料

void init_lcd(void)//液晶初始化

void lcd_pos(uchar pos)//字元顯示位置

void show_string(uchar *str)//顯示字串

/////lcd1602液晶顯示//////

void display_time(uchar hour,uchar min,uchar sec)

/////按鍵處理//////

void set_time(void)

while(flag)//判斷那乙個按鍵按下

else if(key2==0)//判斷key2是否被按下

else//否則修改分鐘

}else if(key3==0)//判斷key3是否被按下

else//否則修改分鐘

}else if(key4==0)//判斷key4是否被按下

display_time(hour,min,sec);//傳h,m,s值顯示到液晶}}

void timer0_init(void)//定時器0初始化

void main(void)//主函式

}void timer0() interrupt 1//定時器0中斷}}

}}給您參考一下吧,時鐘源是用51微控制器內部定時器0定時50ms,然後再中斷20次,就可得到1秒時鐘.希望對您有幫助吧!

2樓:匿名使用者

自己改吧,搞電子的都不樂意做這事...

3樓:魔靨一陣風

我有程式,用的是ds1203 有**圖和程式,要的話留下郵箱!

51微控制器做的時鐘 求c程式 速度要速度要速度要大神快來幫忙啊~~~可以用的話 再加30財富

4樓:黃石佳誠家電維修

#include

#include

#define uint unsigned int

#define uchar unsigned char

sbit lcd_rs=p2^0;

sbit lcd_rw=p2^1;

sbit lcd_en=p2^2;

sbit key1=p1^0;

sbit key2=p1^1;

sbit key3=p1^2;

sbit key4=p1^3;

uchar display_buffer[8];

uchar count,hour=12,min=12,sec=12;

bit flag,h_or_m;

void _delay_ms(unsigned int x)

}uchar lcd_busy(void)//測忙

void lcd_write_command(uchar cmd)//寫指令

void lcd_write_data(uchar dat)//寫資料

void init_lcd(void)//液晶初始化

void lcd_pos(uchar pos)//字元顯示位置

void show_string(uchar *str)//顯示字串

/////lcd1602液晶顯示//////

void display_time(uchar hour,uchar min,uchar sec)

/////按鍵處理//////

void set_time(void)

while(flag)//判斷那乙個按鍵按下

else if(key2==0)//判斷key2是否被按下

else//否則修改分鐘

}else if(key3==0)//判斷key3是否被按下

else//否則修改分鐘

}else if(key4==0)//判斷key4是否被按下

display_time(hour,min,sec);//傳h,m,s值顯示到液晶}}

void timer0_init(void)//定時器0初始化

void main(void)//主函式

}void timer0() interrupt 1//定時器0中斷}}

}}這個可以實現,只須改一下引腳,是可以實現的,您可以參考一下,希望能幫助到您,謝謝!

5樓:

你這個直接找乙個時鐘的驅動程式改一下就可以了啊~

6樓:

留下郵箱……我給你做,帶**的

微控制器程式設計,大神快來幫忙

7樓:匿名使用者

#include

#define uchar unsigned charauchar code table=;//共陽級數碼管碼表0-9uchar delay(uchar a)

main()

if(i<4)p2=table[i+1];

else p2=table[0];}}

利用51微控制器,4個數碼管設計乙個計時器,要求在數碼管上顯示的資料從0開始每1秒鐘加1。

8樓:匿名使用者

我正好也寫了那麼乙個程式,我說一下自己的思路吧,我也剛學。

先做乙個段選錶和位選錶,用兩個陣列儲存,如果有八個燈,位選就有8個。然後再定義乙個陣列

digit[8] 裡面儲存 個位十位百位等數字。然後再定時器中斷函式裡,用乙個switch語句,分別表明位選在01234567的情況。 我把它貼出來吧。

switch (num_we) //控制每一次位選的數碼管顯示

上面ledcode 是段選錶 wecode 是位選錶 。 num_we是位選標誌,表示選到了第幾個數碼管。

然後在除錯差不多掃瞄幾回為1秒,每到了一定的回數,個位數字就+1,個位數字到10,個位清零,十位+1,,以此類推。

9樓:絕種好風

那得看你的數碼管是怎麼接的,其實重要的是51微控制器定時器的使用,兩個,t0和t1,隨便選乙個,就行了,只是提醒下,

會c語言程式的大神快來幫幫忙呀,看看這題目怎麼填,填空位置在/**/

10樓:芍藥

#include int main(){ int i,j=0; int n = 1; char a[21]; char b[21]; scanf("%20s", a); for (i = 0; a[i]!='\0';i++) { if (!((a[i] >= 48 && a[i]

微控制器大神請進,51微控制器彙編程式,程式可發至

1 p1口做輸出口,編寫程式,使p1口接的8個發光二極體l1 l8按16進位制加一方式點亮發光二極體。程式如下 org 0540h ha1s mov a,00h a初值為0 ha1s1 jb p3.3,ha1s1 如果p3.3為1則等待 有脈衝變0一次 mov r2,20h r2賦值為20 lcal...

80C51微控制器是什麼,80C51微控制器引腳圖及引腳功能介紹

微控制器80c51指令的基本格式由 標號 操作碼 運算元 註釋 組成 標號 指令的符號位址。用於一段功能程式的識別標記或控制 轉移位址。呵呵 問對人拉。我就是學這個東西。一句話,就是麻煩。難 你的電腦太垃圾了,真的不行啊,你重新再買乙個吧,80c51微控制器引腳圖及引腳功能介紹 80c51微控制器有...

c51微控制器的跳帽是幹嘛的翱,C51微控制器的跳帽是幹嘛的啊?

跳帽,是採用簡單的跳接方式,實現不同的系統功能。簡化了pcb電路板的設計,方便了使用。就是兩個接線口,用上跳冒就把這兩線連在一起,不用,這兩線視為斷路 用來短路一些線路,是比較方便的,如果不用這個跳帽就要焊接,那就太麻煩了。沒有原理圖誰都不知道是做什麼用的!51微控制器跳線帽有什麼作用 跳線帽就是起...