單片機的LED輪廓顯示控制器設(shè)計原理
其中最小系統(tǒng)采用STC12C5608單片機。電源輸入部分允許交流或直流9~36 V輸入,通過DB107交流橋與LM2575高性能穩(wěn)壓芯片保證系統(tǒng)5 V供電。LED動態(tài)顯示部分采用4個8位LED數(shù)碼管,顯示控制速度00-15,顯示輸出模式00-99.485輸出部分采用3個瞬態(tài)抑制二級提高485芯片實際使用壽命。
主控制器包括STC單片機最小系統(tǒng),交流信號輸入部分,485收發(fā)模塊部分,輸出電路4部分集成。主控制器電器原理圖如圖3所示。
圖3 從控制器電氣原理圖
從系統(tǒng)結(jié)構(gòu)圖1中可知,485總線網(wǎng)絡(luò)采用星形結(jié)構(gòu),一個主機和若干臺從機,主機只發(fā)送數(shù)據(jù),從機只接收數(shù)據(jù),屬于單功方式。實際應(yīng)用時,當(dāng)主控制器距現(xiàn)場較遠(yuǎn)時,為了省通信接線,并簡化連接結(jié)構(gòu)。將星形連接結(jié)構(gòu)變成如圖4所示連接方式。
圖4 主從式實際通信連接方案示意圖
因此從控制器的485收發(fā)模塊包括一個接收模塊和一個發(fā)送模塊。從圖3中可以看出接收部分得到信號未進(jìn)入單片機就直接通過發(fā)送模塊送出。既完成了控制要求,又簡化了連接方式。
3 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件設(shè)計包括上位機軟件的設(shè)計、下位機程序設(shè)計兩部分。上位機軟件完成LED輪廓控制效果編輯與轉(zhuǎn)換,然后直接修改下位機程序的BIN文件。下位機程序程序效果數(shù)據(jù)解釋并執(zhí)行。
3.1 輪廓色帶數(shù)據(jù)設(shè)計
由于單片機內(nèi)部程序空間有限,數(shù)據(jù)處理能力有限,所以需要用簡潔的數(shù)據(jù)模型表示LED變換效果。因此本文設(shè)計了一種色帶數(shù)據(jù)格式和特效數(shù)據(jù)格式。具體內(nèi)容如表1所示。
表1 色帶數(shù)據(jù)格式說明
從表1可知一個色帶由7字節(jié)數(shù)據(jù)組成,表示一個最小漸變過程,如表1示例數(shù)據(jù)即表示從紅色經(jīng)過31級漸變變換成綠色。將所有上位機設(shè)計的變換效果需要的漸變過程按順序生成一個數(shù)據(jù)。每一個特效數(shù)據(jù)由N個最小漸變色帶數(shù)據(jù)組成,因此表示一個特效時只需指明包含的色帶數(shù)和各個色帶數(shù)據(jù)序號即可。這樣便于基本色帶的重復(fù)使用,節(jié)省了有限的程序存儲空間,實現(xiàn)了控制要求。
3.2 主控制器軟件設(shè)計
主控制器程序按循環(huán)掃描方式工作。在程序初始化后,進(jìn)行按鍵掃描工作。按鍵事件有5個,分別是速度加、速度減、模式加、模式減和復(fù)位。LED顯示屏的刷新率一般為15幀/秒,根據(jù)不同速度設(shè)置不同的刷新率,輪廓控制中每幀只更新一組數(shù)據(jù),數(shù)據(jù)傳輸量較小,所以當(dāng)?shù)竭_(dá)設(shè)定時間后才發(fā)送相應(yīng)的顯示數(shù)據(jù)。每個掃描周期最后更新4位LED中的一位,然后修改位地址為下一個掃描周期做準(zhǔn)備。具體的程序流程圖如圖5所示。
圖5 主控制器工作流程圖
評論