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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1516|回復: 17
收起左側

一個51單片機如何控制16個LED和16個數碼管?

  [復制鏈接]
ID:1143173 發表于 2025-1-18 13:56 | 顯示全部樓層 |閱讀模式
謝謝大家
回復

使用道具 舉報

ID:858964 發表于 2025-1-18 15:09 | 顯示全部樓層
用8255,擴展I/O口,參考圖中電路: 15-6-22-8255電路圖.jpg

回復

使用道具 舉報

ID:1143113 發表于 2025-1-18 15:36 | 顯示全部樓層
首先,STC/AT89C51正好4*8=32個I/O,如果不加擴展芯片可以16個I/O,只剩下16個I/O要控制16個數碼管,則需要用擴展芯片,比如譯碼器或串并轉換芯片。如果數碼管的位選用3/8譯碼器74LS138控制,則需要兩片,6個I/O進行兩組3-8譯碼分別控制16個LED的使能,外加兩個I/O控制兩片74138的使能,這樣16個數碼管的位選就需要8個I/O,最后剩下8個I/O控制數碼管的8個段碼。當然,擴展I/O的方法還有很多,此處不展開說。
回復

使用道具 舉報

ID:1109793 發表于 2025-1-18 15:46 | 顯示全部樓層
TM1640驅動數碼管,如果不用小數點,把小數點連接到發光管上面就可以了。否則數碼管另外弄,或者兩個1638,發光管接多出的段碼上。
回復

使用道具 舉報

ID:879348 發表于 2025-1-18 16:05 | 顯示全部樓層
用掃描控制,這是學習單片機基礎課程,一般是做時鐘之類的會學到
回復

使用道具 舉報

ID:69038 發表于 2025-1-18 16:18 | 顯示全部樓層
老51就要考慮擴展IO,或復用。新的增強型51,比如某C的51,64腳的最多有60個IO,夠你折騰的了。
按你的需求,掃描模式,16+8+2=26,想必32腳的MCU就夠你用了。也不必擴展IO口。
回復

使用道具 舉報

ID:807591 發表于 2025-1-18 17:02 | 顯示全部樓層
這個不需要輸入,只是輸出,用595可能最便宜,甚至不妨再來一片單片機,畢竟可能只要2塊錢 多出60+IO
回復

使用道具 舉報

ID:1133081 發表于 2025-1-18 17:17 | 顯示全部樓層
所選芯片IO口足夠沒有任何問題,IO口不夠16個數碼管用TM1640,只要2個IO口,16個LED查理復用只要5個IO口(最多驅動20個LED)。就是編程麻煩點。
回復

使用道具 舉報

ID:1129662 發表于 2025-1-18 22:30 | 顯示全部樓層
用sm16306,直接全部驅動led,數碼管都省掉了
回復

使用道具 舉報

ID:332444 發表于 2025-1-19 08:24 | 顯示全部樓層
使用鎖存器芯片或595
回復

使用道具 舉報

ID:1110945 發表于 2025-1-19 09:55 | 顯示全部樓層
這么多的二極管和數碼管,因為電流太大,不可以IO口直接驅動,
可以用專用驅動芯片,也可以用74HC164或595驅動。
一片164或595有8個輸出口,硬件上可以分成4+4,軟件上可以做到
4x4=16的效果,就是說一片就可對付16個LED燈。16個數碼管總計
有16個位碼線,8個段碼(每個都有的abcdefgh),理論上三片就可以
驅動16個數碼管,考慮驅動速度可能沒有那么快(以消除人眼可見的
閃爍),兩片就能很好的驅動8個數碼管。
五片164可以串接起來,單片機只要兩個(595要三個)IO口就可以完美
控制16個LED和16個數碼管了。
回復

使用道具 舉報

ID:161164 發表于 2025-1-19 22:29 | 顯示全部樓層
GIF_250119_222839.gif
回復

使用道具 舉報

ID:92781 發表于 2025-1-20 09:19 | 顯示全部樓層
用tm1640芯片試試,簡單易用,直接控制的數碼管太多,處理程序時候會亮度低或者閃爍。
回復

使用道具 舉報

ID:584814 發表于 2025-1-20 11:41 | 顯示全部樓層
通常的I/O口不夠,擴展就可以,用專用驅動芯片也是一種擴展。
回復

使用道具 舉報

ID:57657 發表于 2025-1-21 22:57 | 顯示全部樓層
16位數碼管(帶小數點)1位有8個段碼LED,再加上16個LED=16*8+16=144個LED 144的平方根=12,把它看成12*12的點陣,行列各12個總共24個IO口就可以驅動。
回復

使用道具 舉報

ID:1143454 發表于 2025-1-31 14:57 | 顯示全部樓層
可以通過連接一個三位的編碼器來控制
回復

使用道具 舉報

ID:137736 發表于 2025-2-1 14:14 | 顯示全部樓層
用595,164等器件擴展端口。盡量不要再用8255等太老的器件。
回復

使用道具 舉報

ID:1073399 發表于 2025-2-6 19:27 | 顯示全部樓層
1. 確定單片機型號和資源:
   檢查51單片機的具體型號,確認其I/O端口數量及是否支持內部驅動器。
   假設單片機具有24個I/O端口,并且每個I/O可以控制一個外設。

2. 配置外設接線:
   將16個LED連接到16個不同的I/O輸出端口,確保每個端口能夠驅動至少5mA的電流。
   將16個數碼管的相應輸入線(如G、D、C)連接到剩余的I/O端口上。

3. 編寫軟件代碼:
   使用Keil C編譯器創建項目,設置定時器中斷,每個外設對應一個中斷。
   為每個外設定義中斷服務例程,控制其亮度和閃爍時間。

4. 實現定時器驅動:
   在主循環中初始化定時器,并注冊中斷處理程序。
   設置每個外設的閃爍周期和間隔,使用不同的定時器值避免沖突。

5. 測試系統:
   通過控制臺輸出查看LED和數碼管是否正常工作。
   檢查各個外設的亮度和閃爍頻率,確保沒有異常或干擾。

6. 優化代碼:
   如有必要,將中斷服務例程簡化,避免冗余操作。
   確保每個外設能夠獨立工作,并且系統運行流暢。

7. 部署并驗證:
   將電路組裝完畢,連接電源并測試整個系統。
   檢查是否有錯誤信息或異常情況出現,及時修正問題。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 91.xxx.高清在线 | 国产伦精品一区二区三区精品视频 | 成人免费观看男女羞羞视频 | 亚洲欧美综合精品久久成人 | 久久久久久成人 | 国产wwwcom | 日韩精品久久一区二区三区 | 久久精品视频免费看 | www.久久| 一区二区三区免费 | 久久精品国产精品青草 | 午夜激情影院 | 成人夜晚看av | 中文字幕精品视频 | 黄色大片免费观看 | 国产高清在线视频 | 欧美亚洲激情 | 欧美一级在线免费观看 | 亚洲精品久久久 | 亚洲一区二区精品视频 | 国产精品69毛片高清亚洲 | 欧产日产国产精品视频 | 久久精品国产一区二区三区 | 99资源站 | 97在线观视频免费观看 | 91精品久久久久久久久久 | 亚洲欧美日韩国产综合 | 午夜久久久久久久久久一区二区 | 综合色久 | 欧美综合视频在线 | 国产日韩欧美在线观看 | 久久久精品影院 | 日韩a视频| 国产精品69毛片高清亚洲 | 色av一区| 黄在线| 激情欧美日韩一区二区 | 中国一级特黄真人毛片 | 99精品观看| 欧美中文字幕一区二区三区 | 涩涩视频在线观看 |