找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2930|回復(fù): 10
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)做一個(gè)時(shí)鐘(2位7段數(shù)碼管還是不會(huì)用),有些頭疼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
//雖然能一秒顯示一個(gè)數(shù),但是2位7段數(shù)碼管還是不會(huì)用。本來是想實(shí)現(xiàn)24秒,晚上18點(diǎn)到第二天6點(diǎn)路燈打開,用24秒代替24時(shí)顯示出來。還有單片機(jī)內(nèi)部的AD轉(zhuǎn)換,,能夠用LCD顯示出光照強(qiáng)度。(本來應(yīng)該是用LCD全部一起顯示出來的)感覺實(shí)在不會(huì)


  1. #include<reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. sbit duan=P2^6;
  5. sbit wei=P2^7;
  6. uchar code table[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xe6};
  7.      //顯示0,1,2,3,4,5,6,7,8,9 共陰取反
  8. uchar num;
  9. void delay(uint);
  10. void delay(uint xms)
  11. {
  12. uint i,j;
  13. for(i=xms;i>0;i--)
  14.    for(j=110;j>0;j--);
  15. }
  16. void main()
  17. {
  18. while(1)
  19. {
  20. for(num=0;num<24;num++)
  21. {
  22. int a,b;
  23. a=num%10;
  24. b=num/10;
  25. duan=1;
  26. P0=~table[b];
  27. delay(500);
  28. duan=0;
  29. P0=~0xff;
  30. wei=1;
  31. P0=~table[a];
  32. delay(500);
  33. wei=0;
  34.   if(num>6&&num<18)
  35. {P1=0xff;}
  36. else
  37. {P1=0x00;}
  38. }

  39. }
  40.   
  41.   }
復(fù)制代碼

smgm.png (134.19 KB, 下載次數(shù): 17)

smgm.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:463277 發(fā)表于 2019-1-8 22:50 | 只看該作者
請(qǐng)教各位
回復(fù)

使用道具 舉報(bào)

板凳
ID:123289 發(fā)表于 2019-1-9 08:35 | 只看該作者
不知道你學(xué)了多久,如果很容易的話,單片機(jī)這一行就不值錢了。一樣樣的弄懂,功到自然成。
回復(fù)

使用道具 舉報(bào)

地板
ID:149389 發(fā)表于 2019-1-9 09:07 | 只看該作者
AT89C51 內(nèi)部沒有ADC,這樣取光照度的電路不可行,換個(gè)思路吧。
回復(fù)

使用道具 舉報(bào)

5#
ID:463277 發(fā)表于 2019-1-9 13:09 | 只看該作者
可以用ADC0804轉(zhuǎn)換吧
回復(fù)

使用道具 舉報(bào)

6#
ID:463277 發(fā)表于 2019-1-9 13:10 | 只看該作者
正在嘗試用0804轉(zhuǎn)換和1602 顯示數(shù)據(jù)
回復(fù)

使用道具 舉報(bào)

7#
ID:232956 發(fā)表于 2019-1-9 15:25 | 只看該作者
可以用DS1302時(shí)鐘,走時(shí)精確,簡(jiǎn)單好用。顯示用數(shù)碼管、液晶都可以?茨闶诸^上有啥
回復(fù)

使用道具 舉報(bào)

8#
ID:463277 發(fā)表于 2019-1-10 13:01 | 只看該作者
blackstar 發(fā)表于 2019-1-9 15:25
可以用DS1302時(shí)鐘,走時(shí)精確,簡(jiǎn)單好用。顯示用數(shù)碼管、液晶都可以。看你手頭上有啥

有1602
回復(fù)

使用道具 舉報(bào)

9#
ID:465924 發(fā)表于 2019-1-10 16:27 | 只看該作者
一、我看了你的仿真電路,如果你只能點(diǎn)亮一位數(shù)碼管,希望兩位一齊點(diǎn)亮的話,可以用輪留點(diǎn)亮的方法。例如第10ms點(diǎn)亮位1數(shù)碼管,第20ms點(diǎn)亮位2數(shù)碼管。

二、若單片機(jī)沒有AD轉(zhuǎn)換器的話,可以隨便買個(gè)AD轉(zhuǎn)換模塊接在單片機(jī)即可。例如AD5686芯片。

三、我用單片機(jī)十年以上了,感覺單片機(jī)只是讓你慢慢學(xué)習(xí)模電和數(shù)電的起點(diǎn),慢慢學(xué),總會(huì)學(xué)會(huì)的。

評(píng)分

參與人數(shù) 1黑幣 +90 收起 理由
admin + 90 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

10#
ID:463277 發(fā)表于 2019-1-12 12:04 | 只看該作者
donerlin 發(fā)表于 2019-1-10 16:27
一、我看了你的仿真電路,如果你只能點(diǎn)亮一位數(shù)碼管,希望兩位一齊點(diǎn)亮的話,可以用輪留點(diǎn)亮的方法。例如第 ...

恩恩,謝謝,單片機(jī)的程序還是要慢慢寫才好,一步一步來
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表