【正文】
碼一樣,但是相比 74LS138 少用一片芯片。 P0口: P0口為一個(gè) 8位漏級(jí)開(kāi)路雙向 I/O 口,每腳可吸收 8TTL 門(mén)電流。并因此作為輸入時(shí), P2 口的管腳被外部拉低,將輸出電流。 P3 口也可作為 AT89C51 的一些特殊功能口,如下所示: ? RXD(串行輸入口) ? TXD(串行輸 出口) ? /INT0(外部中斷 0) ? /INT1(外部中斷 1) ? T0(記時(shí)器 0 外部輸入) ? T1(記時(shí)器 1 外部輸入) ? /WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通) ? /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) AT89C51 振蕩器特性為: XTAL1 和 XTAL2 分別為反向放大器的輸入和輸出。在掉電模式下,保存 RAM 的內(nèi)容并且凍結(jié)振蕩器,停止芯片其它功能直至硬件復(fù)位,直到下一個(gè)硬件復(fù)位為止。具有高亮度、功耗低、引腳少、視角大、壽命長(zhǎng)、耐濕、耐冷熱、耐腐蝕等特點(diǎn)。掃描中控制電路將行 線(xiàn)的 1 到 8 輪流接通高電位,使連接到各該行的全部 LED 器件接通正電源,但具體那一個(gè) LED 導(dǎo)通,還要看它的負(fù)電源是否接通,這就是列控制的任務(wù)了。如第一列為高電平置 1,第二列為低電平置 0,第三列為高電平置 1, P行為低電平置 0, O 行為高電平置 1,則顯示效果 是 P 行上的第一個(gè) LED 燈亮,第二個(gè) LED燈滅,第三個(gè) LED 燈亮。圖 39為編碼器 74LS154外形及內(nèi)部邏輯結(jié)構(gòu)。 AT24C08提供 8192位的串行電可擦寫(xiě)可編程只讀存儲(chǔ)器 (EEPROM),組織形式為 1024字8 位字長(zhǎng)。 在單片機(jī)系統(tǒng)中,硬件是系統(tǒng)的基礎(chǔ),軟件 則是在硬件的基礎(chǔ)上對(duì)其合理的調(diào)配和使用,從而完成應(yīng)用系統(tǒng)所要完成的任務(wù)。系統(tǒng)應(yīng)用程序完成系統(tǒng)環(huán)境設(shè)置(初始化)、顯示效果處理等工作,由主程序來(lái)實(shí)現(xiàn)。而且現(xiàn)在很多編譯器都能很好的支持 C 語(yǔ)言的編譯和調(diào)試。由于單片機(jī)沒(méi)有停機(jī)指令,所以可以設(shè)置系統(tǒng)程序不斷地循環(huán)執(zhí)行上述顯示效果。 方式 1 最大計(jì)數(shù)值為 216=65536 ,若 fosc=12MHz,則定時(shí)時(shí)間范圍為 1~ 65536μs。串口同時(shí)也是儀器儀表設(shè)備通用的通信協(xié)議;很多 GPIB 兼容的設(shè)備也帶有 RS—232口。由于串口通信是異步的,端口能夠在一根線(xiàn)上發(fā)送數(shù)據(jù)同時(shí)在另一根線(xiàn)上大連海洋大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 第 四 章 系統(tǒng)軟件設(shè)計(jì) 18 接收數(shù)據(jù)。這意味著串口通信在數(shù)據(jù)線(xiàn)上的采樣率為 4800Hz。擴(kuò)展的 ASCII 碼是 0~ 255( 8 位)。適用于停止位的位數(shù)越多,不同時(shí)鐘同步的容忍程度越大,但是數(shù)據(jù)傳輸率同時(shí)也越慢。這樣使得接收設(shè)備能夠知道一個(gè)位的狀態(tài),有機(jī)會(huì)判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否不同步。當(dāng)然沒(méi)有校驗(yàn)位也是可以的。用于驅(qū)動(dòng)和連線(xiàn)的改進(jìn),實(shí)際應(yīng)用中 RS232 的傳輸長(zhǎng)度或者速度常常超過(guò)標(biāo)準(zhǔn)的值。 MAX232 是標(biāo)準(zhǔn)的串口通信接口,對(duì)于一般的雙向通訊,只需要使用串行輸入口RXD(第 12 腳 )、串行輸出 TXD(第 11 腳 )和地線(xiàn)(第 10 腳)。 大連海洋大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 第 四 章 系統(tǒng)軟件設(shè)計(jì) 20 單 片 機(jī) 接 收 到 數(shù) 據(jù)是 否 是 ‘ \ N ’存 儲(chǔ) 數(shù) 據(jù)判 斷 命 令 字 , 調(diào) 用 相 關(guān)函 數(shù) , 處 理 數(shù) 據(jù)結(jié) 束 , 等 待 下 一 次 數(shù) 據(jù)是否 上 位 機(jī) 發(fā) 送 讀 取 數(shù) 據(jù) 命 令上 位 機(jī) 接 收 數(shù) 據(jù)是 否 是 ’ \ N ’存 儲(chǔ) 數(shù) 據(jù)判 斷 命 令 字 , 調(diào) 用 相 關(guān)函 數(shù) , 處 理 數(shù) 據(jù)結(jié) 束 , 返 回是否 圖 42 單片機(jī)接收命令流程圖 圖 43 上位機(jī)接收信息流程圖 二、單片機(jī)對(duì)上位機(jī)的通信協(xié)議 單片機(jī)對(duì)上位機(jī)的通信主 要是要發(fā)送實(shí)時(shí)時(shí)間,日期,星期,溫度等,以完成在上位機(jī)相應(yīng)的顯示。 單片機(jī)收到上位機(jī)發(fā)過(guò)來(lái)的數(shù)據(jù),首先存儲(chǔ)數(shù)據(jù),直到收到 ?\n?,將處理收到的數(shù)據(jù),然后解析命令字,根據(jù)命令字調(diào)用相關(guān)處理函數(shù)。由于電腦串口RS232 電平是 10V +10V,而一般的單片機(jī)應(yīng)用系統(tǒng)的信號(hào)電壓是 TTL 電平 0 +5V,MAX232 就是用來(lái)進(jìn)行電平 轉(zhuǎn)換的,該器件包含 2個(gè)驅(qū)動(dòng)器、 2個(gè)接收器和一個(gè)電壓發(fā)生電路提供 TIA/EIA232F 電平。 RS232( ANSI/EIA232 標(biāo)準(zhǔn))是 IBMPC 及其兼容機(jī)上的串行連接標(biāo)準(zhǔn)。 奇偶校驗(yàn)位 在串口通信中一種簡(jiǎn)單的檢錯(cuò)方式。如果是奇校驗(yàn),校驗(yàn)位為 1,這樣就有 3 個(gè)邏輯高位。由于數(shù)據(jù)是在傳輸線(xiàn)上定時(shí)的,并且每一個(gè)設(shè)備有其自己的時(shí)鐘,很可能在通信中兩臺(tái)設(shè)備間出現(xiàn)了小小的不同步。如何設(shè)置取決于你想傳送的信息。例如 300波特表示每秒鐘發(fā)送 300 個(gè) bit。典型地,串口用于 ASCII 碼字符的傳輸。 串口通信設(shè)計(jì) 串口的定義 串口是計(jì)算機(jī)上一種非常通用設(shè)備通信的協(xié)議。顯示驅(qū)動(dòng)程序在進(jìn)入中斷后首先要對(duì)定時(shí)器T0 重新賦初值,以保證顯示屏刷新 率的穩(wěn)定, 1/16 掃描顯示屏的刷新率(幀頻)計(jì)算公式如下: 刷新率(幀頻) =161 T0 溢出率 =161 )65536(12 0tfosc ? 大連海洋大學(xué)本科畢業(yè)論文(設(shè)計(jì)) 第 四 章 系統(tǒng)軟件設(shè)計(jì) 17 其中 fosc 為晶振頻率, t0 為定時(shí)器 T0 初值(工作在 16 位定時(shí)器模式)。 程序主系統(tǒng)及驅(qū)動(dòng)系統(tǒng) 主系統(tǒng) 系統(tǒng)的主程序開(kāi)始以后,首先是對(duì)系統(tǒng)環(huán)境初始化,包括設(shè)置串口、定時(shí)器、中斷和端口;然后 LED 顯示屏進(jìn)入開(kāi)機(jī)狀態(tài),轉(zhuǎn)入正常的顯示。還有也是比較致命的一點(diǎn),可移植性比較差,所以使用匯編語(yǔ)言編程將需要大量的時(shí)間用于軟件的編寫(xiě)和調(diào)試。顯示驅(qū)動(dòng)程序負(fù)責(zé)向屏體送顯示數(shù)據(jù),并負(fù)責(zé)產(chǎn)生行掃描信號(hào)和其它控制信號(hào),配合完成 LED顯示屏的掃描顯示工作。 VisualBasic6. 0(以下簡(jiǎn) VB)是許多工程技術(shù)人員熟悉和常用的應(yīng)用程序開(kāi)發(fā)軟件, VB 以其簡(jiǎn)單易學(xué)、 32 位面向?qū)ο蟮某绦蛟O(shè)計(jì)等特點(diǎn),倍受廣大計(jì)算機(jī)開(kāi)發(fā)者的青睞,已廣泛地應(yīng)用于各個(gè)領(lǐng)域;如何用 VB 編寫(xiě)數(shù)據(jù)通訊程序,并進(jìn)行數(shù)據(jù)處理,意義重大。 1 2 3 4ABCD4321DCBAT i t leN u m be r R e v i s i onS i z eA4D a t e : 8 J un 20 12 S he e t o f F i l e : C : \ D o c um e nt s a n d S e tt i ngs \ A d m i ni s t r a t or \ 桌面 \ 060 8004 r a w n B y :E A / V P31X119X218R E S E T9RD17WR16I N T 012I N T 113T014T115P 101P 112P 123P 134P 145P 156P 167P 178P 0039P 0138P 0237P 0336P 0435P 0534P 0633P 0732P 2021P 2122P 2223P 2324P 2425P 2526P 2627P 2728P S E N29A L E / P30T X D11R X D10U1805 1C247p f11. 0592M H zC R Y S T A LC147p fS W 1S W P BV C CC347p fR 3210kR 331kA23B22C21D20G118G219011223344556677889910101111131214131514161517U274L S 154R0 200R1 200R2 200R3 200R4 200R5 200R6 200R7 200R8 200R9 200R 10 200R 11 200R 12 200R 13 200R 14 200R 15 200R 16 200R 17 200R 18 200R 19 200R 20 200R 21 200R 22 200R 23 200R 24 200R 25 200R 26 200R 27 200R 28 200R 29 200R 30 200R 31 200Q0S 85 50Q1S 85 50Q2S 85 50Q3S 85 50Q4S 85 50Q5S 85 50Q6S 85 50Q7S 85 50Q8S 85 50Q9S 85 50Q 1 0S 85 50Q 1 1S 85 50Q 1 2S 85 50Q 1 3S 85 50Q 1 4S 85 50Q 1 5S 85 50V C CV C C V C C V C C V C C V C C V C C V C C V C CV C CV C CV C CV C CV C CV C CV C CV C C162738495J1D B 9C 1+1V+2C 13V6C 2+4VCC16C 25GND15T 1I N11T 1O U T14T 2I N10T 2O U T7R 1O U T12R 1I N13R 2O U T9R 2I N8U3M A X 232V C CC5105C4105V C C C6105C710565781234A0A1A2V S S S D AS C LT E S TV D DV C CG N D 圖 312 74LS154行驅(qū)動(dòng)模塊 掉電保存模塊是通過(guò)單片機(jī) AT24C08對(duì) LED 點(diǎn)陣顯示屏內(nèi)容進(jìn)行保存。實(shí)現(xiàn)解調(diào)功能的辦法是:用 4 個(gè)輸入線(xiàn)寫(xiě)出輸出線(xiàn)的地址,使得在一個(gè)選通輸入為低時(shí)數(shù)據(jù)通過(guò)另一個(gè)選通輸入。它的外觀(guān)形狀如圖 34 所示,內(nèi)部結(jié)構(gòu)如圖 35 所示。行驅(qū)動(dòng)器一行的行線(xiàn)連接到電源的一端,列驅(qū)動(dòng)器一列的列線(xiàn)連接到電源的另一端。 31引腳接電源端,如圖 33所示。在閑置模式下, CPU 停止工作。當(dāng) P3口寫(xiě)入 “1”后,它們被內(nèi)部上拉為高電平,并用作輸入。在 FLASH 編程和校驗(yàn)時(shí), P1 口作為第八位地址接收。圖 為 AT89C51 外部封裝。 行驅(qū)動(dòng)電路主要是要實(shí)現(xiàn)譯碼功能,下面有 2 種方案供其選擇: 方案一:采用 2 塊 74LS138 級(jí)聯(lián)來(lái)實(shí)現(xiàn) 4/16 線(xiàn)譯碼功能 , 74LS138 芯片本身具有 3/8線(xiàn)譯碼功能,但是增加了芯片 的使用數(shù)目,增加了連線(xiàn)及所占面積。所以不采用本方案。 復(fù)位電路 方案一:采用按鈕復(fù)位,通過(guò)按電路中的開(kāi)關(guān)按鈕使系統(tǒng)內(nèi)部復(fù)位,按一次開(kāi)關(guān)按鈕系統(tǒng)復(fù)位一次,但是在點(diǎn)陣屏顯示過(guò)程中不需要對(duì)系統(tǒng)進(jìn)行復(fù)位,本方案與實(shí)際應(yīng)用不相符合,所以不采取本方案。為了達(dá)到重疊處理的目的,列數(shù)據(jù)的顯示就需要具有鎖存功能。顯然,采用并行方式時(shí),從控制電路到列驅(qū)動(dòng)器的線(xiàn)路數(shù)量大,相應(yīng)的硬件數(shù)目多。因此采用另一種稱(chēng)為動(dòng)態(tài)掃描的顯示方法。使 LED 全彩色顯示產(chǎn)品成本下降,應(yīng)用加快。 然而,我國(guó)目前 LED 產(chǎn)品開(kāi)發(fā)應(yīng)用領(lǐng)域依然存在許多不足。( 4)體育場(chǎng)館信息顯示。 單片機(jī)控制系統(tǒng)程序采用單片機(jī)匯編語(yǔ)言進(jìn)行編輯,通過(guò)編程控制各顯示點(diǎn)對(duì)應(yīng) LED 陽(yáng)極和陰極端的電平,就可以有效的控制各顯示點(diǎn)的亮滅。 整機(jī)以 AT89C51 單片機(jī)為核心,介紹了以它為控制系統(tǒng)的 LED 點(diǎn)陣電子顯示屏的動(dòng)態(tài)設(shè)計(jì)和開(kāi)發(fā)過(guò)程。 關(guān)鍵詞: AT89S51 單片機(jī), LED 點(diǎn)陣顯示,動(dòng)態(tài)顯示,串行通信,匯編語(yǔ)言大連海洋大學(xué)本科畢業(yè)論文(設(shè)計(jì)) ABSTRACT Ⅱ ABSTRACT This design is a 16 16 lattice LED electron display monitor design basic on personal put