標(biāo)題: 求大神一個復(fù)雜的程序 [打印本頁]

作者: 學(xué)徒工--靜    時間: 2018-6-22 20:56
標(biāo)題: 求大神一個復(fù)雜的程序
用STC15F104W的6個IO口控制9個LED燈        3行3列
                                           1             2             3
                                           4             5             6
                                           7             8             9

   每次點(diǎn)亮3個,例如:147       258        369       158     148    269     259   159    186等等,請大神慷慨賜教   謝謝!謝謝!謝謝!

作者: zl2168    時間: 2018-6-23 08:06
不能稱復(fù)雜,只是一個很簡單的程序。
作者: errree    時間: 2018-6-23 10:01
參考單片機(jī)教程
作者: angmall    時間: 2018-6-23 10:50
按照如下輸出就可以分別點(diǎn)亮每一盞燈:
LY0 LY1 LX2
0         1         0         LX0
0         1         1         LX1
1         0         0         LX2
你的單片機(jī)端口有強(qiáng)的推挽輸出能力,
圖給LED矩陣的點(diǎn)亮還是比較容易的:
1、按圖給電路,每個LED的坐標(biāo)為(LX(i),LY(j)),LX(i)為高電平,LY(j)為低電平時,交點(diǎn)(i,j)上的LED被點(diǎn)亮,所以……………………
2、例子:要點(diǎn)亮D6,需要LX2接高電平,LY1接地即可
3、理解以上兩點(diǎn),程序控制應(yīng)該不難…………
需要動態(tài)顯示的方法了,就像掃描鍵盤矩陣那樣。一次只點(diǎn)亮一行(如LX0)上面需要電量的燈,下一次點(diǎn)亮下一行(LX1)上面的,這樣一秒重復(fù)至少30次,這樣每個燈看著是持續(xù)點(diǎn)亮的了。

LED_Matrix01.png (13.44 KB, 下載次數(shù): 88)

LED_Matrix01.png

作者: 學(xué)徒工--靜    時間: 2018-6-23 22:38
zl2168 發(fā)表于 2018-6-23 08:06
不能稱復(fù)雜,只是一個很簡單的程序。

謝謝版主  這個簡單嗎?對于您們大神級人物肯定簡單,但對于我來說很復(fù)雜,如果用9個IO口我勉強(qiáng)可以,用6 個IO每次點(diǎn)亮列向3個燈要怎樣弄,請大神們給個例程程序,謝謝,
作者: 學(xué)徒工--靜    時間: 2018-6-23 22:41
angmall 發(fā)表于 2018-6-23 10:50
按照如下輸出就可以分別點(diǎn)亮每一盞燈:
LY0 LY1 LX2
0         1         0         LX0

您好 老師,可不可以給個例程程序   謝謝謝謝
作者: 2279958424@qq    時間: 2018-6-24 14:15
參考單片機(jī)教程
作者: 請指教    時間: 2018-6-24 16:51
加油啊,,,,
作者: Angle145    時間: 2018-6-26 09:24
對你來說確實(shí)難了點(diǎn),涉及到矩陣掃描和動態(tài)顯示
作者: mmssll    時間: 2018-6-26 10:57
你直接操作寄存器不就好了,一步步執(zhí)行唄
作者: 一都的黎明    時間: 2018-6-26 11:29
led,動態(tài)顯示
作者: heathcliff    時間: 2018-6-26 12:12
矩陣鍵盤掃描,就好比一個x軸,一個y軸。你這個分成3*3就能正好控制9個燈。既然想同時多個燈亮,那就利用人眼的暫留效應(yīng)。快速的刷新,也就是通俗的將,一會這個亮一下,一會另一個亮一下。由于速度過快,讓人誤認(rèn)為是同時亮的。
作者: 出來逛逛    時間: 2018-6-26 12:25
先編一個點(diǎn)亮一個固定燈的程序,C語言的話用switch語句把每種情況都列出來,主程序?qū)懭龡l點(diǎn)亮一盞燈的語句循環(huán)就好了,有點(diǎn)麻煩,有思路你可以自己改進(jìn)一下
作者: 學(xué)徒工--靜    時間: 2018-6-26 20:04
出來逛逛 發(fā)表于 2018-6-26 12:25
先編一個點(diǎn)亮一個固定燈的程序,C語言的話用switch語句把每種情況都列出來,主程序?qū)懭龡l點(diǎn)亮一盞燈的語句 ...

謝謝您,我試試看




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1