




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
西南交通大學(xué)本科畢業(yè)設(shè)計(論文)LED點(diǎn)陣顯示屏系統(tǒng)設(shè)計及PC機(jī)串行通信年級:200X級學(xué)號:200XXXX姓名:XXX專業(yè):數(shù)控技術(shù)指引教師:XXXXXX200X年6月院系機(jī)械工程系專業(yè)數(shù)控技術(shù)年級200X級姓名XXX題目LED點(diǎn)陣顯示屏系統(tǒng)設(shè)計及PC機(jī)串行通信指引教師評語指引教師(簽章)評閱人評語評閱人(簽章)成績答辯委員會主任(簽章)年月日畢業(yè)設(shè)計(論文)任務(wù)書班級200X級學(xué)生姓名XXX學(xué)號200XXXX發(fā)題日期:200X年2月25日完畢日期:6題目LED點(diǎn)陣顯示屏系統(tǒng)設(shè)計及PC機(jī)串行通信1、本論文目、意義:點(diǎn)陣式LED顯示屏控制系統(tǒng)是很實(shí)用微機(jī)控制應(yīng)用系統(tǒng),其應(yīng)用日益廣泛。本論文擬用單片機(jī)對點(diǎn)陣式LED顯示屏直接控制,由PC機(jī)實(shí)現(xiàn)中文顯示點(diǎn)陣數(shù)據(jù)傳送。該題目綜合性非常強(qiáng),涉及有單片機(jī)系統(tǒng)硬件知識,硬件電路制作,匯編程序設(shè)計辦法,計算機(jī)通信,計算機(jī)可視化程序設(shè)計等,使學(xué)生進(jìn)一步鞏固所學(xué),提高能力,可得到很大鍛煉。2、學(xué)生應(yīng)完畢任務(wù)(1)收集關(guān)于單片機(jī)應(yīng)用資料,特別是單片機(jī)與PC機(jī)間數(shù)據(jù)串行通信控制,以及顯示屏控制方面內(nèi)容;電子制作方面資料;熟悉單片機(jī)MCS-51工作原理和程序設(shè)計;(2)詳細(xì)掌握點(diǎn)陣式LED顯示屏顯示控制原理;PC機(jī)與單片機(jī)通信原理,掌握一種可視化計算機(jī)語言。系統(tǒng)功能設(shè)計;硬件電路設(shè)計。詳細(xì)列出單片機(jī)系統(tǒng)電路制作所需電子元器件清單;英文翻譯。(3)單片機(jī)系統(tǒng)電路制作;點(diǎn)陣式LED顯示屏控制軟件程序設(shè)計,涉及單片機(jī)控制程序和PC機(jī)控制程序;硬件電路和軟件程序調(diào)試。(4)完畢具備規(guī)定格式設(shè)計闡明書(不少于15000字)一份。提交設(shè)計制作硬件電路板和設(shè)計程序。3、論文各某些內(nèi)容及時間分派:(共16周)第一某些查閱、收集有關(guān)資料并參照吸取。(3周)第二某些基本知識原理學(xué)習(xí)。系統(tǒng)功能設(shè)計,總體設(shè)計、硬件電路設(shè)計(3周)第三某些硬件電路制作和控制程序設(shè)計,硬件電路和程序調(diào)試。(6周)第四某些設(shè)計闡明書、電路圖書寫整頓等工作(3周)評閱及答辯 (1周)備注參照文獻(xiàn):MCS單片機(jī)應(yīng)用系統(tǒng)實(shí)用指南陳寶江等編著機(jī)械工業(yè)出版社1997單片機(jī)通信技術(shù)與工程實(shí)踐求是科技編著人民郵電出版社PC機(jī)及單片機(jī)數(shù)據(jù)通信技術(shù)李朝青編著北航出版社單片機(jī)原理及應(yīng)用,電子制作指南,VB(或VC)計算機(jī)語言程序設(shè)計等有關(guān)資料、教材在圖書館和網(wǎng)絡(luò)上有諸多,可自行選取參照指引教師:XXXXXX200X年2月25日審批人:年月日摘要LED電子顯示屏是隨著計算機(jī)及有關(guān)微電子﹑光電子技術(shù)迅猛發(fā)展而形成一種新型信息顯示媒體。它運(yùn)用發(fā)光二極管構(gòu)成點(diǎn)陣模塊或像素單元構(gòu)成可變面積顯示屏幕,以可靠性高、使用壽命長、環(huán)境適應(yīng)能力強(qiáng)、性能價格比高、使用成本低等特點(diǎn),在短短十來年中,迅速成長為平板顯示主流產(chǎn)品,在信息顯示領(lǐng)域得到了廣泛應(yīng)用。本設(shè)計采用單片機(jī)系統(tǒng)設(shè)計辦法,運(yùn)用單片機(jī)與PC機(jī)串行通信接口實(shí)現(xiàn)對LED點(diǎn)陣顯示屏系統(tǒng)控制設(shè)計。通過總體方案分析與設(shè)計,擬定所采用單片機(jī)型號,擬定硬件設(shè)計與軟件設(shè)計內(nèi)容,硬件方面需要對單片機(jī)控制系統(tǒng)硬件電路(如時鐘電路、復(fù)位電路等)進(jìn)行設(shè)計,顯示某些擬定了由P0、P2口直接控制行掃描數(shù)據(jù)碼輸入,P1口控制列掃描指針輸入,運(yùn)用PROTEL99SE電路設(shè)計軟件進(jìn)行LED顯示硬件電路原理圖繪制,并生成報表,列出所需元件清單。依照點(diǎn)陣LED顯示屏系統(tǒng)設(shè)計規(guī)定,用單片機(jī)匯編語言編程,實(shí)現(xiàn)6個16×16點(diǎn)陣中文字符或數(shù)字顯示;運(yùn)用51匯編集成開發(fā)環(huán)境和STC-ISPV13下載型編程器對單片機(jī)程序進(jìn)行燒錄。在系統(tǒng)軟硬件調(diào)試過程中,采用STC89C52RC單片機(jī)實(shí)驗開發(fā)板進(jìn)行功能測試。核心詞:單片機(jī)控制系統(tǒng)與PC機(jī)串行通信點(diǎn)陣LED顯示屏電路制作AbstractLEDelectronicdisplay,withtherapiddevelopmentofthecomputerandrelativemicroelectronics,photonicstechnology,comesintobeinganewtypeofinformationdisplaymedia.Itusesapixeldotmatrixmoduleormodulesmadeupoflight-emittingdiodetocomposevariableareaofthedisplayscreen.Withhighreliabilityandlongservicelife,astrongabilitytoadapttotheenvironment,highcostperformance,theuseoflowcost,inashortperiodof10years,ithasquicklygrownintothemainstreamofflatpaneldisplayproductsandbeenwidelyappliedinthefieldofinformationdisplay.UsingSCMsystemdesignmethodsandSCMandPC'sserialcommunicationtechnology,thedesignimplementedtheLEDdot-matrixdisplaycontrolsystem’sdesign.Throughtheanalysisanddesignoftheoverallplan,weidentifytheneedsoftheSCMmodels,determinethedesignofhardwareandsoftwaredesign,andthehardwareneedingtodetermineSCMcontrolsystemhardwarecircuit’s(suchasclockcircuit,resetcircuit)design.Inthepartofthedisplay,weuseP0,P2porttodirectlycontrolrowsignalsofcodescandatainput,andP1portcontrolthecolumnsignalsofscanindicatorsinput.UsePROTEL99SEcircuitdesignsoftware,wecandrawLEDdisplayhardwarecircuitschematics,generatereports,andlisttherequiredlistofcomponents.Accordingtodot-matrixLEDdisplaysystemdesignrequirements,itcanuseSCMassemblylanguagetoprogramtocarryoutsix16×16dotmatrixChinesecharactersordigitaldisplay.Weusethecompilationof51integrateddevelopmentenvironmentandtheSTC-ISPV13DownloadsprogrammertoburnSCMprocedures.Inthehardwareandsoftwaresystemdebuggingprocess,wecanuseSCMSTC89C52RCexperimentaldevelopmentboardfortesting.Finally,dotheoverallanalysisandverifythefeasibilityofsystem.Keywords:SCMControlSystemSerialCommunicationwithPCDot-matrixLEDdisplayscreenCircuitproduction目錄緒論………………11.1課題背景……………………11.2開發(fā)LED點(diǎn)陣顯示系統(tǒng)意義………………21.3單片機(jī)系統(tǒng)設(shè)計辦法…………21.4本次設(shè)計任務(wù)………………5第2章總體方案設(shè)計……………………72.1可行性分析……………………72.2系統(tǒng)功能分析…………………72.3單片機(jī)選型…………………82.4系統(tǒng)硬軟件功能設(shè)計………82.5本章小結(jié)……………………10第3章系統(tǒng)硬件設(shè)計……………………113.1單片機(jī)系統(tǒng)設(shè)計……………113.1.1單片機(jī)基本概念………113.1.2STC89C52RC單片機(jī)外部引腳功能…………………123.1.3驅(qū)動電源設(shè)計……………133.1.4時鐘電路設(shè)計……………133.1.5復(fù)位電路設(shè)計……………143.1.6單片機(jī)串口波特率發(fā)生器選取………153.2單片機(jī)串口電平轉(zhuǎn)換電路設(shè)計………………183.2.1通信合同采用…………183.2.2電平轉(zhuǎn)換電路設(shè)計………213.3繪制電路原理圖………………233.4LED點(diǎn)陣顯示屏選取及連線……………253.5本章小結(jié)………………………27第4章系統(tǒng)軟件設(shè)計…………………284.1PC機(jī)串行通信程序…………284.1.1功能分析………………284.1.2串行通信兩種方式…………………284.1.3MSComm控件簡介…………………294.1.4使用VB開發(fā)串行通信軟件……………304.2單片機(jī)串行通信程序……………………424.3顯示程序設(shè)計………………454.4字模點(diǎn)陣信息提取…………47第5章系統(tǒng)調(diào)試………………………485.1系統(tǒng)硬件調(diào)試………………485.2系統(tǒng)軟件程序調(diào)試………485.3顯示程序調(diào)試………………52第6章問題摸索………………………536.1問題1顯示亮度與穩(wěn)定性研究…………536.2問題2分幕顯示程序缺陷………………536.3問題3PC機(jī)與單片機(jī)協(xié)調(diào)性研究………54結(jié)論……………………55道謝……………………56參照文獻(xiàn)………………57第1章緒論1.1課題背景發(fā)光二極管(LED)是一種將電能轉(zhuǎn)換成為光能固體電致發(fā)光(EL)器件。關(guān)于固體發(fā)光最早可追溯到1923年,但在當(dāng)時卻沒有可以引起人們足夠注重。日后,隨著固體物理和當(dāng)代技術(shù)發(fā)展以及人類對全固體光源需求,固體EL先后獲得了一系列應(yīng)用技術(shù)上突破。1964年世界上第一只紅色I(xiàn)II-V族GaAsP-LED誕生,預(yù)示著固體發(fā)光時代來臨,不久,橙色、黃色、黃綠色LED也相繼問世,實(shí)現(xiàn)了在波長940~540nm范疇內(nèi)發(fā)光全固化,遺憾是實(shí)現(xiàn)全色顯示藍(lán)光始終未能得到。二十世紀(jì)七十年代,LED產(chǎn)業(yè)迎來了蓬勃發(fā)展春天,它在大屏幕顯示、交通信號燈和儀器儀表批示等領(lǐng)域得到廣泛應(yīng)用,并隨著家用電器進(jìn)入人們生活。1994年,氮化鎵基藍(lán)、綠光AlGaInN-LED浮現(xiàn)是LED顯示發(fā)展史上又一里程碑,使戶外全色顯示和半導(dǎo)體照明成為也許,氮化鎵基發(fā)光器件具備全固體、冷光源、體積小、壽命長、光效高、響應(yīng)速度快、耐候性好等長處,在國民經(jīng)濟(jì)眾多領(lǐng)域具備廣泛應(yīng)用前景,引起了科學(xué)界和產(chǎn)業(yè)界極大關(guān)注,成為半導(dǎo)體體領(lǐng)域新崛起研究熱點(diǎn)和經(jīng)濟(jì)生長點(diǎn)。白光LED點(diǎn)燃了真正“綠色照明”光輝,被以為是21世紀(jì)最有價值新光源,將取代白熾燈和日光燈成為照明市場主流,是照明技術(shù)面臨一場新革命,從而在一定限度上改進(jìn)了人類生產(chǎn)和生活方式。當(dāng)前,LED產(chǎn)業(yè)競爭焦點(diǎn)集中在白光、藍(lán)光、紫光LED以及大功率高亮度芯片。白光LED是繼白熾燈和日光燈之后第三代電光源,已成為世界各地光源和燈具研究機(jī)構(gòu)競相開發(fā)、努力獲取目的,是將來照明領(lǐng)域明星公司。白光LED能耗僅為白熾燈1/8,熒光1/2,其壽命可長達(dá)10萬小時,對于普通家庭照明可謂是“一勞永逸”。同步還可以實(shí)現(xiàn)無汞化,回收容易,這對環(huán)保和節(jié)約能源具備重要意義。國內(nèi)在當(dāng)前研究上也獲得了可喜進(jìn)步,正在縮短與國際先進(jìn)水平差距。眼下市場上白光LED大多是國內(nèi)LED廠家采用進(jìn)口芯片和熒光粉自行封裝。由于技術(shù)力量和自主開發(fā)能力薄弱,藍(lán)光芯片選用和白光LED性能受到一定限制和影響。作為對節(jié)能高效顯示屏一種嘗試,選取LED點(diǎn)陣顯示屏系統(tǒng)設(shè)計作為我畢業(yè)設(shè)計題目。對于我來說,這既是一次挑戰(zhàn),更是一次難得學(xué)習(xí)機(jī)會。1.2開發(fā)LED點(diǎn)陣顯示系統(tǒng)意義LED顯示屏是有發(fā)光二極管排列構(gòu)成一種顯示屏件。它采用低電壓掃描驅(qū)動,具備耗電少、使用壽命長、成本低、亮度高、故障少、視角大、可視距離遠(yuǎn)、規(guī)格品種全等特點(diǎn)。當(dāng)前,LED顯示屏最為新一代信息傳播工具,已經(jīng)成為都市信息當(dāng)代化建設(shè)標(biāo)致。隨著社會信息不斷進(jìn)步,以及LED顯示技術(shù)不斷完善,人們對LED顯示屏結(jié)識也越來越深,其應(yīng)用領(lǐng)域也會越來越廣。被廣泛應(yīng)用于證券交易、金融顯示,機(jī)場航班動態(tài)信息顯示,港口、車旅客引導(dǎo)信息,到她可以交通信息顯示,表演和機(jī)會,調(diào)度指揮中心信息顯示,郵政、電信、商場購物中心等服務(wù)領(lǐng)域業(yè)務(wù)宣傳及信息顯示、廣告媒體新產(chǎn)品,體育場館信息顯示,展覽會等領(lǐng)域。特別是大屏幕顯示系統(tǒng),作為體育場館競賽和大型社會活動提供信息服務(wù)基本子系統(tǒng),它將直接影響到場館基本設(shè)施檔次。同步,由于其功能和綜合效應(yīng)十分符合當(dāng)前市場經(jīng)濟(jì)新規(guī)定,系統(tǒng)設(shè)備前期硬件投資對場館當(dāng)代化建設(shè),甚至增進(jìn)地方經(jīng)濟(jì)發(fā)展都具備十分重要意義。本次設(shè)計是在教師指引下完畢。作為咱們自身,已經(jīng)跨出了向大屏幕邁進(jìn)第一步;作為實(shí)驗室,也有了一種新起點(diǎn),有助于后來學(xué)習(xí)和教學(xué),充分運(yùn)用了學(xué)校教學(xué)資源,使人們向一種縱深領(lǐng)域發(fā)展。對于我自己而言,有一點(diǎn)點(diǎn)成就感,畢竟是自己親自實(shí)踐,是自己在理論與實(shí)踐結(jié)合中培養(yǎng)了自己動手能力和團(tuán)隊寫作能力,對自己后來發(fā)展將會意義深遠(yuǎn)。1.3單片機(jī)系統(tǒng)設(shè)計辦法一種完整單片機(jī)系統(tǒng)設(shè)計是相稱復(fù)雜。硬件設(shè)計方面,設(shè)計者不但要對微機(jī)系統(tǒng)自身進(jìn)行設(shè)計,還要依照詳細(xì)應(yīng)用添加外圍設(shè)備接口電路和驅(qū)動電路。軟件設(shè)計方面,則需要依照詳細(xì)硬件構(gòu)造來實(shí)現(xiàn)單片機(jī)系統(tǒng)功能。在實(shí)際應(yīng)用設(shè)計中,由于應(yīng)用環(huán)境不同,開發(fā)者還應(yīng)當(dāng)考慮到溫度、功率、產(chǎn)品體積、可靠性、抗干擾性、實(shí)時性等眾多問題,并提供硬件或軟件解決方案,以保證最后產(chǎn)品可靠性,其復(fù)雜限度遠(yuǎn)比普通所說微機(jī)系統(tǒng)要高。單片機(jī)應(yīng)用系統(tǒng)設(shè)計應(yīng)按照如下幾種環(huán)節(jié)來進(jìn)行。1.總體方案設(shè)計在這一階段,設(shè)計者需要考察實(shí)際應(yīng)用環(huán)境需要,擬定系統(tǒng)整體設(shè)計方案。一方面是可行性分析,擬定能否使用單片機(jī)系統(tǒng)達(dá)到需要設(shè)計目的,達(dá)到設(shè)計目的需要經(jīng)濟(jì)成本與否超過可接受范疇。另一方面是對系統(tǒng)核心—單片機(jī)選型,這涉及到應(yīng)用系統(tǒng)自身對數(shù)據(jù)解決能力規(guī)定,以及與否有其她方面特殊規(guī)定(低功耗、工作溫度、接口電路),如果產(chǎn)品需要成批生產(chǎn),還要考慮市場供應(yīng)和系統(tǒng)自身成本等方面問題。最后是對系統(tǒng)各項功能劃分,擬定軟件和硬件分工問題。通過這一階段設(shè)計,設(shè)計者應(yīng)當(dāng)已有比較成型系統(tǒng)設(shè)計框架,對軟硬件系統(tǒng)分工有較明確方案。此時,可以進(jìn)行系統(tǒng)硬件設(shè)計工作了。2.系統(tǒng)硬件設(shè)計系統(tǒng)硬件設(shè)計階段,設(shè)計者需要對各個模塊硬件某些進(jìn)行詳細(xì)設(shè)計。這某些涉及單片機(jī)系統(tǒng)設(shè)計,外圍功能模塊選取,I/O口分派,單片機(jī)與外圍模塊,單片機(jī)與單片機(jī)之間通信線路選取,模仿輸入/輸出通道電路設(shè)計等方面。當(dāng)詳細(xì)硬件系統(tǒng)功能框圖完畢后,可以繪制電路原理圖,同步設(shè)計者還要對電路設(shè)計進(jìn)行進(jìn)一步驗證。完畢電路原理圖繪制后,還需要使用Protel等工具軟件繪制硬件系統(tǒng)PCB版圖,這時需要實(shí)現(xiàn)器件在電路板上分布、詳細(xì)封裝、信號線和電源線走線分布等。其中需要考慮最后產(chǎn)品自身尺寸規(guī)定、工作環(huán)境、干擾問題等眾多方面。3.系統(tǒng)軟件設(shè)計一種完整單片機(jī)系統(tǒng)只有硬件還不能工作,必要有軟件來控制整個系統(tǒng)運(yùn)營。單片機(jī)系統(tǒng)軟件設(shè)計重要使用匯編語言或C語言。前者與硬件關(guān)系密切,可以以便地實(shí)現(xiàn)諸如中斷管理以及模仿/數(shù)字量輸入/輸出等功能,占用系統(tǒng)資源小、執(zhí)行速度快,但對復(fù)雜大型應(yīng)用,其代碼可讀性差,不利于升級和維護(hù)。后者使用高檔語言,代碼效率和長度都不如匯編語言,但其構(gòu)造清晰、可讀性好、開發(fā)周期短、有極強(qiáng)可移植性,在大多數(shù)應(yīng)用方面執(zhí)行效率與匯編語言差距也不大,近年來得到了廣泛應(yīng)用。單片機(jī)軟件某些,重要任務(wù)涉及系統(tǒng)初始化,各模塊參數(shù)設(shè)立、中斷祈求管理、定期器管理、外圍模塊讀寫、功能算法實(shí)現(xiàn)、可靠性和抗干擾設(shè)計等方面。軟件設(shè)計可以分為兩個階段。一方面,設(shè)計者可以按照最初實(shí)際思路完畢某些軟件設(shè)計工作。當(dāng)硬件某些制作完畢后,設(shè)計者還需要依照硬件將事先完畢軟件某些各模塊進(jìn)行組合和調(diào)節(jié)。完畢系統(tǒng)軟件設(shè)計,一方面需要在計算機(jī)上進(jìn)行軟仿真,驗證軟件某些邏輯對的性,當(dāng)完畢硬件制作后,就可以進(jìn)行實(shí)際測試了。4.系統(tǒng)調(diào)試電路板制作完畢后,設(shè)計者需要按照PCB板繪制圖焊接各個元件,同步檢測硬件方面設(shè)計錯誤,發(fā)現(xiàn)問題后,如果可以補(bǔ)救,可以使用飛線等手段修改硬件設(shè)計,如果浮現(xiàn)無法解決錯誤,就只要推到整個硬件設(shè)計,重新進(jìn)行PCB版圖繪制等工作了。在對硬件系統(tǒng)進(jìn)行必要測試后,可以使用仿真器或干脆將完畢軟件某些程序燒錄到硬件系統(tǒng)中ROM中進(jìn)行系統(tǒng)功能測試。對也許浮現(xiàn)問題,需要從軟件和硬件兩個方面考慮,這一階段需要大量測試程序?qū)ο到y(tǒng)各個某些進(jìn)行分別測試,才干找到問題所在。當(dāng)軟件和硬件可以較好地配合,完畢預(yù)定功能后,并不意味著單片機(jī)設(shè)計工作已經(jīng)完畢,設(shè)計者還要對系統(tǒng)進(jìn)行全面測試,保證系統(tǒng)在絕大多數(shù)狀況下都可以正常工作。當(dāng)這一切都完畢后,設(shè)計者還應(yīng)當(dāng)將產(chǎn)品自身放到實(shí)際工作環(huán)境中進(jìn)行測試,這時往往會暴露出諸多原先沒有考慮到問題。5.系統(tǒng)完善和升級產(chǎn)品設(shè)計達(dá)到預(yù)期規(guī)定后,設(shè)計者還需要最后對整個產(chǎn)品進(jìn)行進(jìn)一步優(yōu)化和組合,并在可容許狀況下為系統(tǒng)預(yù)留升級接口。當(dāng)所有環(huán)節(jié)完畢后,設(shè)計者可以宣布產(chǎn)品設(shè)計結(jié)束,進(jìn)入產(chǎn)品工業(yè)生產(chǎn)階段。完整單片機(jī)系統(tǒng)設(shè)計流程如圖1-1所示。圖1-1單片機(jī)系統(tǒng)設(shè)計流程1.4本次設(shè)計任務(wù)原則51或52單片機(jī)均有一種全雙工串行通信接口,運(yùn)用這個接口,咱們可以以便地與其她單片機(jī)系統(tǒng)或PC機(jī)進(jìn)行串行通信,互相互換數(shù)據(jù)。這對單片機(jī)而言意義重大,不但可以將單片機(jī)采集實(shí)時數(shù)據(jù)傳播到電腦上,并且也能接受電腦對單片機(jī)控制指令,實(shí)現(xiàn)對單片機(jī)智能化控制。運(yùn)用PC機(jī)實(shí)現(xiàn)對LED點(diǎn)陣顯示屏系統(tǒng)控制,拓寬了單片機(jī)系統(tǒng)應(yīng)用領(lǐng)域,使咱們控制系統(tǒng)可以充分運(yùn)用計算機(jī)強(qiáng)大數(shù)據(jù)解決能力和管理功能,使系統(tǒng)功能更加完善?;诖四?,進(jìn)行LED點(diǎn)陣顯示屏PC機(jī)控制系統(tǒng)設(shè)計,其重要工作涉及:(1)單片機(jī)系統(tǒng):實(shí)現(xiàn)和PC機(jī)串行通信。(2)硬件設(shè)計:實(shí)現(xiàn)單片機(jī)與PC機(jī)之間串口電平轉(zhuǎn)換;完畢9616點(diǎn)陣顯示屏硬件連線。(3)軟件設(shè)計:涉及顯示某些和通信某些。顯示某些通過匯編語言完畢程序編寫,對顯示內(nèi)容,顯示方式,顯示速度等方面進(jìn)行控制;通信某些運(yùn)用VB設(shè)計通信軟件,用于數(shù)據(jù)傳播,運(yùn)用匯編語言進(jìn)行單片機(jī)通信程序設(shè)計協(xié)調(diào)與通信軟件屬性值。第2章總體方案設(shè)計按照單片機(jī)系統(tǒng)設(shè)計辦法,這一階段,我需要考察實(shí)際應(yīng)用環(huán)境,擬定LED點(diǎn)陣顯示屏控制系統(tǒng)單片機(jī)與PC機(jī)串行通信某些整體設(shè)計方案。它涉及系統(tǒng)可行性分析、功能分析、單片機(jī)選型以及系統(tǒng)硬軟件分工問題。2.1可行性分析這次設(shè)計是為了拓展我學(xué)習(xí)面,增強(qiáng)我在具備理論基本上動手能力,是一次難得鍛煉自己動手能力和團(tuán)隊協(xié)作能力好機(jī)會。本次需要我和樊丹同窗共同完畢。我做上位機(jī)某些,即PC機(jī)與單片機(jī)串行通信某些;樊丹同窗做下位機(jī)某些,即單片機(jī)與LED點(diǎn)陣顯示屏顯示某些;實(shí)物焊接某些和程序調(diào)試某些有咱們共同完畢。LED點(diǎn)陣顯示屏在實(shí)際生活中已經(jīng)得到了廣泛應(yīng)用,但對于一種只具備理論基本初學(xué)者來說,可以通過自己和團(tuán)隊努力達(dá)到這一高度,進(jìn)行這樣設(shè)計內(nèi)容,是很有必要,也是完全可行。2.2系統(tǒng)功能分析單片機(jī)以其體積小、重量輕、價格便宜、功耗低、控制功能強(qiáng)及運(yùn)算速度快等特點(diǎn),故在國民經(jīng)濟(jì)建設(shè)、軍事及家用電器等領(lǐng)域均得到廣泛應(yīng)用。但由于其數(shù)據(jù)存儲容量和數(shù)據(jù)解決能力相對較低,普通狀況下采用通信手段使它與PC機(jī)相連,把所采集到數(shù)據(jù)傳送到PC機(jī)上,通過PC機(jī)進(jìn)行數(shù)據(jù)解決,然后發(fā)回單片機(jī)進(jìn)行執(zhí)行,實(shí)現(xiàn)其功能。由于單片機(jī)輸入,輸出電平是TTL電平,而PC機(jī)配備是原則串行接口RS-232C,兩者電氣規(guī)范不一致,因而要完畢單片機(jī)與PC機(jī)數(shù)據(jù)通信,必要對單片機(jī)輸出TTL電平進(jìn)行電平轉(zhuǎn)換。MAX232芯片可以把輸入+5V電壓轉(zhuǎn)換成為RS-232C輸出電平所需10V電壓。單片機(jī)與PC機(jī)串行通信原理圖如圖2-1所示。圖2-1串行通信原理圖2.3單片機(jī)選型由于LED點(diǎn)陣顯示屏由單片機(jī)控制某些和顯示驅(qū)動某些構(gòu)成,單片機(jī)我選取最常用STC公司STC89C52RC單片機(jī)。此單片機(jī)與MCS-52產(chǎn)品指令系統(tǒng)完全兼容,具備擦寫100,000次8KFLASH閃存,512字節(jié)內(nèi)部RAM,32個I/O口線,3個16位定期/計數(shù)器,8個中斷源,一種全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。其性能指標(biāo)如表2-1所示。表2-1STC89C52RC單片機(jī)性能指標(biāo)單片機(jī)片內(nèi)FLASH存儲器內(nèi)部RAMI/O口計數(shù)器串行口A/D中斷源空閑和掉電模式類型型號SRAMSTC89C52RC8KB5124316UART無8有同步,STC89C52RC可降至0Hz靜態(tài)邏輯操作,并支持兩種軟件可選掉電工作模式??臻e方式停止CPU工作,但容許RAM,定期/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中內(nèi)容,但振蕩器停止工作并禁止其她所有部件工作直到下一種硬件復(fù)位。其10萬次可擦寫功能且經(jīng)濟(jì)適中,高性價比使其應(yīng)用廣泛。咱們使用是STC89C52RC最小系統(tǒng)電路,涉及:電源、時鐘脈沖、復(fù)位電路和程序存儲器設(shè)定電路,普通顯示屏只需要顯示中文較少,不必進(jìn)行外接存儲擴(kuò)展。2.4系統(tǒng)硬軟件功能設(shè)計對系統(tǒng)各項功能進(jìn)行劃分,擬定軟件和硬件分工問題,依照圖2-1單片機(jī)和串行口通信原理圖,實(shí)現(xiàn)該方案需要從通信合同(串行口通信總線原則接口)、硬件電路和程序設(shè)計3方面考慮。1.通信合同通信合同是對數(shù)據(jù)傳送方式規(guī)定,涉及數(shù)據(jù)格式定義和數(shù)據(jù)位定義等。通信方式必要遵從統(tǒng)一通信合同。串行通信合同涉及同步合同和異步合同兩種。要想保證通信成功,通信雙方必要有某些列商定,例如:作為發(fā)送方,必要懂得什么時候發(fā)送信息、發(fā)什么、對方與否收到、收到內(nèi)容有無錯、要不要重發(fā)、怎么告知對方結(jié)束等;作為接受方,必要懂得對方與否發(fā)送了信息、發(fā)是什么、收到信息與否有錯、如果有錯怎么告知對方重發(fā)、怎么判斷結(jié)束等。這種商定就叫做通信規(guī)程或合同,它必要在編程之前擬定下來。要想使通信雙方可以對的地互換信息和數(shù)據(jù),在合同中對什么時候開始通信、什么時候結(jié)束通信、何時互換信息等問題都必要做出明確規(guī)定。只有雙方都對的地辨認(rèn)并遵守這些規(guī)定才干順利地進(jìn)行通信。這些都體當(dāng)前起始位、數(shù)據(jù)位、奇偶校驗位、停止位商定、波特率設(shè)立和軟件掛鉤(握手)信號商定等方面。原則接口,就是明擬定義若干信號線,是接口電路原則化、通用化,借助串行通信接口原則,不同類型數(shù)據(jù)通信設(shè)備很容易實(shí)現(xiàn)它們之間串行通信連接。原則異步串行通信接口有如下幾類:RS-232C、RS-232E、RS-449、20mA電流環(huán)、USB等通用接口。原則接口即通信合同采用基本RS-232C,但是在詳細(xì)運(yùn)用上可以依照實(shí)際需要進(jìn)行變化。例如,當(dāng)對傳播數(shù)據(jù)規(guī)定不高時,可以采用無奇偶校驗位10位數(shù)據(jù);而需要數(shù)據(jù)穩(wěn)定性時,可以采用軟件握手辦法。依照單片機(jī)對串行口使用尚有初始化串口規(guī)定,起通信合同也需要結(jié)合單片機(jī)信號和實(shí)際使用中通信方式而定。2.硬件電路如圖2-1所示,數(shù)據(jù)通信硬件上采用最簡樸3線制,將單片機(jī)和PC機(jī)串口3個引腳(TXD、RXD、GND)進(jìn)行連接,即將PC機(jī)和單片機(jī)發(fā)送數(shù)據(jù)線TXD和接受數(shù)據(jù)線RXD交叉相連,兩者信號地GND直接相連,而其她信號線如握手信號線均不用,采用軟件握手方式,這樣既可以實(shí)現(xiàn)預(yù)定通信任務(wù),又可以簡化電路設(shè)計。由于單片機(jī)TTL邏輯電平和RS-232電氣特性完全不同,RS-232邏輯0電平規(guī)定為+5V~+15V之間,邏輯1電平規(guī)定為-5V~-15V之間,因而在將PC機(jī)和單片機(jī)TXD和RXD交叉相連時必要進(jìn)行電平轉(zhuǎn)換,這里我選用MAX232電平轉(zhuǎn)換芯片。3.傳播程序單片機(jī)和PC機(jī)通信,在程序上涉及兩某些內(nèi)容:一是單片機(jī)C51程序或匯編程序,完畢數(shù)據(jù)收發(fā);二是PC機(jī)串行通信程序和界面編制;三是系統(tǒng)下位機(jī)顯示程序編寫。2.5本章小結(jié)通過總體方案設(shè)計,已有比較成型系統(tǒng)設(shè)計框架,對軟硬件系統(tǒng)設(shè)計有了明確分工。結(jié)論如下:擬定單片機(jī)和PC機(jī)串行數(shù)據(jù)通信系統(tǒng)通信方案,如圖2-1;選取STC公司STC89C52RC;串行通信總線原則接口采用RS-232C;串行數(shù)據(jù)通信硬件上采用3線制,選用MAX232芯片進(jìn)行PC機(jī)與單片機(jī)之間電平轉(zhuǎn)換;單片機(jī)顯示程序可以通過C51等匯編集成開發(fā)環(huán)境進(jìn)行程序匯編。此時,可以開始進(jìn)行系統(tǒng)硬件設(shè)計。第3章系統(tǒng)硬件設(shè)計在這一階段,作者將對各個模塊硬件某些進(jìn)行詳細(xì)設(shè)計。這某些涉及單片機(jī)系統(tǒng)設(shè)計、電源設(shè)計、外圍功能模塊選取、I/O口分派、單片機(jī)與PC機(jī)之間通信線路及互相間電平轉(zhuǎn)換電路設(shè)計等。3.1單片機(jī)系統(tǒng)設(shè)計3.1.1單片機(jī)基本概念單片微型計算機(jī)(SingleChipMicrocomputer)簡稱單片機(jī),是指在一塊芯片上集成了中央解決器CPU、隨機(jī)存儲器RAM、程序存儲器ROM或EPROM、定期器/計算器、中斷控制器以及串行和并行I/O接口等部件,構(gòu)成一種完整微型計算機(jī)。當(dāng)前新型單片機(jī)內(nèi)尚有A/D及D/A轉(zhuǎn)換器、高速輸入/輸出部件、DMA通道、浮點(diǎn)運(yùn)算等特殊功能部件。因而,單片機(jī)只需要和恰當(dāng)軟件及外部設(shè)備相連接,就可以構(gòu)成一種完整單片機(jī)控制系統(tǒng)。單片機(jī)構(gòu)成構(gòu)造如圖3-1所示。圖3-1單片機(jī)構(gòu)造構(gòu)成普通單片機(jī)功能與微機(jī)系統(tǒng)類似,但由于應(yīng)用領(lǐng)域不同,單片機(jī)與普通微機(jī)在詳細(xì)構(gòu)造上也有一定區(qū)別,區(qū)別有如下幾點(diǎn):(1)普通微機(jī)CPU重要面向數(shù)據(jù)解決,因而其發(fā)展重要集中在提高CPU數(shù)據(jù)解決能力、計算速度和精度上。如今微機(jī)中CPU均采用浮點(diǎn)運(yùn)算、使用流水線作業(yè)、多級高速緩沖(CACHE)等技術(shù)。CPU主頻達(dá)到2~3GHz,字長普遍為32位。單片機(jī)重要面向智能控制、實(shí)時數(shù)據(jù)等方面,這對數(shù)據(jù)解決能力規(guī)定較低,因而,與微機(jī)相比,單片機(jī)多數(shù)仍不支持浮點(diǎn)運(yùn)算、CPU使用串行工作方式、頻率多不大于100MHz。在中、小規(guī)模應(yīng)用相對較少,但隨著新技術(shù)發(fā)展,32位機(jī)應(yīng)用也會更加廣泛。(2)通用微機(jī)中存儲器構(gòu)成構(gòu)造重要應(yīng)用大容量內(nèi)存解決來提高CPU對數(shù)據(jù)存儲和讀取速度。現(xiàn)今微機(jī)內(nèi)存容量達(dá)到了數(shù)百兆字節(jié)(MB),存儲體系多采用多體、并讀技術(shù)和段、頁等管理模式,使用專門對MMU進(jìn)行內(nèi)存管理。單片機(jī)存儲器組織構(gòu)造相對簡樸,存儲器直接與單片機(jī)總線相連,CPU使用直接物理荀子存儲單元,存儲空間普通在64KB如下。(3)通用微機(jī)I/O接口考慮到原則外部設(shè)備接入需要,使用原則總線進(jìn)行連接,提供了原則設(shè)備即插即用接口。單片機(jī)應(yīng)用系統(tǒng)外部設(shè)備須依照需要不同設(shè)計不同外部接口電路。雖然單片機(jī)內(nèi)部有CPU、RAM、I/O接口、定期器等,但在實(shí)際設(shè)計中,依然需要擴(kuò)展若干接口電路,如時鐘電路,復(fù)位電路等。3.1.2STC89C52RC單片機(jī)外部引腳功能STC89C52RC系列單片機(jī)普通采用3總封裝方式:40引腳DIP封裝、44引腳PLCC封裝和44引腳QFP封裝。40引腳DIP封裝各引腳分布方式如圖3-2所示。圖3-2STC89C52RC系列單片機(jī)DIP封裝引腳圖DIP封裝40引腳涉及兩個電源引腳(VCC40腳、GND20腳)、兩個外接時鐘引腳(XTAL119腳、XTAL218腳)、4個控制線引腳(RST9腳、ALE/PROG30腳、PSEN29腳、EA/VPP31腳)和32個I/O口引腳。3.1.3驅(qū)動電源設(shè)計為了簡化硬件電路設(shè)計構(gòu)造,減少電源成本,應(yīng)用穩(wěn)壓管7805搭配兩個470電容、兩個0.1磁片電容104和一種12V電源輸入圓孔型插座,可實(shí)現(xiàn)+12V和+5V兩種輸出電壓,為拓展STC89C52RC其她功能提供了較好電壓輸出保證,如果直接選取+5V電源將無法滿足規(guī)定,這在同樣消費(fèi)產(chǎn)生性價比是不言而喻。由于每次通過PC機(jī)對單片機(jī)寫入程序,必要要進(jìn)行電源斷電和通電,這對實(shí)時通信讀寫形式很不以便,為此,作者設(shè)計了在電源主電路中增長一種按鈕開關(guān),這樣在程序?qū)懭牖蚋闹芯筒恍枰蔚綦娫唇涌诰€。其電源構(gòu)造原理圖如圖3-3所示。圖3-3電源設(shè)計原理圖3.1.4時鐘電路設(shè)計STC89C52RC單片機(jī)時鐘脈沖頻率范疇為0~80MHz,其內(nèi)部具備一種反向放大器構(gòu)成振蕩器,XTAL1和XTAL2分別為振蕩電路輸入端和輸出端,時鐘可以由內(nèi)部產(chǎn)生。內(nèi)部時鐘電路如圖3-4所示。在XTAL1(19腳)和XTAL2(18腳)引腳上外接定期元件,內(nèi)部振蕩電路就產(chǎn)生自激振蕩。定期元件普通采用石英晶體和電容構(gòu)成并聯(lián)諧振回路。作者選用是12MHz晶振和兩個30pF電容。圖3-4時鐘接入電路3.1.5復(fù)位電路STC89C52RC復(fù)位引腳(RESET)是第9腳,當(dāng)此引腳連接高電平超過2個機(jī)器周期,即可產(chǎn)生復(fù)位動作。以12MHz時鐘脈沖為例,每個時鐘脈沖為1μS,兩個機(jī)器周期為2μS,因而,在第9腳上連接一種2μS高電平脈沖,即可產(chǎn)生復(fù)位動作。最簡樸就是只有一種電阻跟一種電容就可構(gòu)成可靠上電復(fù)位電路,普通選取1K電阻和22μF電容;為了滿足人工復(fù)位需要,可在電容兩邊并聯(lián)一種按鈕復(fù)位開關(guān)和220電阻。構(gòu)造圖如圖3-5所示。圖3-5上電復(fù)位和按鈕復(fù)位電路3.1.6單片機(jī)串口波特率發(fā)生器選取1.串口基本構(gòu)造結(jié)識異步收發(fā)器(UART)。從原理上說,一種UART涉及發(fā)送器電路、接受器電路和控制電路。89C52單片機(jī)UART也集成在其中,構(gòu)成一種全雙工串口,全雙工通信容許同步雙向傳送數(shù)據(jù),因而,全雙工是一對單向配備,它規(guī)定兩端通信設(shè)備都具備完整和獨(dú)立發(fā)送和接受能力。通信示意圖如圖3-6(c)所示。這個口既可以實(shí)現(xiàn)串行異步通信,也可以作為同步移位寄存器使用。圖3-6串行通信數(shù)據(jù)傳送三種方式(a)單工方式;(b)半雙工方式;(c)全雙工方式89C52系列單片機(jī)串行口通過引腳RXD(P3.0串行口數(shù)據(jù)接受端),和引腳TXD(P3.1串行口數(shù)據(jù)發(fā)送端)與外部設(shè)備(如PC機(jī)、單片機(jī)等)進(jìn)行串行通信。圖3-7為89C52單片機(jī)內(nèi)部串行口構(gòu)造示意圖。圖3-7單片機(jī)內(nèi)部串行口構(gòu)造示意圖圖中共有兩個串行口雙緩沖寄存器(SBUF),一種是發(fā)送寄存器,一種是接受寄存器,便于89C52單片機(jī)能以全雙工方式進(jìn)行通信。串行發(fā)送時,從片內(nèi)總線向發(fā)送寄存器寫入數(shù)據(jù);串行接受時,從接受寄存器向片內(nèi)總線讀出數(shù)據(jù)。它們都是可尋址寄存器,但由于發(fā)送和接受不能同步進(jìn)行,因此給這兩個寄存器賦與同一地址99H。在接受方式下,串行數(shù)據(jù)通過引腳RXD進(jìn)入,由于在接受寄存器之間尚有覺得寄存器,從而構(gòu)成了串行接受雙緩沖構(gòu)造,以避免在數(shù)據(jù)接受過程中浮現(xiàn)幀重疊錯誤,也就是說,避免下一幀數(shù)據(jù)來時,前一幀數(shù)據(jù)還沒有走。在發(fā)送方式下,串行通信通過引腳TXD發(fā)出。與接受數(shù)據(jù)狀況不同,發(fā)送數(shù)據(jù)時由于CPU是積極,不會發(fā)生幀重疊錯誤,引起發(fā)送電路不需要雙緩沖構(gòu)造,這可以提高數(shù)據(jù)發(fā)送速度。2.串口工作方式對比(1)方式0工作方式0是以8位數(shù)據(jù)為一幀進(jìn)行傳播,不設(shè)起始位和停止位,先發(fā)送或接受最低位,其一幀格式如下:……D0D1D2D3D4D5D6D7……方式0為移位寄存器輸入/輸出方式。可外接移位寄存器以擴(kuò)展I/O口,也可以外接輸入/輸出設(shè)備。8位串行數(shù)據(jù)是從RXD輸入或輸出。TXD是用來輸出同步脈沖。在方式0下,串行數(shù)據(jù)從RXD引腳輸出,TXD引腳輸出移位脈沖。CPU將數(shù)據(jù)寫入發(fā)送寄存器時,及時啟動發(fā)送,將8位數(shù)據(jù)以固定波特率從RXD輸出,地位在前,高位在后。發(fā)送完一幀數(shù)據(jù)后,發(fā)送中斷標(biāo)志TI由硬件置位。當(dāng)串行口以方式0接受數(shù)據(jù)時,先置位容許接受控制位REN。此時,RXD位串行數(shù)據(jù)輸入端,TXD仍為同步脈沖移位輸出端。當(dāng)RI=0和REN=1同步滿足時,開始接受。當(dāng)接受到第8位數(shù)據(jù)時,將數(shù)據(jù)移入接受寄存器,并有硬件置位RI。波特率為。(2)方式1工作方式1位波特率可變10位異步通信接口方式。一幀信息涉及1個起始位、8個數(shù)據(jù)位和1個停止位,其一幀格式如下:起始D0D1D2D3D4D5D6D7停止當(dāng)數(shù)據(jù)寫入發(fā)送緩沖SBUF時,就啟動發(fā)送。串行數(shù)據(jù)從TXD引腳輸出,發(fā)送完一幀數(shù)據(jù)后,就有硬件置位TI。在REN=1時,RXD引腳確認(rèn)開始位,開始接受一幀數(shù)據(jù)。只有那個RI=0且停止位為1時,停止位送入RB8,8位數(shù)據(jù)才干進(jìn)入接受寄存器SBUF,并置接受中斷標(biāo)志位RI=1,向CPU發(fā)送中斷祈求,完畢一次接受過程。否則,所接受一幀信息將丟失,接受器復(fù)位,并重新檢測由“1”至“0”負(fù)跳變,以便接受下一幀數(shù)據(jù)信息。注意:接受中斷標(biāo)志位應(yīng)由軟件清除,普通串行口以方式1工作時,SM2設(shè)立為“波特率=(3-1)(3)方式2和方式3串行口工作在方式2和方式3時,被定義為9位異步通信接口。她們每幀數(shù)據(jù)構(gòu)造是11位:最低位是起始位(0),其后是8位數(shù)據(jù)位(低位在先),第10位是顧客定義位(SCON中TB8或RB8),最后一位是停止位(1)。其幀格式為:起始D0D1D2D3D4D5D6D7D8停止由TXD端輸出一幀11位數(shù)據(jù),附加第9位來自SCON寄存器TB8位,用軟件置位或復(fù)位。它可作為數(shù)據(jù)奇偶校驗位。當(dāng)數(shù)據(jù)寫入SBUF指令時,就啟動發(fā)送器發(fā)送。發(fā)送一幀信息后,置位中斷標(biāo)志TI=1,容許中斷。在REN=1時,串行口采樣TXD引腳開始接受一幀數(shù)據(jù)。在接受到附加第9位數(shù)據(jù)后,當(dāng)RI=0或SM2=0時,第9位數(shù)據(jù)才進(jìn)入RB8,8位數(shù)據(jù)才干進(jìn)入接受寄存器,并由硬件置位中斷標(biāo)志RI=1;否則信息丟失。方式2和方式3工作原理相似,唯一差別是方式2波特率是固定,當(dāng)SMOD=0時,波特率=fosc/64,SMOD=1時,波特率=fosc/32;而方式3波特率是可變,與定期器T1溢出率關(guān)于。3.定期器工作方式2分析依照定期器/計數(shù)器工作方式邏輯電路構(gòu)造圖3-7可知,在工作方式2下,把16位計數(shù)器提成兩某些,即以TL0作計數(shù)器,以TH0作預(yù)置寄存器,初始化時計數(shù)初值分別裝入TL0和TH0中。當(dāng)計數(shù)溢出后,不像通過軟件辦法,而是由預(yù)置寄存器TH0以硬件辦法自動給計數(shù)器TL0重新加載,變軟件加載為硬件加載,這樣不但省去了顧客程序中重裝指令,并且也有助于提高定期精度。圖3-7定期器/計數(shù)器工作方式2邏輯電路構(gòu)造圖4.采用定期器T1工作在方式2作為波特率發(fā)生器因素單片機(jī)串行通信速率也稱為波特率。在串行通信中,收發(fā)雙方波特率要有一定商定,本次設(shè)計我選取定期器/計數(shù)器1作為串行口波特率發(fā)生器使用,以擬定串行通信速率,由于如果定期器/計數(shù)器0已在方式3下工作,則定期器/計數(shù)器1只能在工作方式0.方式1或方式2下工作,由于它運(yùn)營控制位TR1及計數(shù)器溢出標(biāo)志位TF1已被定期器/計數(shù)器0借用。在此狀況下,定期器/計數(shù)器1沒有計數(shù)溢出標(biāo)志位TF1可供使用,因而智能把計數(shù)溢出直接送給串行口。當(dāng)作為波特率發(fā)生器使用時,只需要設(shè)立好工作方式,便可自動運(yùn)營。如果停止工作,只需要送入一種把它設(shè)立為工作方式3方式控制字就可以了,由于定期器/計數(shù)器1不能在工作方式3下使用,如果硬把它設(shè)立為工作方式3,定期器/計數(shù)器就停止工作了。串行通信工作方式0和方式1波特率是固定,不需要計算初值,而串行通信工作方式2和方式3需要計算計數(shù)器計數(shù)初值,在通信系統(tǒng)設(shè)計中,將采用定期器1在方式2下工作,以便設(shè)立波特率,由于定期器1工作方式2為自動重裝初值8位定期器/計數(shù)器模式,因此用它來做波特率發(fā)生器是最適當(dāng)。3.2單片機(jī)串口電平轉(zhuǎn)換電路設(shè)計3.2.1通信合同采用方案采用理論根據(jù)單片機(jī)應(yīng)用越來越廣泛,由于單片機(jī)運(yùn)算功能較差,往往需要借助計算機(jī)系統(tǒng),因而單片機(jī)和PC機(jī)進(jìn)行串行通信更具備實(shí)際意義,通信核心在于互傳數(shù)據(jù)信息。51系列單片機(jī)內(nèi)部串行口具備通信功能,該串行口可以作為通信接口,運(yùn)用該串行口與PC機(jī)串行口COM1或COM2進(jìn)行串行通信,將單片機(jī)采集數(shù)據(jù)傳送到PC機(jī)中,由PC機(jī)高檔語言或數(shù)據(jù)庫語言對數(shù)據(jù)進(jìn)行整頓及記錄等復(fù)雜解決就能滿足實(shí)際應(yīng)用需要。RS-232C是由美國電子工業(yè)協(xié)會(EIA)正式發(fā)布,在異步串行通信中應(yīng)用最廣泛原則總線。RS-232C原則(合同)全稱是EIA-RS-232C原則,其中EIA(ElectronicIndustryAssociation)代表美國電子工業(yè)協(xié)會,其中RS是RecommendedStandard縮寫,代表推薦原則,232是標(biāo)記符,C代表RS-232最新一次修改(1969年),在這之前,有過RS-232A、RS-232B原則,它規(guī)定連接電纜和機(jī)械、電氣特性、信號功能及傳送過程。當(dāng)前,計算機(jī)上串行通信端口(RS-232)是原則配備端口,已經(jīng)得到廣泛應(yīng)用,計算機(jī)上普通均有1~2個原則RS-232C串口,即通道COM1和COM2。但是由于單片機(jī)系統(tǒng)使用是TTL電平,其串口輸出信號也是如此,但是串行通信中使用RS-232C通信合同,兩者電平不相似,在和單片機(jī)進(jìn)行通信時候,還需要有進(jìn)行電平轉(zhuǎn)換外圍電路,使單片機(jī)串行通信合同相匹配。2.RS-232C電氣特性TXD和RXD引腳上電平定義:邏輯1(MARK)=-5~-15V邏輯0(SPACE)=+5~+15VRTS、CTS、DSR、DTR和DCD等控制線電平定義:信號有效(接通,ON狀態(tài),正電壓)=+5V~+15V信號無效(斷開,OFF狀態(tài),負(fù)電壓)=-5V~-15V對于RS-232C信號而言,當(dāng)傳播電平絕對值不不大于3V時,電路可以有效地檢查出來,介于-5V~+5V之間電壓無意義,低于-15V或者高于+15V電壓也以為是無效。因此,RS-232C是用正負(fù)電壓來表達(dá)邏輯狀態(tài),與TTL以高低電平表達(dá)邏輯狀態(tài)規(guī)定不同。為了可以同計算機(jī)接口或終端TTL器件連接,必要在RS-232C與TTL間進(jìn)行電平邏輯變換。設(shè)計中采用簡化9芯D型連接器(DB9)。對于普通雙工通信,僅需要幾條信號線就可以實(shí)現(xiàn),涉及一條發(fā)送線、一條接受線和一條地線。也就是RS-232C連接最簡樸形式:3線制,如圖3-8。查資料可知,表3-1為計算機(jī)9芯串口引腳信號功能。表3-1計算機(jī)9芯串口引腳信號功能腳號信號名稱方向信號功能1DCD對方至PC機(jī)PC機(jī)收到遠(yuǎn)程信號(載波信號)2RXD對方至PC機(jī)PC機(jī)接受數(shù)據(jù)3TXDPC機(jī)至對方發(fā)送數(shù)據(jù)4DTRPC機(jī)至對方PC機(jī)準(zhǔn)備就緒5GND—信號地6DSR對方至PC機(jī)對方準(zhǔn)備就緒7RTSPC機(jī)至對方PC機(jī)祈求接受數(shù)據(jù)8CTS對方至PC機(jī)雙方以切換到接受狀態(tài)(清除發(fā)送)9RI對方至PC機(jī)告知PC機(jī),線路正常(振鈴批示)圖3-8RS-232C連接最簡樸3線制3.2.2電平轉(zhuǎn)換電路設(shè)計1.設(shè)計辦法和其她單片機(jī)器件同樣,作為單片機(jī)原則外圍電路,串口電平轉(zhuǎn)換也有專用芯片,固然,也可以使用三極管自行調(diào)節(jié)電平匹配。本次設(shè)計采用專用芯片進(jìn)行電平轉(zhuǎn)換辦法。當(dāng)前應(yīng)用較為廣泛是使用集成電路轉(zhuǎn)換器件,如MC1488、SN75150芯片可實(shí)現(xiàn)TTL電平到EIA電平轉(zhuǎn)換,而MC1489、SN75154可實(shí)現(xiàn)EIA電平到TTL電平轉(zhuǎn)換。作者采用是可實(shí)現(xiàn)TTL和RS-232C雙電平轉(zhuǎn)換MAX232芯片。其芯片引腳圖如圖3-9所示。圖3-9MAX232芯片引腳圖MAX232芯片引腳簡介MAX232引腳重要有5個某些:外接電容:有4個外接電容、進(jìn)行電壓匹配和電源去耦;TTL輸入:電路TTL電平輸入引腳11和10引腳,連接單片機(jī)TXD輸出端口;TTL輸出:電路TTL電平輸出引腳12和9引腳,連接單片機(jī)RXD輸出端口;RS-232輸入:兩路RS-232電平輸入引腳——13和8引腳,連接RS-232TXD輸出端口;RS-232輸出:兩路RS-232電平輸入引腳——14和7引腳,連接RS-232RXD輸出端口。通過MAX232TTL和RS-232輸入/輸出端口,自動地調(diào)節(jié)單片機(jī)串口TTL電平信號和RS-232串行通信信號電平匹配。電平轉(zhuǎn)換芯片與單片機(jī)連接電路地址分派和連接:只列出和系統(tǒng)有關(guān)、核心某些單片機(jī)和各個模塊管腳連接和有關(guān)地址分派。MAX23210引腳:MAX232TTL電平輸入引腳,連接單片機(jī)TXD,TTL串口輸入信號;MAX2329引腳:MAX232TTL電平輸出引腳,連接單片機(jī)RXD,TTL串口輸出信號;MAX2327引腳:MAX232RS-232電平輸出引腳,連接RS-232RXD,TTL串口輸入信號;MAX2328引腳:MAX232RS-232電平輸入引腳,連接RS-232TXD,TTL串口輸出信號。MAX232和單片機(jī)串口連接電路如圖3-10所示:圖3-10MAX232和單片機(jī)串口連接電路圖用于MAX232元器件選取一種+5V電源、4個0.13.3繪制電路原理圖到當(dāng)前為止,詳細(xì)硬件系統(tǒng)功能框圖完畢后,可以繪制電路原理圖,完畢電路原理圖繪制后,使用Protel99SE工具軟件繪制硬件系統(tǒng)PCB版圖,這時重要是實(shí)現(xiàn)器件在電路板上分布、詳細(xì)封裝、信號地和電源線走線分布等。原理圖生成運(yùn)用Protel99SE電路設(shè)計軟件,將單片機(jī)和PC機(jī)串行通信方案用原則電路原理圖表達(dá),為電路板生成提供根據(jù)。原理圖設(shè)計流程圖如圖3-11所示。圖3-11原理圖設(shè)計流程2.串行通信原理圖(如圖3-12(a)(b)、(c))所示:圖3-12(a)單片機(jī)與PC機(jī)串行通信原理圖(電平轉(zhuǎn)換某些)圖3-12(b)單片機(jī)與PC機(jī)串行通信原理圖(單片機(jī)某些)圖3-12(c)單片機(jī)與PC機(jī)串行通信原理圖(電源某些)3.4LED點(diǎn)陣顯示屏選取及連線作為系統(tǒng)輸出顯示某些,LED顯示屏選取及連線至關(guān)重要,要達(dá)到顯示中文效果,普通地,可以通過4塊88點(diǎn)陣顯示屏構(gòu)成一種1616顯示屏,用于一種中文顯示。設(shè)計構(gòu)成員設(shè)計方案是做一種顯示6字點(diǎn)陣顯示屏系統(tǒng),因此需要24塊88點(diǎn)陣顯示屏。88點(diǎn)陣顯示屏是由某些發(fā)光二極管組合而成,其工作原理和矩陣鍵盤類似。在列輸出一組高低電平同步在行也輸出一組高低電平,當(dāng)高低電平滿足LED發(fā)光管導(dǎo)通條件,LED發(fā)光。用LED點(diǎn)陣顯示時候,以共陽(列接高電平有效)為例,開第一列(即在這個列上輸出有效高電平),其她列關(guān)閉,在16個行上輸出一組數(shù)據(jù),延時,第一列顯示完畢,關(guān)第一列(低),開第二列(高),在行上重新輸出下一組數(shù)據(jù),延時,……,如此重復(fù)16次,一種中文顯示完畢。下面附帶闡明LED內(nèi)部構(gòu)造(圖3-13)及引腳連線圖(圖3-14)如下:圖3-13LED內(nèi)部構(gòu)造圖圖3-14LED引腳接線圖上圖是一種1616顯示屏引腳接線圖,作者采用是6個中文顯示屏連線,可以采用類似辦法進(jìn)行連線。特別注意是,在硬件制作上要特別小心,不能錯誤焊接管腳,那樣在調(diào)試程序過程中會浮現(xiàn)亂碼狀況。會耗費(fèi)相稱長時間進(jìn)行排查。由于條件有限,設(shè)計沒有采用PCB電路板連接,改用引線連接,辦法是簡陋且效率較低,但是對于一種初學(xué)者和一種摸索者,可以通過自己設(shè)計制作達(dá)到同樣成果,這對于后來學(xué)習(xí)和工作相稱有用。3.5本章小結(jié)通過系統(tǒng)硬件設(shè)計得到了點(diǎn)陣LED顯示屏控制系統(tǒng)單片機(jī)與PC機(jī)串行通信某些電路原理圖,并擬定了構(gòu)成整個系統(tǒng)元器件清單,為系統(tǒng)硬件制作做好鋪墊。元件清單如下:單片機(jī):89C52,制作硬件選用是STC89C52RC;OSC(Y1):晶振,選取12MHz,便于設(shè)立波特率;MAX232:單片機(jī)串行口電平轉(zhuǎn)換芯片;COM1:PC機(jī)串口1D1、D2:發(fā)光二極管SW-PB:用于復(fù)位按鈕;S2、電源開關(guān);R1(1K)、R2(220)、R3(1K)、R4(560);電容C1(22F)、C2(30pF)、C3(30pF)、C4(0.1F)、C5(0.1F)、C5(0.1F)、C6(0.1F)、C7(0.1F)、C10(470F穩(wěn)壓管LM7805;88點(diǎn)陣顯示屏24塊,導(dǎo)線若干;第4章系統(tǒng)軟件設(shè)計4.1PC機(jī)串行通信程序4.1.1功能分析由于PC機(jī)和單片機(jī)之間都具備串行通信端口,因而經(jīng)常使用串口完畢兩者之間數(shù)據(jù)互換。這就需要在PC機(jī)設(shè)計相應(yīng)串口通信程序。在Windows環(huán)境下,串口是系統(tǒng)資源一某些。應(yīng)用程序要使用串口進(jìn)行通信,必要在使用之前想操作系統(tǒng)提出資源申請規(guī)定(打開串口),通信完畢之后必要釋放資源(關(guān)閉串口)。在Windows系統(tǒng)函數(shù)中,均包括了支持通信中斷功能。對串口通信而言,Windows為相應(yīng)串口設(shè)備開放了顧客定義輸入緩沖區(qū)和輸出緩沖區(qū),應(yīng)用程序只能對輸入/輸出緩沖區(qū)進(jìn)行操作,數(shù)據(jù)進(jìn)出串口操作均由系統(tǒng)后臺完畢。以接受為例,系統(tǒng)每接受到一種字符就會產(chǎn)生一種低檔硬件中斷,系統(tǒng)串口驅(qū)動程序?qū)⒔邮艿阶址腿胼斎刖彌_區(qū),此時應(yīng)用程序就可以通過訪問輸入程序區(qū)地址內(nèi)容就可以收到相應(yīng)字符信息。而作者需要實(shí)現(xiàn)重要功能是實(shí)現(xiàn)對中文字符32個點(diǎn)陣數(shù)據(jù)進(jìn)行相應(yīng)操作,使下位機(jī)可以依照上位機(jī)指令實(shí)現(xiàn)中文字符更新。在數(shù)據(jù)更新較快時候可以實(shí)現(xiàn)同單片機(jī)實(shí)時通信;在需要顯示數(shù)據(jù)不需要經(jīng)常變動時,可以實(shí)現(xiàn)下位機(jī)脫機(jī)工作。4.1.2串行通信兩種方式Windows為顧客提供了兩種實(shí)現(xiàn)串行通信方式:(1)使用串口通信控件針對串口通信,微軟公司專門提供了MSComm控件,使用該控件進(jìn)行串口通信設(shè)計十分以便,程序員不必花時間去理解而較為復(fù)雜API函數(shù)。通過簡樸修改控件屬性和使用控件提供辦法,就可以實(shí)現(xiàn)對串口配備、完畢串口接受和發(fā)送數(shù)據(jù)。(2)使用WindowsAPI應(yīng)用程序接口Windows中,串口是以文獻(xiàn)形式被打開和訪問。串口和串口通信驅(qū)動需要使用設(shè)備控制塊(DCB、Device、ControlBlock)進(jìn)行配備。應(yīng)用程序使用API函數(shù)CreateFile打開串口,ReadFile讀串口,CreateEvent建立事件對象和CloseHandle關(guān)閉串口。使用串口通信控件進(jìn)行串口程序開發(fā)極為以便,如果不需要對串口進(jìn)行高檔控制,普通多選取使用MScomm控件進(jìn)行開發(fā)。4.1.3MSComm控件簡介MSComm控件具備完善數(shù)據(jù)發(fā)送和接受功能。通過此控件,PC機(jī)可以運(yùn)用串行口與其她設(shè)備實(shí)現(xiàn)輕松連接,簡樸高效地實(shí)現(xiàn)設(shè)備間通信。此控件事件響應(yīng)有兩種解決方式,事件驅(qū)動方式:由MSComm控件OnComm事件捕獲并解決通信事件,此外還可以檢查和解決通信錯誤;查詢方式:通過檢查CommEvent屬性值來查詢當(dāng)前事件和出錯信息。1.MSComm控件重要屬性和辦法CommPort:設(shè)立并返回通信端標(biāo)語,其取值范疇為116,確省為1;Settings:設(shè)立或返回波特率、奇偶校驗位、數(shù)據(jù)位、停止位參數(shù)。默認(rèn)值“9600,N,8,1”PortOpen:打開和關(guān)閉串行端口;RThreshold:設(shè)立返回要接受字符數(shù)。接受字符后,如果被設(shè)為0,則不產(chǎn)生OnComm事件,如果為n,則接受緩沖區(qū)收到n個字符時MSComm控件產(chǎn)生OnComm事件;Input:從接受緩沖區(qū)移走一字符串;Output:向發(fā)送緩沖區(qū)發(fā)送一字符串。2.CommEvent屬性如果在通訊過程中發(fā)生錯誤事件,就會引起OnComm事件并由CommEvent屬性代碼反映錯誤類型,可依照該屬性值來執(zhí)行不同程序操作或數(shù)據(jù)解決。如下是某些屬性常數(shù)值及其含義:ComEvSend:其值為1,發(fā)送緩沖區(qū)內(nèi)容少于SThreshold指定值;ComEvReceive:其值為2,接受緩沖區(qū)內(nèi)字符數(shù)達(dá)到SThreshold值,該事件在緩沖區(qū)中數(shù)據(jù)被移走前將持續(xù)產(chǎn)生;ComEventRxParity:其值為1009,奇偶校驗;ComEvEOF:其值為7,接受數(shù)據(jù)中浮現(xiàn)文獻(xiàn)結(jié)束字符。4.1.4使用VB開發(fā)串行通信軟件VisualBasic(VB)是Microsoft公司推出一款先進(jìn)開發(fā)軟件,使用它可以以便快捷地開發(fā)出實(shí)用Windows環(huán)境下應(yīng)用程序。使用VB開發(fā)程序,開發(fā)者無需耗費(fèi)大量時間在界面設(shè)計上,只需專注于程序重要功能實(shí)現(xiàn),因而在實(shí)際應(yīng)用中得到了廣大開發(fā)人員愛慕。使用Microsoft公司Activex控件MicrosoftCommunication(MSComm)實(shí)現(xiàn)串口通信,該控件在安裝VB是已經(jīng)在Windows中進(jìn)行了注冊,因而在開發(fā)時,可以直接調(diào)用該控件。下面簡介使用VB開發(fā)串行通信程序詳細(xì)環(huán)節(jié)。1.顧客界面設(shè)計安裝VisualBasic6.0后,選取“開始”/“程序”“MicrosoftVisualBasic6.0中文版”啟動程序,在如圖4-1所示“新建工程”對話框中選取“原則EXE”選項建立一種“原則EXE”工程,此時界面如圖4-2所示。圖4-1新建工程圖4-2新建工程界面在進(jìn)行程序設(shè)計前,一方面需要使用左側(cè)工具箱各項控件,繪制如圖6-3所示應(yīng)用程序運(yùn)營時顧客界面。圖4-3添加顧客界面繪制完程序應(yīng)用界面后,還需要添加串口通信所用到MSComm控件。一方面應(yīng)將該控件添加到當(dāng)前項目中,其環(huán)節(jié)如下:選取菜單命令“工程/部件”,彈出如圖4-4所示部件對話框。在對話框中選中“MicrosoftCommcontrol6.0”單擊對話窗中“擬定”按鈕添加MSComm控件。圖4-4添加控件此時在左側(cè)工具箱中浮現(xiàn)圖標(biāo),表達(dá)該控件已經(jīng)添加到當(dāng)前項目中。使用圖標(biāo)在顧客界面上添加MSComm控件,最后完畢界面如圖4-5所示。圖4-5最后完畢界面2.程序初始化程序初始化某些重要完畢對串口設(shè)立工作,涉及串口選取、波特率及幀構(gòu)造設(shè)立、打開串口以及發(fā)送和接受觸發(fā)時間控制等。此外,在程序運(yùn)營前,還應(yīng)當(dāng)進(jìn)行清除發(fā)送和接受緩沖區(qū)工作。這某些工作是在窗體載入時候完畢,因而應(yīng)當(dāng)將初始化程序代碼放在From_Load()函數(shù)中,雙擊編輯界面中窗體某些,在From_Load()函數(shù)中添加如下代碼,這樣就完畢了程序初始化工作。初始化程序代碼:PrivateSubForm_Load()DimsAsStringDimBaudRateAsStringDimParityAsStringDimDataAsStringDimStopBitAsStringDimSerialAsStringMSComm1.InputLen=1'設(shè)立并返回每次Input屬性從接受緩沖區(qū)中讀取字符數(shù),為0時,Input將讀取接受緩沖區(qū)所有字符MSComm1.InputMode=0'是指返回類型,Input屬性所檢取是文本MSComm1.PortOpen=True'打開串行口1MSComm1.SThreshold=0'不觸發(fā)發(fā)送事件MSComm1.SThreshold=1'每一種字符到發(fā)送緩沖區(qū)都觸發(fā)接受事件MSComm1.InBufferCount=0'清除發(fā)送緩沖區(qū)數(shù)據(jù)MSComm1.OutBufferCount=0'清空接受緩沖區(qū)數(shù)據(jù)Text1.Text=""'清空發(fā)送文本框Text2.Text=""'清空接受文本框EndSub在初始化程序中串口1工作方式被設(shè)為“9600,n,8,1”3.發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)過程是通過單擊“發(fā)送”按鈕完畢。程序應(yīng)完畢下面工作:單擊發(fā)送按鈕,程序檢查發(fā)送文獻(xiàn)框中內(nèi)容與否為空,如果為空,則終結(jié)發(fā)送命令,警告并返回;檢測串口與否打開,如果串口關(guān)閉,則打開串口;將發(fā)送文本框中內(nèi)容送入MSComm發(fā)送緩沖區(qū),等待數(shù)據(jù)發(fā)送。有關(guān)流程圖(圖4-6)及程序代碼如下:PC機(jī)發(fā)送程序流程圖:圖4-6PC機(jī)發(fā)送程序流程圖發(fā)送程序代碼:PrivateSubCommand1_Click()'命令按鈕1(發(fā)送數(shù)據(jù)按鈕)事件DimxAsString'定義字符串變量xDiminstring1AsString'定義變量instring1為字符串變量Diminstring2AsString'定義變量instring2為字符串變量DimIN1AsIntegerDimIN2AsIntegerDimnAsIntegerDimmAsIntegerDimR(1To65536)AsByte'每次最多可發(fā)65536個字節(jié)數(shù)據(jù)(作為數(shù)組)OnErrorResumeNext'錯誤解決IfText1.Text=""Then'如果文本框1(發(fā)送數(shù)據(jù)顯示窗體)中內(nèi)容為空x=MsgBox("發(fā)送數(shù)據(jù)不能為空",16)'就調(diào)用MsgBox()函數(shù),鼠標(biāo)對話框顯示發(fā)送數(shù)據(jù)不能為空EndIfIfCheck1.Value=vbUncheckedAndCheck3.Value=vbUncheckedThen'若不選“HEX發(fā)送”則MSComm1.Output=Text1.TextElseIfCheck1.Value=vbUncheckedAndCheck3.Value=vbCheckedThenMSComm1.Output=Text1.Text+Chr$(13)+Chr$(10)+labyear.Text+"年"+labmonth.Text+"月"+labday.Text+"日"+"星期"+labweek.Text+Chr$(13)+Chr$(10)+"時間"+labtime.Text+Chr$(13)'由串行口1發(fā)送文本框1(發(fā)送數(shù)據(jù)顯示窗口)中文本數(shù)據(jù)ElseIfCheck1.Value=vbCheckedAndCheck3.Value=vbUncheckedThen'否則,若選取“HEX發(fā)送”不選發(fā)送日期,將發(fā)送數(shù)據(jù)轉(zhuǎn)換為十六進(jìn)制發(fā)送m=1Forn=1ToLen(Text1.Text)Step3instring1=Mid(Text1.Text,n,1)instring2=Mid(Text1.Text,n+1,1)If(AscB(insting1)<48)Or((57<AscB(insting1))And(AscB(insting1)<65))Or((70<AscB(insting1))And(AscB(insting1)<97))Or(AscB(insting1)>102)Thenx=MsgBox("發(fā)送數(shù)據(jù)只能為單字節(jié)十六進(jìn)制數(shù)('0'-'9'、'A'-'F'、'a'-'f'),兩個單字節(jié)十六進(jìn)制數(shù)之間用空格鍵隔開,十六進(jìn)制數(shù)背面不要加H",16)EndIfIf(AscB(insting2)<48)Or((57<AscB(insting2))And(AscB(insting2)<65))Or((70<AscB(insting2))And(AscB(insting2)<97))Or(AscB(insting2)>102)Thenx=MsgBox("發(fā)送數(shù)據(jù)只能為單字節(jié)十六進(jìn)制數(shù)('0'-'9'、'A'-'F'、'a'-'f'),兩個單字節(jié)十六進(jìn)制數(shù)之間用空格鍵隔開,十六進(jìn)制數(shù)背面不要加H",16)EndIfIfAscB(instring1)<=57ThenIN1=AscB(instring1)-48ElseIf65<=AscB(instring1)AndAscB(instring1)<=70ThenIN1=AscB(instring1)-55Else:IN1=IN1=AscB(instring1)-87EndIfIfAscB(instring2)<=57ThenIN1=AscB(instring2)-48ElseIf65<=AscB(instring2)AndAscB(instring2)<=70ThenIN1=AscB(instring2)-55Else:IN1=IN1=AscB(instring2)-87EndIfR(m)=IN1*16+IN2m=m+1NextReDimR0(1Tom-1)AsByte'定義動態(tài)數(shù)組R0Forn=1Tom-1R0(n)=R(n)NextMSComm1.Output=R0ElseIfCheck1.Value=vbCheckedAndCheck3.Value=vbCheckedThenMSComm1.Output=Text1.Text+labyear.Text+"年"+labmonth.Text+"月"+labday.Text+"日"+"星期"+labweek.Text+Chr$(13)+Chr$(10)+"時間"+labtime.Text+Chr$(13)'由串行口1發(fā)送文本框1(發(fā)送數(shù)據(jù)顯示窗口)中文本數(shù)據(jù)EndIfFori=1To0000'延時NextEndSub4.接受數(shù)據(jù)接受數(shù)據(jù)某些使用了事件響應(yīng)方式。當(dāng)串口收到數(shù)據(jù)使得數(shù)據(jù)緩沖區(qū)內(nèi)容超過了1字節(jié)時,就會引起comEvReceive時間,運(yùn)用Command3(接受按鈕)負(fù)責(zé)捕獲這一事件,并負(fù)責(zé)將發(fā)送緩沖區(qū)內(nèi)容輸入文本框顯示。當(dāng)程序發(fā)生緩沖區(qū)溢出之類錯誤時,可以由程序負(fù)責(zé)將緩沖區(qū)清空。如果選取了以“十六進(jìn)制輸出”方式,可將發(fā)送數(shù)據(jù)進(jìn)行相應(yīng)轉(zhuǎn)換,并以十六進(jìn)制方式進(jìn)行輸出。其程序代碼和顯示成果對比(圖4-7)如下:接受程序代碼:PrivateSubcommand3_click()'命令按鈕3(接受數(shù)據(jù)按鈕)事件DiminstringAsString'定義變量instring為字符串變量DimmAsIntegerText2.Text=""'清除文本框(接受數(shù)據(jù)顯示窗口)中數(shù)據(jù)IfCheck2.Value=vbUncheckedThen'若不選“HEX接受”,則MSComm1.Inpu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能化系統(tǒng)安裝工程合同書
- 水利水電工程勞務(wù)承包合同
- 土地使用權(quán)征收補(bǔ)償合同協(xié)議
- 影視劇本供應(yīng)與購買合同書版
- 規(guī)范化離婚合同文本范文
- 采購合同簡版-鋼材專項
- 婦科培訓(xùn)課件模板
- 小學(xué)生唱音階課件圖片
- 公證員網(wǎng)絡(luò)知識產(chǎn)權(quán)考核試卷
- 墨水制備實(shí)驗室建設(shè)與管理考核試卷
- 供應(yīng)鏈管理課件第5章供應(yīng)鏈合作伙伴選擇與評價
- 4D現(xiàn)場管理培訓(xùn)ppt課件(PPT 45頁)
- 餐飲店面投資預(yù)算(900平方米)
- 預(yù)應(yīng)力工程施工質(zhì)量驗收標(biāo)準(zhǔn)
- 檢驗科危急值管理.
- 旅游資源規(guī)劃與開發(fā)實(shí)訓(xùn)指導(dǎo)書
- 立體幾何專題:距離和角
- DBJ-T01-43-2003_(北京)通用家庭居室裝飾工程質(zhì)量驗收標(biāo)準(zhǔn)
- 16949客戶滿意度調(diào)查分析報告
- 生產(chǎn)線外包方案
- 2.通信光纜線路(管道)工程施工及驗收技術(shù)規(guī)程要點(diǎn)
評論
0/150
提交評論