很多初學(xué)者都覺得自己學(xué)的東西很基礎(chǔ),擔(dān)心今后實際工作用不到。于是,有初學(xué)者提出這樣的問題:單片機真正開發(fā)產(chǎn)品和學(xué)習(xí)的時候有什么差別?平時學(xué)的LED、ADC這些東西,在實際項目中會用到嗎?
雖然技術(shù)更新迭代很快,但有很多基本的技術(shù),仍然在實際項目中會用到,今天就拿LED為例來說說吧。
1、身邊的LED?
別小看LED,它在實際生活中應(yīng)用很廣泛的。
首先就是以LED為光源的項目,比如呼吸燈、廣告燈、LED顯示屏等,這類控制LED亮滅(閃爍),或者亮度漸變。在或者現(xiàn)在的照明用的光源,基本都是LED燈光源,要完成一個無頻閃的光源,還是沒想象的那么容易的。
其次是LED背光燈,像液晶背光燈、按鍵背光燈等,這種也是需要控制LED變化的。我之前做過有按鍵的項目,按鍵背光燈需要漸變、配合音效控制LED不同頻率閃爍,目的就是為了達到更好的體驗效果。
再次是LED作為指示燈,電源指示燈、狀態(tài)指示燈,這種狀態(tài)下的LED燈就接近初學(xué)者的學(xué)習(xí)時的LED燈,但這種卻在項目中很常見。
拿狀態(tài)指示燈來說,一個項目的LED狀態(tài)指示燈可以直觀明了的指示設(shè)備的運行狀態(tài),比如:運行、故障、待機、死機等常見狀態(tài)。通過RGB,或者紅黃綠不同顏色LED組合,可以實現(xiàn)更多狀態(tài)的指示。
下面針對LED狀態(tài)燈,說幾點細節(jié)的內(nèi)容。
2、LED狀態(tài)燈的實現(xiàn)?
這里結(jié)合代碼為大家分享一些項目中常見的LED狀態(tài)燈的實現(xiàn)方法。
單色LED運行狀態(tài)指示燈:
通過閃爍(一亮一滅)指示設(shè)備運行的狀態(tài)的指示燈,一個關(guān)鍵作用:設(shè)備有沒有死機。還可以通過閃爍的快慢指示一些特殊的狀態(tài),比如藍牙在搜索連接狀態(tài)下為快閃,在已連接狀態(tài)為慢閃,等等的情況。
很多產(chǎn)品中都會用到,你買一個開發(fā)板,提供的綜合例程也基本都有。在某一個狀態(tài)實現(xiàn)LED閃爍:

3、LED漸變?
LED漸變在生活中其實也有一些場景在用,呼吸燈、鍵盤等,其實原來也很簡單,就是控制LED亮度。
控制方法有很多,電壓、PWM都能達到控制LED亮度的效果。當(dāng)然,現(xiàn)在還有控制LED漸變的專有芯片。在專門的漸變燈具,或者具有亮度調(diào)節(jié)功能的燈具中通常會有專門的亮度控制芯片。
但是,對于單片機項目來說,單片機自身就能實現(xiàn),如果單獨用一個芯片,就顯得有點多余。目前常見的單片機都是具有PWM功能的,通過PWM控制IO高低電平(從而控制電壓),這種對于單片機來說有兩種方法,即定時器硬件PWM、控制GPIO口高低電平。
a. 定時器硬件PWM:一個定時器輸出PWM波形的同時,還需要一個定時器定時更新PWM輸出占空比(修改亮度)。
b. 控制GPIO口高低電平:這個方法就比較簡單,控制IO口高低電平時間,只是這個時間需要結(jié)合整個項目業(yè)務(wù)邏輯,不能出現(xiàn)“卡機”情況。
4、LED的變種
前面所說的LED的,在更多的時候都是一個或幾個,少量的LED的使用,這樣的設(shè)計確實簡單了很多。會了簡單的少量的LED的運用,那在增加大量LED燈數(shù)量的情況下呢?其實原理都是一樣的,相信大家都能完成。下面就說幾個大量LED的使用場景。
相信很多小伙伴都知道,數(shù)碼管其內(nèi)部也還是LED燈,只是多個LED組合而成一位或多位的數(shù)碼管。常見的數(shù)碼管有七段的或者八段的,其實就是七個或者八個LED組合排列成一個數(shù)碼管,根據(jù)不同的鏈接方式,還分為共陽和共陰兩種。
說完數(shù)碼管,還有一個大家常見的電子元件是LED點陣,其內(nèi)部也是由多個LED組成,一塊8x8的LED點陣內(nèi)部由64個LED,通過八行八列的方式排列而成。
還有很多小伙伴都做過的光立方,比如8x8x8的光立方是由8行8列再加上8層組成的一個立方體,一共需要64x8=512個LED組成。
以上說的這些,其實質(zhì)都是LED,當(dāng)你會了點一個燈,自然會了點8個燈,慢慢自然會了以上說的這些高級別的點燈。所以不要總覺得點燈簡單,也不要總覺得點燈就很low,真要把燈點好了,那也是需要技術(shù)的。
5、最后?
以上的控制LED的狀態(tài),其實是一個項目中很小的一個模塊,還有更復(fù)雜的LED實現(xiàn)和控制方法,相信小伙伴的想法會更具有創(chuàng)意。
當(dāng)然,LED在項目中是微不足道的一個模塊,但是,如果針對某個人設(shè)計一塊LED的產(chǎn)品,那就意義非凡了,也可以把點燈技術(shù)提升到一個更高的檔次。

?
上面這種,相信很多暖(直)男都做過,就是不知道,最終那個女孩子感動了沒有?如果感動了,那這個LED項目就是一生中非常重要的項目,其他都是扯淡。什么高級,什么酷炫都是浮云,唯有那個女孩收到禮物后一笑。
·END·
審核編輯:劉清
電子發(fā)燒友App







評論