何奕飛
單片機(jī)是一門技術(shù)性和實(shí)踐性很強(qiáng)的專業(yè)課程,必須通過一系列軟硬件實(shí)驗(yàn)理論聯(lián)系實(shí)際才能學(xué)懂學(xué)好。它對學(xué)生的應(yīng)用能力和自學(xué)能力有著較高的要求?,F(xiàn)在職業(yè)學(xué)校的教學(xué)中主要以“51系列”8位單片機(jī)為基礎(chǔ)展開教學(xué)。
單片機(jī)應(yīng)用及技術(shù)開發(fā)階段,教師給出設(shè)計(jì)要求,由學(xué)生自行設(shè)計(jì)、安裝電路,并編寫程序。主要是針對學(xué)生技師階段的學(xué)習(xí),在有些職業(yè)學(xué)校還未開展。下面筆者以《點(diǎn)陣式漢字顯示的制作》這一課題為例,講述一下學(xué)生在技師階段單片機(jī)學(xué)習(xí)中所應(yīng)具備的知識(shí)和能力。
一、課題內(nèi)容
設(shè)計(jì)一漢字顯示器,要求能在16*16點(diǎn)陣LED顯示塊上顯示一漢字(且有四種顯示方式),顯示塊用4個(gè)8*8LED數(shù)碼顯示器顯示。
二、課題分析
1.本課題所選用的CPU為AT89C51
AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能CMOS 8位微處理器。
2.本課題選用的LED點(diǎn)陣為共陽極TBA22088H,采用動(dòng)態(tài)掃描方式顯示
基本連接方式如下:
16*16點(diǎn)陣顯示器顯示1個(gè)漢字,一行有16列,共有16行,需要用8*8的點(diǎn)陣顯示器4塊74LS373驅(qū)動(dòng)器2塊,單片機(jī)用P1口,P3.0~P3.3口,P2.4~P2.7口控制行驅(qū)動(dòng),每根線控制一行,故每次傳送一行(2個(gè)數(shù)據(jù))。
LED顯示器的漢字顯示器是由單片機(jī)從存儲(chǔ)器中預(yù)先存儲(chǔ)的“字形庫”中取出相應(yīng)的數(shù)據(jù)來顯示漢字,每次選取一行,用P1口,P3.0~P3.3口,P2.4~P2.7口控制三極管9012的飽和與截止來控制顯示器,提供行驅(qū)動(dòng)電源,當(dāng)輸出高電壓時(shí)就點(diǎn)亮了矩陣顯示上的一行。當(dāng)選通某一行時(shí),并對這一行中需要發(fā)光的二極管進(jìn)行激勵(lì),然后對下一行繼續(xù)進(jìn)行上述步驟,當(dāng)按一定的次序?qū)λ行卸歼M(jìn)行掃描以后,可顯示出一幅圖畫,只要圖畫刷新的周期小于人眼視覺殘留時(shí)間,則就能形成一幅穩(wěn)定不閃爍的圖畫。
3.本課題電源的控制如圖1方式連接
4.本課題采用上電自動(dòng)復(fù)位方式,用12MHZ的晶振
如圖2。
5.本課題采用定時(shí)0工作方式1
工作方式1是16位計(jì)數(shù)結(jié)構(gòu)的工作方式,計(jì)數(shù)器由TH0全部8位和TL0全部8位構(gòu)成,工作方式的特點(diǎn)是計(jì)數(shù)溢出后,計(jì)數(shù)器全為0,故循環(huán)定時(shí)或計(jì)數(shù)時(shí)就存在反復(fù)設(shè)置計(jì)數(shù)初置問題。而本課題無需要循環(huán),故選擇工作方式1。工作方式1定時(shí)時(shí)間為:(216-計(jì)數(shù)初值)*晶振周期*12,本課題定時(shí)2ms, (一行顯示時(shí)間),則計(jì)數(shù)初值為:(216-X)*1ms=2ms X=63536DX=F920H
6.本課題采用四種顯示方式控制
整個(gè)字往下移式、整個(gè)字一行一行從下往上移式、整個(gè)字一行一行從上往下移式、整體展開式。
三、流程圖設(shè)計(jì)
課題設(shè)計(jì)采用4種顯示方式依次輪流顯示。顯示以子程序方式編寫,通過主程序調(diào)用實(shí)現(xiàn)。
點(diǎn)陣式漢字顯示的制作涉及了單片機(jī)的邏輯結(jié)構(gòu)、內(nèi)部存儲(chǔ)器、時(shí)鐘電路、復(fù)位電路、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)、LED顯示器接口技術(shù)等相關(guān)知識(shí)。以學(xué)生為主自行設(shè)計(jì)、編程制作,教師指導(dǎo),可以使學(xué)生單片機(jī)學(xué)習(xí)有一個(gè)質(zhì)的提高。
(作者單位:江蘇省常州技師學(xué)院)