freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機的led漢字點陣顯示屏的設計畢業(yè)論文(參考版)

2025-07-30 05:59本頁面
  

【正文】 最后感謝四年來對我的大力栽培。然后還要感謝大學四年來所有的老師,為我們打下通信專業(yè)知識的基礎;同時還要感謝所有的同學們,正是因為有了你們的支持和鼓勵。感謝同學在設計過程當中的交流與合作。老師平日里工作繁多,但在我做畢業(yè)設計的每個階段,從外出實習到查閱資料,原理圖的確定和修改,中期檢查,后期詳細設計,軟、硬件的調試等整個過程中都給予了我細心的指導。謝辭經(jīng)過半年的忙碌和工作,本次畢業(yè)設計已經(jīng)接近尾聲,作為一個本科生的畢業(yè)設計,由于經(jīng)驗的匱乏,難免有許多考慮不周全的地方,如果沒有導師的督促指導,以及一起工作的同學們的支持,想要完成這個設計是難以想象的。還可以通過編程增加更多的顯示方式。本系統(tǒng)通過上位機可以改變顯示的漢字信息,但是需要與電腦連接,在實際應用中不方便。接下來的就是串口傳輸數(shù)據(jù)的調試,上位機數(shù)據(jù)順利發(fā)送出來,下位機順利接收,并存入外擴存儲器,在顯示漢字時需要按一定順序調用外擴存儲器中的數(shù)據(jù),在調試這部分程序時,由于涉及到數(shù)據(jù)的接收和發(fā)送,因此,利用了串口的中斷功能,數(shù)據(jù)接收利用了串口的中斷,當有數(shù)據(jù)從上位機傳送過來時,就進入中斷程序,將數(shù)據(jù)存入外擴存儲器,跳出中斷顯示新信息。由于本系統(tǒng)的焊接比較多,因此,在調試硬件電路時,編寫了一段單行測試程序,逐行檢測LED點陣屏的硬件及連接問題。圖53 串口調試軟件界面6 結論一個系統(tǒng)的實現(xiàn),需要單片機各個部分協(xié)調工作,只有熟悉單片機每部分的功能,并且在調試程序過程中,必須保證各部分功能的實現(xiàn),才能在調試整個系統(tǒng)時游刃有余,靈活的將各部分功能結合到一起。串口通信的調試應在兩臺計算機之間進行,一臺進行發(fā)送,另一臺則接收。對于發(fā)送界面的調試,可采用專門的串口調試程序,如“ebug”、“mix”等,也可使用Windows自帶的“超級終端”軟件。同時,如果發(fā)現(xiàn)經(jīng)常會輸入同一段數(shù)據(jù),也可以將輸入的數(shù)據(jù)保存,方便以后的使用。注意輸入的漢字個數(shù)必須大于4個,否則會提示你重新輸入,并把“發(fā)送信息顯示”窗口里的內(nèi)容全部清除。一般臺式機默認為COM1,筆記本上沒有留串口,所以就要用USB轉串口的轉換頭,此轉換頭需要安裝驅動,然后在計算機的設備管理器中出現(xiàn)了端口下拉菜單項,出現(xiàn)了串口(通信端口),一般都是COM6COM9, 就要等于相應的數(shù),串口才會被使用。設計時的界面窗口如圖51所示,運行時的窗口如圖52所示。微機控制程序主要發(fā)送信息的人機界面。它簡單易學、效率高,且功能強大可以與 Windows 專業(yè)開發(fā)工具SDK相媲美。delay1(100)。HZ[i]=read(0xa0,r_high,r_low,0xa1)。r_low=(uchar)i。i++){LED=1。}for(i=0。t++。delay1(50)。 delay1(10)。w_high=(uchar)(t8)。WP=0。temp=SBUF。delay1(50)。 }總程序是以上各部分程序的結合,當上面的各部分程序調通了,也就知道了各模塊的功能,從而在以上程序的基礎上進行修改結合,便可以實現(xiàn)本系統(tǒng)要實現(xiàn)的功能。Delay(300)。Delay(3)。當沒有中斷時,發(fā)光二極管是熄滅狀態(tài),當給以中斷后,進入中斷函數(shù),發(fā)光二極管點亮1秒后繼續(xù)處于熄滅狀態(tài)。下位機接收上位機發(fā)送的數(shù)據(jù)是在EEPROM讀寫程序的基礎上,加上了串口數(shù)據(jù)的接收程序,因此,不再列出。因為涉及到了上位機發(fā)送界面,在調試前,必須確認發(fā)送界面編寫的正確。delay1(2000)。 //把讀出的數(shù)據(jù)送 P2口顯示 delay1(2000)。delay1(10)。 delay1(10)。delay1(10)。另外,EEPROM的讀寫程序必須有的三個函數(shù)是開始函數(shù)start(),停止函數(shù)stop()和應答函數(shù)ack()。這部分程序可以根據(jù)查閱的資料直接使用,但需要知道各部分函數(shù)的功能。 EEPROM外擴存儲器的讀寫本系統(tǒng)用的EEPROM存儲器是24C32,它可以存儲4K字節(jié)的數(shù)據(jù)。閃爍只要在靜態(tài)顯示的基礎上加上一部分空白顯示,然后控制顯示漢字與空白顯示的時間就可以實現(xiàn);左移顯示是在靜態(tài)顯示的基礎上,當一組漢字完整的顯示完后,將列左移一位,再顯示這組漢字,不斷循環(huán)下去就可以看到漢字的左移顯示效果;漢字上移顯示同樣是在靜態(tài)顯示的基礎上修改的,當漢字數(shù)據(jù)上移一行時,相應的后幾行在顯示數(shù)據(jù)時就要提取下一組漢字字模數(shù)據(jù),從而實現(xiàn)連貫顯示信息的效果。 P2=0x20+disrow。 sendoneline()。disrow16。其效果圖與第三章的圖21是相同的。當然,如果要改變顯示的漢字,必須更換主程序里的字模數(shù)據(jù),然后重新燒錄到單片機中。選擇一行要輸出的數(shù)據(jù)存入數(shù)組變量BUFF[ ]中將8位數(shù)據(jù)存入SBUF中SBUF中的數(shù)據(jù)發(fā)送至74HC595,BUFF[ ]中的數(shù)據(jù)是否發(fā)送完畢否是圖44 中斷程序流程圖整個程序分為很多模塊,為了在調試過程中順利的找到問題所在,必須按模塊分別調試。圖43是主程序流程,圖44是中斷程序流程圖。系統(tǒng)在打開后首先是判斷上位機是否有數(shù)據(jù)傳送過來,并且如果不給中斷,程序會一直判斷,因此,中斷開關就是屏幕顯示的開關。我們只要找到7504D位置,在其后連續(xù)讀取32個字節(jié),即可獲取“國”字的點陣字模數(shù)據(jù)。UCDOS軟件中有一個名字為HZK16的文件,這就是1616的國標漢字點陣文件,在該文件中,按漢字區(qū)位碼從小到大依次存有國標區(qū)位碼中的所有漢字,每個漢字占用32個字節(jié),每個區(qū)有94個漢字。我們可以利用這個軟件提取字庫中的任何漢字。簡單的字符或圖形的二進制編碼容易編寫出,若是復雜的圖形或符號,用手工來完成編碼是十分困難的,需要使用專門的自摸提取軟件。 如上所述,漢字輸入碼、區(qū)位碼、國標碼與機內(nèi)碼都是漢字的編碼形式,它們之間有著千絲萬縷的聯(lián)系,但其間的區(qū)別也是不容忽視的。于是,漢字的機內(nèi)碼采用變形國標碼,其變換方法為:將國標碼的每個字節(jié)都加上128,即將兩個字節(jié)的最高位由0改1,其余7位不變,由上面我們知道,“?!弊值膰鴺舜a為3123H,前字節(jié)為00110001B,后字節(jié)為00100011B,高位改1為10110001B和10100011B 即為B1A3H,因此,漢字的機內(nèi)碼就是B1A3H。如“?!弊值膰鴺舜a為3123H,它是經(jīng)過下面的轉換得到的1703D-1103H+20H-3123H。我國國家標準局于1981年5月頒布了《信息交換用漢字編碼字符集——基本集》,代號為GB231280,共對6763個漢字和682個圖形字符進行了編碼,其編碼原則為:漢字用兩個字節(jié)表示,每個字節(jié)用七位碼(高位為0),國家標準將漢字和圖形符號排列在一個94行94列的二維代碼表中,每兩個字節(jié)分別用兩位十進制編碼,前字節(jié)的編碼稱為區(qū)碼,后字節(jié)的編碼稱為位碼,此即區(qū)位碼,如“保”字在二維代碼表中處于17區(qū)第3位,區(qū)位碼即為“1703 ”。目前,我國已推出的輸入碼有數(shù)百種,但用戶使用較多的約為十幾種,按輸入碼編碼的主要依據(jù),大體可分為順序碼、音碼、形碼、音形碼四類,如“?!弊?,用全拼,輸入碼為碼為“BAO”,用區(qū)位碼,輸入碼為“1703”,用五筆字型則為“WKS”。故而 GB2312最多能表示6763個漢字。0109區(qū)為符號、數(shù)字區(qū),1687區(qū)為漢字區(qū),1015區(qū)、8894區(qū)是有待進一步標準化的空白區(qū)。每個漢字使用2個字節(jié)。漢字“大”的掃描代碼為:0x3,0x0,0x3,0x0,0x3,0x0,0x3,0x00x7F,0xFC,0x7F,0xFC,0x3,0x0,0x3,0x00x3,0x0,0x7,0x80,0x6,0xC0,0xC,0x600x18,0x30,0x30,0x18,0x60,0xC,0x0,0x0圖41 漢字“大”的點陣圖漢字國標碼每個漢字有個二進制編碼,叫漢字國標碼。當給某一行高電平的同時,要把四個漢字的列數(shù)據(jù)輸入到點陣模塊的列端,比如給了第一行高電平,要顯示的四個字每個字的前兩個字都要同時輸入到它們的列端。以上是一個字的掃描,本系統(tǒng)需要同時顯示四個字,掃描的原理不會變。點陣屏的行是從第一行順序掃描的,點亮第一行的同時給列對應的數(shù)據(jù),即上面提到的前兩個16進制數(shù),以此類推。字模數(shù)據(jù)的提取順序決定了漢字顯示的掃描方式,按照以上字模的提取順序可以得出該系統(tǒng)的點陣漢字掃描方式時行掃描。對于一個漢字字模數(shù)據(jù)的提取是按由左到右,由上到下的順序提取的,即先提取第一行的前八位和后八位,然后第二行,直至最后一行。我們以顯示漢字“大”為例,來說明其掃描原理。我們可以把沒一個點理解為一個像素,而把每一個字的字形理解為一幅圖像。至于開發(fā)速度、軟件質量、結構嚴謹、程序堅固等方面,C語言的完美絕非是匯編語言所能比擬的。51系列單片機中,片上ROM空間做到32KB/64KB的比比皆是,代碼效率所差的10%~20%已經(jīng)不是重要問題。目前,51系列單片機的C語言代碼長度在未加入人工優(yōu)化的條件下,~。這些函數(shù)經(jīng)過歸納整理可形成專家?guī)旌瘮?shù),供廣大單片機愛好者使用完善,這樣可大大提高國內(nèi)單片機軟件設計水平。根據(jù)C語言可讀性的特點,使大家更容易借鑒前人的開發(fā)經(jīng)驗,提高自己的軟件設計水平。采用C語言可以很容易地進行單片機的程序移植工作,有利于產(chǎn)品中的單片機重新選型。對匯編語言掌握到只要可以讀懂程序,在時間要求比較嚴格的模塊中進行程序的優(yōu)化即可。用C語言來編寫目標系統(tǒng)軟件,會大大縮短開發(fā)周期,且明顯增加軟件的可讀性,便于改進和擴充,從而研制出規(guī)模更大、性能更完備的系統(tǒng)。C語言有功能豐富的庫函數(shù)、運算速度快、編程效率高,并且采用C語言編寫的程序能夠很容易地再不同類型的計算機之間進行移植。它支持當前程序設計中廣泛采用的由頂向下的結構化程序設計技術。目前你,C語言逐漸成為國內(nèi)外開發(fā)單片機的主流語言。隨著社會競爭的日趨激烈,產(chǎn)品上市的周期已大大縮短,開發(fā)效率已成為商戰(zhàn)制勝的重要法寶之一。許多讀者都發(fā)現(xiàn),采用匯編語言設計一個大型復雜程序時,一是開發(fā)周期長,二是可讀性較差。作為單片機初學者必須掌握匯編語言的基本設計方法,因為匯編語言直接操作計算機的硬件,學習匯編語言對于了解單片機的硬件構造是有幫助的。通過MAX232芯片的引腳設定問題,我提醒自己一定不要再總按經(jīng)驗或者是常理來解決問題,同時也讓我很明確的知道,芯片的電源端和地端不一定是對角設定的,而且在查閱過程中,還發(fā)現(xiàn)一些芯片是沒有地端,一些運放芯片連接的是正負電壓。由于單片機的控制部分電路是比較常見的,所以一般原理圖不會出現(xiàn)問題(Proteus中的原理圖沒有設電源端和地端,電源時5V,不過可以設定)。為了測試控制部分電路。在調試單片機的串口下載時,即使是第一次使用MAX232芯片,但我以前接觸的所有芯片的電源端和地端都是芯片的兩個對角,例如16腳的芯片,它會將電源端設在16腳,地端設在8腳;40腳芯片會將電源端設在40腳,地端設在20腳。仿真階段都會遇到那么多問題,在實際焊接調試階段更是問題重重,不過很多問題都是自己一時大意或沒注意到,當別人提醒后,便恍然大悟,阻礙自己前進的其實是我們最容易忽視的問題。個人知道的美國在測試飛機在空中實際運行情況時首先利用的是各種可能出現(xiàn)的天氣的仿真,通過仿真實際的天氣情況來測試飛機可能遇到的狀況,并且及時的找到解決的方法,仿真時不會因此有太大的人員和財力損失,但是如果用實際的環(huán)境去測試,一個小小的差錯就有可能造成巨大的資金損失,甚至會造成人員傷亡。隨著軟件的不斷更新升級,仿真效果會越來越接近實際電路的情況。芯片手冊直接搜索就可以查到,而一些電路上的問題就需要到論壇里去問一些做過相關的也遇到了類似問題的網(wǎng)友,請求他們的幫忙,畢竟理論與實際有一些不同,即使是仿真電路,而且我們可以到Proteus的論壇里去找到仿真時遇到的問題,他們會非常愿意幫助我們,遇到問題就可以大家一起解決,一起進步,遇到的問題越多,以后做其它的東西遇到問題就可以迅速的找到解決的辦法,麻煩了現(xiàn)在,方便了將來,同時也充實了自己的知識儲備。而且仿真時不用過多的考慮短路,虛接等問題,它不會因為這些原因燒掉芯片,加高成本。仿真階段有其優(yōu)點,就是連線方便,用總線,然后引腳上注上標簽,沒用導線連接的兩端仿真就連上了,視覺上不會給人凌亂的感覺,LED點陣顯示屏實際要連接256根線,焊點也至少需要512個,實際操作起來,雖然焊接簡單,但是焊點太多,是很費功夫的事情。在仿真LED點陣顯示屏行驅動部分,由于74HC138譯碼器的輸出電流較小,不能同時驅動八個LED點陣顯示屏,因此使用了TIP127高功率放大管,從而才能滿足電路的需求,然而在仿真階段74HC138譯碼器的輸出與要驅動的LED點陣屏個數(shù)無關,高功率放大管與實物也是不同的,因此再使用高功率放大管,一是多此一舉,二是并不能實現(xiàn)預期效果,甚至是不出結果,直接將74HC138譯碼器的輸出連接至LED點陣屏的行,便可實現(xiàn)預期效果。在此之前使用過Proteus仿真軟件,但當時搭建的是數(shù)電電路,其中并沒有設計到編程,因此只使用該軟件就能實現(xiàn)預期效果,而本實驗涉及到軟件編程,故還需安裝Keil u Vision3,并且通過簡單的設置,將兩個軟件連接起來,從而實現(xiàn)程序的下載,下載到仿真的單片機中,運行程序實現(xiàn)預期效果,此處主要是在線調試,當兩個軟件斷開時,或者Keil文件沒有打開運行均不能在Proteus中看到程序所反應的效果。2.問題:控制部分與LED點陣顯示屏部分連接時,不能下載程序。解決方法:遇到此類問題很可能就是電路連接有錯誤,用數(shù)字萬用表測試74LS138的輸出是循環(huán)選通輸出,而且16個TIP127功率放大管同時壞掉的概率極低,那必然是TIP127的連接有問題,TIP127是PNP型管,經(jīng)過仔細查看,集電極發(fā)射極的連接端完全連錯了,發(fā)射極接高電平,BE端導通,集電極為輸出端,驅動LED點陣屏。74HC595的Q7’是串行數(shù)據(jù)輸出端,與下一個74HC595的串行數(shù)據(jù)輸入端相連,將數(shù)據(jù)不斷傳向下一個74HC595,74HC595的輸出控制LED點陣顯示屏的列,控制要選通的燈珠,從
點擊復制文檔內(nèi)容
范文總結相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1