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

標(biāo)題: 查理復(fù)用控制十二個(gè)燈 [打印本頁]

作者: 富士山下    時(shí)間: 2024-9-9 16:23
標(biāo)題: 查理復(fù)用控制十二個(gè)燈
四個(gè)引腳控制十二個(gè)燈,每次亮四顆燈(1234、2345、3456……)程序和思路怎么實(shí)現(xiàn)....

作者: 富士山下    時(shí)間: 2024-9-9 16:25
跑馬燈每次亮四顆,大神們應(yīng)該怎么實(shí)現(xiàn)
作者: 樂于助人    時(shí)間: 2024-9-10 11:52
一個(gè)燈一個(gè)燈亮,分12次。
作者: 飛云居士    時(shí)間: 2024-9-10 14:30
硬件部分:
假設(shè)4個(gè)控制引腳分別連接到單片機(jī)的P0.0~P0.3。
12個(gè)燈分別連接到外部電路,通過控制引腳的高低電平來點(diǎn)亮或熄滅。
軟件部分:
循環(huán)控制: 采用循環(huán)語句實(shí)現(xiàn)燈的順序點(diǎn)亮。
數(shù)據(jù)表示: 使用一個(gè)12位的二進(jìn)制數(shù)來表示12個(gè)燈的狀態(tài),每一位對(duì)應(yīng)一個(gè)燈。
移位操作: 通過移位操作來實(shí)現(xiàn)燈的順序變化。
輸出控制: 將表示燈狀態(tài)的二進(jìn)制數(shù)輸出到P0口。
C51代碼實(shí)現(xiàn)
C
#include <reg51.h>

unsigned char led_data[] = {0x0F, 0x3C, 0x78, 0xF0, 0xC3, 0x8F};  // 存儲(chǔ)燈的順序狀態(tài)

void delay(unsigned int t) {
    while(t--);
}

void main() {
    unsigned char i;

    while(1) {
        for(i = 0; i < 6; i++) {
            P0 = led_data[i];  // 輸出到P0口
            delay(5000);     // 延時(shí)500ms
        }
    }
}
請(qǐng)謹(jǐn)慎使用代碼。
代碼解釋
led_data數(shù)組:
存儲(chǔ)了6種燈的點(diǎn)亮狀態(tài),每種狀態(tài)對(duì)應(yīng)4個(gè)燈亮。
比如0x0F表示二進(jìn)制的1111,即前4個(gè)燈亮。
delay函數(shù):
用于產(chǎn)生延時(shí),控制燈亮的時(shí)長。
main函數(shù):
無限循環(huán),不斷重復(fù)點(diǎn)亮燈的順序。
外層循環(huán)遍歷led_data數(shù)組,每次取出一個(gè)狀態(tài)。
內(nèi)層循環(huán)產(chǎn)生延時(shí),控制每個(gè)狀態(tài)的保持時(shí)間。
作者: 濤qq623942603    時(shí)間: 2024-9-10 14:34
定時(shí)掃描就好了
作者: Graves    時(shí)間: 2024-9-10 15:14
看圖就懂了,就是反復(fù)配高阻態(tài)和高低電平,最容易理解就是搞12個(gè)判斷來亮燈。首先需要單片機(jī)支持IO高阻態(tài)

Snipaste_2024-09-10_15-05-46.png (93.97 KB, 下載次數(shù): 9)

Snipaste_2024-09-10_15-05-46.png

作者: 黃youhui    時(shí)間: 2024-9-10 16:02
如果我是你,我會(huì)直接用74HC595  138 之類的IC
作者: donglw    時(shí)間: 2024-9-10 16:04
只需使用三個(gè)引腳即可,為何使用四個(gè)引腳?使用本站銷售的實(shí)驗(yàn)板即可實(shí)現(xiàn),并含有所需的程序!
作者: wd1988    時(shí)間: 2024-9-10 16:11
和掃描矩陣按鍵一樣?3 SEG和 1 CON  分時(shí)間開關(guān)3組?
作者: 06123    時(shí)間: 2024-9-10 18:40
還有一個(gè)思路:用WS2812燈珠或燈帶
作者: lyxing    時(shí)間: 2024-9-10 20:51
發(fā)表于 2024-9-10 15:14
看圖就懂了,就是反復(fù)配高阻態(tài)和高低電平,最容易理解就是搞12個(gè)判斷來亮燈。首先需要單片機(jī)支持IO高阻態(tài)

正解!四口復(fù)用,逐點(diǎn)掃描。端口用得少,編程麻煩點(diǎn)。
作者: coody_sz    時(shí)間: 2024-9-11 12:04
驅(qū)動(dòng)原理(共陰):
任意一個(gè)IO輸出低(COM),另外3個(gè)IO顯示的輸出高,不顯示的高阻,驅(qū)動(dòng)3個(gè)燈。
同理,一共12個(gè)燈。
移動(dòng)電源、無線話筒、小家電等等用的數(shù)碼管好多都是這樣的,比如9腳的可以驅(qū)動(dòng)9個(gè)數(shù)碼管或72個(gè)LED。
N個(gè)IO可以驅(qū)動(dòng)N*(N-1)個(gè)LED。
作者: fj51hei    時(shí)間: 2024-9-11 16:30
黃youhui 發(fā)表于 2024-9-10 16:02
如果我是你,我會(huì)直接用74HC595  138 之類的IC

確實(shí),搞一次生不如死
作者: hcfat51h    時(shí)間: 2024-9-12 09:28

單片機(jī)要能設(shè)IO為高阻,如陣列所示,控制要亮燈的LED兩端的IO,其它的IO設(shè)為高阻,然后依次掃描就可以了

作者: npn    時(shí)間: 2024-9-12 15:29
黃youhui 發(fā)表于 2024-9-10 16:02
如果我是你,我會(huì)直接用74HC595  138 之類的IC

這幾個(gè)型號(hào)不能直接驅(qū)動(dòng),還要加74HC125或74HC126
作者: 188610329    時(shí)間: 2024-9-13 17:56
qq475878026 發(fā)表于 2024-9-10 15:14
看圖就懂了,就是反復(fù)配高阻態(tài)和高低電平,最容易理解就是搞12個(gè)判斷來亮燈。首先需要單片機(jī)支持IO高阻態(tài)

你這是偷懶的接法, 你這樣接, 只能一次點(diǎn)一個(gè)燈, 12次點(diǎn)燈完成一個(gè)循環(huán),不然會(huì)亮度不一致,
但是,如果把電阻都接在 LED正極,或者都接在 LED負(fù)極,就能1次點(diǎn)三個(gè)燈,4次點(diǎn)燈完成一個(gè)循環(huán)。
作者: Graves    時(shí)間: 2024-9-14 16:17
188610329 發(fā)表于 2024-9-13 17:56
你這是偷懶的接法, 你這樣接, 只能一次點(diǎn)一個(gè)燈, 12次點(diǎn)燈完成一個(gè)循環(huán),不然會(huì)亮度不一致,
但是,如果 ...

假如三個(gè)LED同時(shí)亮功率也是個(gè)問題吧?還得加驅(qū)動(dòng)電路?
作者: 非凡科技    時(shí)間: 2024-9-14 18:38
基本思路,把每個(gè)燈點(diǎn)亮熄滅做成函數(shù),然后放在1毫秒定時(shí)器中




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: av中文网 | 日韩午夜网站 | 亚洲在线 | 亚洲欧美日韩网站 | 成人一区二 | 欧美成人猛片aaaaaaa | 午夜私人影院在线观看 | 久久久久久国产精品免费免费狐狸 | 在线视频成人 | 亚洲精品在线视频 | wwwxxx日本在线观看 | www.精品国产 | 久久精品综合 | 91tv在线观看 | 久久国产一区二区三区 | 国产电影精品久久 | 久久久久亚洲av毛片大全 | 免费亚洲成人 | 日韩精品四区 | 91久久久久| 黄色一级毛片 | 色噜噜色综合 | 爱爱免费视频网站 | 日日夜夜天天久久 | 中文字幕第7页 | 亚洲91精品 | 日日夜夜影院 | 午夜视频在线播放 | 激情91| 国产999精品久久久影片官网 | 日韩一区二区三区四区五区 | 国产二区精品视频 | 国产乱码精品一区二区三区五月婷 | 亚洲一区 中文字幕 | 久久av一区二区三区 | 蜜臀久久99精品久久久久久宅男 | 很很干很很日 | 99久久免费精品视频 | 夜夜操天天干 | 国产一区 | 亚洲高清中文字幕 |