arduino教程開關控制數(shù)碼管 如何設計一個單片機可控的循環(huán)流水燈?
如何設計一個單片機可控的循環(huán)流水燈?首先在硬件方面,我們不使用了最比較經(jīng)典的選型用AT89S51單片機以及主控芯片,LED電路選用共陽極接法:8路黃色LED燈正極接5V電源、各路并聯(lián)一個限流管理電阻,
如何設計一個單片機可控的循環(huán)流水燈?
首先在硬件方面,我們不使用了最比較經(jīng)典的選型用AT89S51單片機以及主控芯片,
LED電路選用共陽極接法:8路黃色LED燈正極接5V電源、各路并聯(lián)一個限流管理電阻,完全保護發(fā)光二極管不被電壓過高,同時控制LED工作電流完全控制在10mA以內;參照IU/R,則選用1K大小電阻。陰極三個接到P1.0~P1.7口,排成LED發(fā)光二極管驅動電路
按鍵選用相當于按鍵。最好選擇10K電阻與按鍵并聯(lián),一端接5V,一端接單片機IO口P2.0,如下圖所示:
我們來看一下軟件部分:
簡單的方法中有頭文件,內部函數(shù)51單片機寄存器定義。第二行的sbit是用處定義一個引腳值(即P2.0用KEY來表示);
這是一個顯示延時的調用函數(shù),我們在這個函數(shù)里,定義方法兩個變量,然后我們用兩個for循環(huán),內部的j函數(shù)作為基礎延遲現(xiàn)象單位,傳參tim代表具體看延時時長。
這類延遲現(xiàn)象函數(shù),具體看的延時時間,可以實際延時函數(shù)對IO口接受翻轉,不使用示波器查找翻轉時間周期,就也可以考慮這個顯示延時函數(shù)的虛無飄渺延時時間了。
這部分是鍵盤按鍵一次性處理函數(shù),必須可以檢測如何確定有按鍵按動,采用Delayms連接時間消抖,再等待鍵盤按鍵放開,再對狀態(tài)變量通過快速切換。
上圖所示,在while(1)中,有時候非循環(huán)1ms,則num每加1,num數(shù)目代表ms數(shù)目,
mode1時,led所有的亮
mode2時,led全滅
mode3或是mode4,led數(shù)碼管間隔亮
mode5,mode6led兩種led流水亮滅
按鍵按過,切換有所不同的led燈流水燈效果
以上是對本題目進行的回答,難免有遺漏也可以錯誤,
熱情大家留言,點贊和評論,默默點贊,參與!
謝謝大家
誰問的這個問題,這么大簡單也來問,出去百度~~~
1、閃光二級管可以選擇類型共陰極或則共陽極連接。
2、建議是用驅動方法:查表法。(共陰到共陽轉換單單增減量一個符號:~,并且很方便啊變化流水單的花樣。我做過51,stm32,arduino的)。
3、要是僅僅簡單點“流”一下,那就是可以簡單粗暴直接地用for+delay搞掂。如果沒有要增強一些別的花樣,.例如電位器控制“流速”,那你得然后打開每隔幾小時關閉,分配任務。
怎么從零學習單片機操作?
學習單片機是需要具備什么當然的電路基礎、數(shù)字電路、模擬電路、信號系統(tǒng)、C語言編程等相關的基礎知識。單片機的學習和硬件設計和編程設計,早期單片機用匯編編程的人比較好多,現(xiàn)在越來越多的人用C語言參與編程。下面和大家多多分享幫一下忙如何能迅速最有效的學習單片機。
1從51單片機又開始學習編程很多人我建議你也可以然后從STM32、ARV、MSP430等單片機結束,在做產品的時候大家是可以根據(jù)具體一點需求中,選擇這類單片機。只不過從零基礎入門的角度決定,我肯定見意單片機從51單片機開始。只不過51系列單片機再次進入最早、使用參與人員眾多、資料相對多,最最關鍵的寄存器配置比較比較很簡單。
有了數(shù)模電基礎、C語言基礎后,就可以不買一大塊51單片機學習語言編程了。在自學編程的時候要有順序,先從操作單片機的GPIO口又開始,再自學定時器、中斷、AD樣本采集、PWM輸出來,后來再學習UART、IIC、SPI等通訊,在上述事項步驟之后,對單片機就有了都差不多的認識。
2學習硬件的設計單片機編程是實現(xiàn)硬件基礎之上的,打聽一下了編程之后,我來自學下單片機硬件的設計。目前的電子產品,基本上都是以單片機為核心,再依據(jù)不上的需求,不斷單片機搭建中不通的外設電路。在設計電路時,現(xiàn)在就要考慮到好方案是不是我利于編程。硬件的學習,也要從基本的電路又開始,如LED燈電路的設計、繼電器電路的設計、蜂鳴器電路的設計、數(shù)碼管電路的設計、RS232/RS485電路的設計等,雖說也是的的的模塊,但可以不通過編程先聯(lián)系到一起,這又是先學編程后怎么學習設計電路的原因。
3自學做項目學單片機是目的是做產品。在學習階段可能還沒有參加項目的機會。是可以依據(jù)什么自己的想法去提純一些需求,終于怎么設計電路、寫程序去實現(xiàn)程序。的或自己試著去實現(xiàn)程序一大塊單片機開發(fā)板,學習單片機的過程是要要錢的。如果不是身邊有參加項目的機會,你必須把握。在項目中理論知識自己的所學,在項目中向外擴展自己的知識面。
以上那就是這個問題的回答,感激留言、評論、轉發(fā)消息。更多電子設計、硬件設計、單片機等內容請了解本頭條號:玩到飛起嵌入式。感激大家。