微控制器模組學習之LED

2021-09-14 00:51:44 字數 1463 閱讀 7028

點led就是高低電平的控制,整理一些用的到的知識吧

一些開發板上可能會把led連到鎖存器上,導致我們可能一開始就一臉蒙蔽,整理

一些鎖存器

數電裡學的38解碼器

簡單來說就是三個輸入,8個輸出

這種暫存器的好處就是節省i/o口

真值表可以看出用法

這是個驅動器

輸出端可達500ma/50v.

需要注意它的輸入和輸出是反相的

q0~q7: 並行資料資料輸出端;

gnd: 接地引腳;

q7s: 序列資料輸出(多晶元級聯時使用);

mr: 復位引腳,當引腳接低電平時晶元內部資料儲存暫存器資料清零復位.如不使用一般接高電平;

shcp: 移位暫存器的時鐘輸入,當接收到上公升沿時移位暫存器內部資料整體後移;

stcp: 資料儲存暫存器時鐘輸入,當檢測到上公升沿時使能資料儲存暫存器,將晶元接收到的資料輸出到q0~q7 ,q7s引腳.可以將其理解為鎖存訊號,當資料傳送給晶元完成後對該引腳傳送上公升沿;

oe: 輸出使能引腳,為高電平時晶元輸出引腳為高組態,當為低電平時晶元輸出引腳為高(低)電平.該引腳可用於同時控制並行輸出引腳的電平,如控制led閃爍等.當不使用該功能時通常接低電平;

ds: 序列資料輸入端

時序圖

驅動程式

sbit shcp=p  ;//定義移位引腳

sbit ds=p ;//定義資料引腳

sbit stcp=p ;//定義輸出引腳

void sendbyte_595(u8 dat)

stcp=0;

_nop_();

_nop_();

stcp=1;//上公升沿輸出

}

還有乙個關於移位的知識點

crol_和_cror,>>和<<

最常用的是《和》,但是他們一旦移到最邊緣比如0x80<<1就會變成0x00,這在流水燈裡是要做個判斷然後重新賦值,但是_crol_和_cror_可以完美解決這個問題,標頭檔案是intrins.h

微控制器 LED實驗

實 驗 報 告第頁 專業 軟體工程 班級 4 學號 123012005158 實驗日期 2007年11 月27 告退發 訂正 重做 課程微控制器程式設計 實驗名稱 led實驗 一 實驗目的 掌握 led工作原理和使用方法 二 實驗環境 pc,kc,51 板三 實驗內容 步驟和結果分析 編寫時鐘程式,...

微控制器LED燈

include void delay unsigned char i 使用迴圈語句,實現延時 void delay unsigned int i 延時函式,i最大取值65535 最大延時0.65535s void fun1 void 全部亮 void fun2 void 全部滅掉 void fun3...

微控制器模組化二 LED思考

實在是不好意思各位,我看了下,這個系統從第一篇到這一篇,快兩年時間了,反正 我也不指望這個系列能寫完,各位看客沒有指望這個系列去入門,我就隨心所欲的寫,你們就隨心所欲的看,喜歡就留個言交流下,不喜歡就飛過吧。按鍵我已經把它作為乙個功能模組,用到我的專案當中了,很是方便,最近我又遇 重寫led邏輯的 ...