找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1579|回復: 2
收起左側(cè)

求思路 51單片機用兩個開關(guān)分別控制流水燈和數(shù)碼管

[復制鏈接]
ID:1078227 發(fā)表于 2023-5-26 00:23 來自觸屏版 | 顯示全部樓層 |閱讀模式
由于本論壇禁止直接求程序,禁止伸手黨,所以向大家請教一下大致的實現(xiàn)方法與思路,理清頭緒后我自己來寫程序去實現(xiàn),謝謝大家




51單片機在IO串口   協(xié)議那里     用兩個開關(guān)分別控制流水燈和數(shù)碼管 要求按下開關(guān)先反饋回來其中一個燈亮,亮了之后后邊流水燈(數(shù)碼管)啟動  ,另一個開關(guān)  是另一個燈亮
回復

使用道具 舉報

ID:45879 發(fā)表于 2023-5-26 09:19 | 顯示全部樓層
初始化外設(shè)IO、串口及中斷等

主函數(shù)
按鍵+消抖,亮燈1,串口發(fā)送第一個燈亮;
按鍵+消抖,亮燈2,串口發(fā)送第二個燈亮;






回復

使用道具 舉報

ID:123289 發(fā)表于 2023-5-26 14:34 | 顯示全部樓層
1、將所有【流動】顯示,分切成N個【靜止】的顯示,形成一個N個元素的數(shù)組A(N)。A(N)中的每個成員,都是一個【靜止】的顯示狀態(tài)。如某個成員=1000001,表示七個LED燈的首尾是亮的。
2、以X為參數(shù),編寫一個顯示程序XS(X),顯示A(N)的【靜止】狀態(tài),X指向A(N)的的成員。也即X=什么,七個LED的顯示組合變是什么。
3、用定時器做個時間隔為T的中斷,每次中斷執(zhí)行一次XS(X),X如果取值,就決定了你顯示的方式(倒、順、混、旋……),你想如何組合就如何組合,只要事先對X的序列設(shè)計一下即可,這可序列,也可以做成一個數(shù)組,例如:順跑S(i)、逆行N(i)。如此,每間隔時間T,七個LED就更換一個顯示狀態(tài)。
4、現(xiàn)在可以談論按鍵1、2了。例如按了鍵1,就運行S(i),則順跑;例如按了鍵2,就運行N(i),則逆行。
道理一樣,自己仔細想想,是否非常機動?
想如何顯示,修改幾個數(shù)組的值即可。且可以花樣百出、隨心所欲。
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表