久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3119|回復: 14
打印 上一主題 下一主題
收起左側

關于單片機驅動4位數碼管最省的方案

[復制鏈接]
跳轉到指定樓層
樓主
單片機驅動4位數碼管很常見,常用驅動方案是:用74HC138,595,TM1650等芯片驅動,可不可以用單片機IO直接驅動呢?下面給出一種方案。
具有推挽輸出的單片機IO直接驅動4位數碼管,不加限流電阻。需要12個IO口。89C52單片機沒有推挽輸出不可以直接驅動4位數碼管。注意這種方案對驅動程序要求很高,必須嚴格這行,隨意操作有可能燒毀IO口。
一、首先是驅動電流問題
單片機IO最大電流是20ma,這里的電流指的是連續電流,MOS管最大瞬間電流至少是額定電流5倍,也就是100ma,瞬間指小于1ms。也就是說IO口瞬間1ms以內輸出100ma電流是安全的。IO不加限流電阻直接驅動數碼管電流在20--60ma,只要每次點亮時間小于1ms是安全的。
二、IO口驅動時序問題
IO直接驅動數碼管當然不可以一次驅動8段,這樣電流太大會燒毀IO,為了減少電流一次只驅動1個LED,4位數碼管一共8*4=32個LED,要使數碼管不閃爍每秒至少刷新30次,32個LED*30=960,也就是說1ms點亮一個LED就可以保證數碼管不閃爍。為了使每個IO有充分的休息時間IO口驅動時序為:
1位1段→2位2段→3位3段→4位4段→
1位5段→2位6段→3位7段→4位8段→
1位2段→2位3段→3位4段→4位5段→
1位6段→4位7段→4位8段→4位1段→
1位3段→2位4段→3位5段→4位6段→
1位7段→2位8段→3位1段→4位2段→
1位4段→2位5段→3位6段→4位7段→
1位8段→2位1段→3位2段→4位3段→
這樣在數碼管全亮時也可以保證每個IO口驅動1ms,至少休息3ms。IO口驅動時序是有一定要求的,不可以驅動完第一位8段再驅動第二位8段,這樣有可能IO會連續驅動8ms有燒毀的風險。
三、數碼管刷新程序執行問題
必須把數碼管刷新程序放在1ms定時器中斷中執行(這個中斷要有最高優先級)。數碼管刷新程序不可以放在主程序中執行。放在主程序中有風險,如果主程序中有長時間的延時程序或者長時間的中斷程序,比如按鍵消抖,等待按鍵釋放程序等等有可能造成驅動數碼管IO長時間過流燒毀!!!因為一次只驅動1個LED,數碼管刷新程會復雜一些,但是對于1TSTC單片機來說CPU占用率小于5%,不會影響其他程序執行。
驅動數碼管的IO口還可以復用掃描按鍵,獨立按鍵或者矩陣按鍵都可以。多加一個IO還可以再驅動8個獨立LED燈。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:86926 發表于 2022-10-7 08:28 | 只看該作者
正反掃數碼管,4位數碼管共8只腳;前提是掃描IO口需要支持 高阻態-高電平-低電平
回復

使用道具 舉報

板凳
ID:235691 發表于 2022-10-7 10:52 | 只看該作者
樓主給個例程看看
回復

使用道具 舉報

地板
ID:624769 發表于 2022-10-7 11:52 | 只看該作者
撇開“瞬間電流100mA是安全的” 這個關點對錯,我們不談。

就這個點亮方式來講,風險大,操作復雜,還沒太大意義。

既然已經對單片機有了要求“需要強推挽輸出”,不如多點限制,比如,直接用STC8 系列(當然其他品牌單片機也都可以)。 IO用 上拉 + 開漏方式,來驅動共陰數碼管。 就能直接用標準的 動態掃描方式來驅動, 也不需要 限流電阻,還安全可靠。
回復

使用道具 舉報

5#
ID:235691 發表于 2022-10-7 14:12 | 只看該作者
給個網址看看,數碼管不要限流電阻

【新提醒】開源基于STC單片機內部基準mini電壓表—極簡設計創新制作 - 單片機DIY制作  http://www.zg4o1577.cn/bbs/dpj-56990-1.html
回復

使用道具 舉報

6#
ID:888148 發表于 2022-10-7 22:38 | 只看該作者
連限流電阻都舍不得加?步至于省到這程度吧
回復

使用道具 舉報

7#
ID:491577 發表于 2022-10-8 07:50 | 只看該作者
藍魄 發表于 2022-10-7 08:28
正反掃數碼管,4位數碼管共8只腳;前提是掃描IO口需要支持 高阻態-高電平-低電平

只有6腳3位數碼管,8腳4位數碼管找不到,7腳4位數碼管有少量。STC單片機IO有三態直接驅動數碼管沒有問題,驅動時注意讓各個IO輪流導通,每次導通小于1ms就可以。

1.jpg (247.55 KB, 下載次數: 44)

1.jpg

2.png (44.78 KB, 下載次數: 43)

2.png
回復

使用道具 舉報

8#
ID:491577 發表于 2022-10-8 08:24 | 只看該作者
加限流電阻更安全,但是1個電阻要至少2分錢,再加2個焊點2分錢,最少需要4個限流電阻0.16元。對于大批量產品來說是需要考慮的,不用限流電阻的確有風險但程序調試好后就沒有問題,這對于大批量產品來說不是問題,省錢更重要,當然對于DIY來說的確沒必要。地板說:IO用 上拉 + 開漏方式,來驅動共陰數碼管,也可以,但是上拉電阻大約有4K太大,數碼管不夠亮,如果不在意亮度可以用。用推挽驅動數碼管是超亮的。如果是3位數碼管有單邊腳6腳3位數碼管更省IO,也有7腳4位數碼管,太貴不建議。
回復

使用道具 舉報

9#
ID:1034262 發表于 2022-10-8 10:46 | 只看該作者
玩玩可以,做產品就要謹慎了。
另外樓主說一次只點亮1個LED,分32次掃描,要知道,亮度跟平均電流有關,1/32的平均電流就很小了,亮度會嚴重不夠的。4個數碼管,要比較大的電流,位控可以用一個三極管即可,段碼串聯電阻限流,8段總電流不超過60mA比較安全。
MCU擅長處理事務,不擅長大電流驅動(MCU帶LED驅動的例外,比如STC部分MCU)。
回復

使用道具 舉報

10#
ID:624769 發表于 2022-10-8 11:12 來自手機 | 只看該作者
hhh402 發表于 2022-10-8 08:24
加限流電阻更安全,但是1個電阻要至少2分錢,再加2個焊點2分錢,最少需要4個限流電阻0.16元。對于大批量產 ...

你做過測試么?4位數碼管,段碼4k上拉,動態掃描5ms點亮一位,20ms一循環,亮度是足夠亮的。而你那種短時過壓過流點亮法,是在消耗LED壽命,你點1個月看看,要么有的段不亮了,要么就開始光衰了。
回復

使用道具 舉報

11#
ID:401564 發表于 2022-10-8 11:33 | 只看該作者
怎么會有這問題呢?

"可不可以用單片機IO直接驅動呢?"
這個肯定可以的呀,難道網上那么多電路,就沒有一個是直接用IO驅動數碼管的嗎?答案是有的
"89C52單片機沒有推挽輸出不可以直接驅動4位數碼管。"
不知道你這是什么意思,編程是個嚴謹的東西
有沒有推挽輸出跟直接驅動數碼管,是沒有絕對關系的
89C52一定是可以不用驅動IC就可以驅動數碼管的,數據端口加上拉電阻就可以了

"一、首先是驅動電流問題"
你分析得一點都沒道理,"也就是說IO口瞬間1ms以內輸出100ma電流是安全的",這誰告訴你的呀,如果我通電時間1.1mS是不是就不安全了,那1.09mS呢?
"MOS管最大瞬間電流至少是額定電流5倍",這是誰告訴你的呀,這是個經驗值,并不是STC單片機的數據手冊,數據手冊上寫了多少,就是多少,沒有寫的,都是你"估計的","認為的",都不能作為參數使用
對于STC89C52,它沒有推挽輸出模式,壓根就不存在輸出電流過大的問題
對于現在新出高亮度的數碼管,STC89C52的10uA電流直接就可以驅動了,不用上拉,也不用推挽輸出,實際使用過的,絕對OK,小個數碼管,我還覺得它太刺眼了呢,LED驅動要10mA電流,這都不知道是多少年前的教材了........

對于新的STC8G,STC8A,STC8H,它們內部都是有內置上拉電阻的,不需要另外加上拉電阻,直接就是12個IO控制一個4位數碼管了,什么都不要,只要把輸出模式設置為傳統8051模式和啟用內部上拉電阻就可以了
回復

使用道具 舉報

12#
ID:491577 發表于 2022-10-8 13:20 | 只看該作者
回復10#,
一、1ms安全就是1ms以內安全,至于超過1ms是否安全我沒說你自己判斷,就如一個產品保質期1年,1年多1天或者多1個月產品就一定會壞嗎?我的理解是1年內保證產品沒有問題,超過1年不管,不論好壞都無所謂。按你的說法單片機IO最大電流20ma,那21ma或者25ma一定會燒管腳嗎?
二、MOS管最大瞬間電流至少是額定電流5倍,這的確是經驗,我不覺得STC單片機的數據手冊能夠把所有數據寫進去。沒有寫的就是錯的?
三、數碼管的亮度夠不夠每個人看法不一樣,應該有部分人也覺得數碼管要亮一點吧,不然為什么開發出高亮數碼管呢?開發板LED限流電阻1K我就覺得不夠亮,你覺得10uA是你的事情,我還是覺得10ma比較好,為什么沒有人生產最大電流1ma的數碼管而是都生產20ma的?
四、“對于新的STC8G,STC8A,STC8H,它們內部都是有內置上拉電阻的,不需要另外加上拉電阻,直接就是12個IO控制一個4位數碼管了,什么都不要,只要把輸出模式設置為傳統8051模式和啟用內部上拉電阻就可以了”-----你還是復習一下數碼管動態掃描知識吧,上拉電阻是需要根據顯示內容不斷打開和關閉的,89C52加上拉電阻是不可以直接驅動4位數碼管的,1位是可以。
回復

使用道具 舉報

13#
ID:401564 發表于 2022-10-8 14:54 | 只看該作者
hhh402 發表于 2022-10-8 13:20
回復10#,
一、1ms安全就是1ms以內安全,至于超過1ms是否安全我沒說你自己判斷,就如一個產品保質期1年,1 ...

"你還是復習一下數碼管動態掃描知識吧,上拉電阻是需要根據顯示內容不斷打開和關閉的,89C52加上拉電阻是不可以直接驅動4位數碼管的"
嗯........好吧!你這個關于上拉電阻的使用方法說得非常好,而且,你這個數碼管使用方法也非常好,簡潔明了,妙不可言
收回我上面所有的話,我給你道歉:我錯了,你說的都是對的,我說的全是錯的,我以前做過的關于數碼管的的項目都是錯誤的.
回復

使用道具 舉報

14#
ID:451718 發表于 2022-10-8 18:43 | 只看該作者
hhh402 發表于 2022-10-8 08:24
加限流電阻更安全,但是1個電阻要至少2分錢,再加2個焊點2分錢,最少需要4個限流電阻0.16元。對于大批量產 ...

100r的排阻,大概2分錢一個,用兩個就夠8個段口限流了。
回復

使用道具 舉報

15#
ID:213173 發表于 2022-10-8 20:56 | 只看該作者
就樓主“單片機驅動4位數碼管最省的方案”而言是可行的。關鍵詞是“最省”。不論是電路最省還是銀子最省,只要硬件條件合適就能成功,不必質疑其可行性。超高亮數碼管單筆段1mA電流就亮得刺眼。曾經用100K限流電阻+超高亮Φ3LED用于5V電源指示燈,亮度足夠。有一些玩具,如熒光棒之類的產品,其本身就幾乎是一次性的。玩過就扔。無需考慮耐久性,降低成本才是王道。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 99在线观看视频 | 国产精品久久久爽爽爽麻豆色哟哟 | 人人干人人干人人 | 日韩在线免费播放 | 国产在线观看一区 | 视频一区在线观看 | 久久久久久免费免费 | tube国产| 欧美一区二区二区 | 日韩高清一区 | 一区二区三区免费观看 | 中文字幕一区二区三区四区五区 | 日韩一区在线视频 | 国产成人福利在线观看 | 亚洲人成在线播放 | 午夜三级网站 | 一本色道精品久久一区二区三区 | 少妇精品亚洲一区二区成人 | 一级在线观看 | jizz18国产 | 国产一区二区在线播放 | 99精品视频在线观看免费播放 | 欧美a在线看 | a欧美| 国产一区二区 | 污片在线免费观看 | 亚洲精品乱码 | 欧美一区成人 | 免费久久久久久 | 成人网在线看 | 精品欧美一区二区三区免费观看 | 国产一级免费视频 | 亚洲日韩中文字幕一区 | 国产欧美精品一区二区色综合朱莉 | 一级二级三级黄色 | 欧美aaaaaaaa| 午夜国产一区 | 天堂一区二区三区 | 婷婷综合久久 | 能免费看的av | 久久久久久久国产 |