畢業(yè)設計(論文)-基于CDMA技術的燈光照明控制系統(tǒng)_第1頁
畢業(yè)設計(論文)-基于CDMA技術的燈光照明控制系統(tǒng)_第2頁
畢業(yè)設計(論文)-基于CDMA技術的燈光照明控制系統(tǒng)_第3頁
畢業(yè)設計(論文)-基于CDMA技術的燈光照明控制系統(tǒng)_第4頁
畢業(yè)設計(論文)-基于CDMA技術的燈光照明控制系統(tǒng)_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

題目基于CDMA技術的燈光照明系統(tǒng)控制學院物理電氣信息學院專業(yè)電氣工程及自動化年級07級自動化(1)班學生學號學生姓名指導教師年月日摘要本文基于CDMA技術的燈光照明控制系統(tǒng)為主要研究內容,圍繞“單片機連接CDMA模塊控制燈光照明系統(tǒng)”這一熱點課題,利用美國Cygnal公司的C8051F020和中興集訊公司的MG801A模塊制作了一款具有短信控制燈光照明的數據終端,給出系統(tǒng)的總體設計方案并闡述了數據終端的設計方法。利用此數據終端,以CDMA網絡為平臺在PC機與應用系統(tǒng)之間實現遠程數據的無線傳輸。課題完成了基于CDMA技術的燈光照明控制系統(tǒng)的硬件設計和軟件開發(fā),成功實現了通過單片機控制CDMA模塊來實現控制燈光照明系統(tǒng)。在系統(tǒng)硬件開發(fā)中,設計了單片機與MG801A接口電路、單片機與手機模塊的接口電路以及外圍電路。數據終端軟件設計采用C語言,分析了軟件中個功能模塊的設計思想以及實現流程,并完成了單片機初始化程序、主程序的設計。關鍵詞:CDMA;C8051F020;MG801A模塊;遠程控制;燈光照明Abstract目錄緒論........................................................11.1本課題研究的意義..............................................11.2課題國內、外研究現狀..........................................11.3主要研究工作..................................................2第二章設計的總體思路..............................................3第三章CDMA網絡技術................................................4第四章數據終端的硬件設施..........................................54.1數據終端的總體設計............................................54.2無線通信模塊設計.............................................74.3單片機控制模塊設計...........................................114.4驅動電路模塊設計............................................154.5RS-232C串口模塊設計........................................164.6穩(wěn)壓電源模塊設計............................................174.7系統(tǒng)抗干擾設計..............................................18第五章數據終端的軟件設計.........................................195.1主函數設計...................................................205.2單片機初始化程序設計.........................................215.3模塊初始化程序設計...........................................255.4串口中斷設計.................................................26第六章結論與展望.................................................306.1結論..........................................................306.2展望.........................................................30致謝..............................................................31參考文獻..........................................................32附錄A.............................................................33附錄B.............................................................34物理電氣信息學院本科畢業(yè)論文第1章.緒論1.1本課題研究的意義進入21世紀,移動通信技術以驚人的速度迅猛發(fā)展。無論是CDMA、2.5G還是3G,移動通信的發(fā)展目標都是在更好的語音通信之外向用戶提供更加豐富多彩的高速無線數據應用。移動通信技術的進步使得高速的無線數據應用成為可能。高速的無線數據應用的發(fā)展也將使新的移動通信技術更具吸引力。隨著3G的逐漸成熟,基于無線數據應用的各項服務展現出其獨特的魅力。短消息業(yè)務作為GSM/C單片機和PC機通過串行接口構成的多微機系統(tǒng)己經廣泛應用于工業(yè)控制、環(huán)境監(jiān)測等場合,這些系統(tǒng)大多采用RS232,RS485或是有線Modem的通信方式,雖然經濟實用,但是有線數據傳輸方式很大程度上限制了其使用的場合。遠程監(jiān)控系統(tǒng)大多采用接入Internet或Intranet的方式實現,這些方式己經應用在視頻會議、遠程加工或遠程診斷等領域。但是接入Internet一般要按時間計費或租用專線、Intranet需要鋪設專用線纜,成本高。在數據量不大、需要長時間連接或所要監(jiān)控的現場節(jié)點位置經常變化的情況下這兩種方法都不合適。針對這種情況,可以利用無線公共網進行數據傳輸的方法,即在傳統(tǒng)的單片機系統(tǒng)中利用支持短消息業(yè)務的手機模塊進行無線數據傳輸。而監(jiān)控終端也不再僅局限于PC機,也可以是移動電話或其他終端。這樣,在許多工業(yè)控制控領域,對于信息點分布廣、難以集中、有線通信鋪線工程浩大、有線數據傳輸難以實現的情況下,采用短消息的方式利用無線公共網絡實現無線數據傳輸成為解決問題的好辦法。無線數據傳輸網絡結構如圖1.1所示。1.2課題國內、外研究現狀1.3主要研究工作本文在總結了前人關于GSM/SMS通信系統(tǒng)各種研究和應用的基礎上,利用單片機控制CDMA模塊實現短消息遠程控制燈光照明系統(tǒng)。本課題的主要工作:(1)查詢關于本課題的一些資料,編輯整理有用的信息。(2)對單片機的合理選型及其外圍電路的設計、CDMA模塊的選擇和整個系統(tǒng)的軟件設計。(3)深入理解C8051F系列單片機的特點和功能;CDMA模塊選擇中興集訊公司的MG8O1(4)采用Portel99SE作為系統(tǒng)硬件設計的開發(fā)工具,設計系統(tǒng)電路原理圖。數據終端的單片機程序開發(fā)以Cygnal公司的UE2集成開發(fā)環(huán)境為開發(fā)平臺,其軟件包括主程序、單片機初始化、模塊初始化、短消息收發(fā)子程序。第2章.設計的總體思路2.1硬件模塊介紹通過對模塊的選型,采用Cygnal公司的C8051F020作為數據終端的主控芯片,無線通信模塊選擇中興集訊公司的MG8O1A模塊,來設計基于CDMA技術的燈光照明控制系統(tǒng)?;贑DMA技術的燈光照明控制系統(tǒng)功能劃分可分為五個模塊,即單片機控制模塊、無線通信模塊、被控對象模塊、RS232串口模塊和穩(wěn)壓電源模塊等。總的實現框架主要分為兩部分:(1)單片機循環(huán)檢測無線CDMA通信模塊否有手機數據發(fā)送,如果有數據,就把接收到的數據進行存儲和處理,然后通過繼電器來控制燈光照明系統(tǒng)。如下圖所示:(2)通過無線通信模塊傳輸給PC機進行顯示并保存或者由PC機把控制參數通過無線通信模塊傳輸給單片機,單片機按要求對被控對象進行控制。如下圖所示:2.2軟件模塊介紹軟件模塊的設計是基于所選芯片的類型,對各自的芯片進行軟件的開發(fā)。主要有單片機主程序、單片機初始化、短消息收發(fā)子程序、中斷程序。整個程序采用實時多任務程序設計技術,層次化和模塊化的設計思想。每個模塊都具有其獨立性。2.3無線通信模塊介紹無線通信模塊作為數據終端的無線收發(fā)模塊,它是通過短消息的方式接收和發(fā)送數據。本系統(tǒng)的無線通信模塊是中興公司的MG801A,這是一個具有完整功能的CDMA移動通信模塊,通過串口可以實現對此模塊的控制和數據傳輸。MG801A模塊是標準工業(yè)級一體化應用模塊,具有高通信質量、高抗干擾、高保密性、容量大、輻射小、低功耗和體積小的特點。模塊通過80腳的插座與外圍電路進行接口,要完成的硬件設計包括電源接口、開關機控制、通信接口。此設計在第三章介紹。第3章.CDMA網絡技術3.1CDMA網絡的特點CDMA是碼分多址的英文縮寫,它是數字技術的分支,是在擴頻通信技術上發(fā)展起來的一種嶄新而成熟的無線通信技術。目前中國的CDMAIX網是世界上最大的CDMA網絡。該網絡始建于1999年,建成于2002年并正式投入商用,經過一期、二期和三期建設,網絡規(guī)模逐步擴大和完善,己成為成熟和穩(wěn)定的網絡。CDMA網絡已經覆蓋全國,能夠實現全國無限制漫游。其主要特點:(1)系統(tǒng)容量大電頻率是有限的資源,在當今移動用戶猛增而頻率資源日趨緊張的情況下,提高系統(tǒng)的頻譜利用率,增加用戶容量是一個重要的課題。因此,CDMA有著特別的優(yōu)勢。按理論分析和實測結果,在保持用戶正常通話的情況下,以相同的頻帶作比較,CDMA的容量是GSM的4倍。(2)采用語音激活技術,可提高系統(tǒng)容量據統(tǒng)計,人們在通話過程中,通常只有35%的時間在講話,而65%的時間處于聽對方講話、語句間停頓或其它等待狀態(tài)。在CDMA系統(tǒng)中,采用了相應的語音編碼技術,使手機所發(fā)射的功率隨著用戶語音編碼的需求來作調整,當用戶講話時語音編碼器輸出速率高,發(fā)射機所發(fā)射的平均功率增大,而當用戶不講話時發(fā)射的平均功率很小,這就是語音激活技術CDMA可以方便而充分地運用語音激活技術,使各用戶之間的干擾大大減小,從而可提高系統(tǒng)容量。(3)扇區(qū)劃分技術,有利于提高系統(tǒng)容量在蜂窩網絡工程設計時,常采用扇區(qū)劃分技術,這就是蜂窩基站利用定向天線的定向特性,把蜂窩小區(qū)分成不同的扇區(qū)。對于FDMA和TDMA,采用扇區(qū)劃分技術不能增加系統(tǒng)容量,而CDMA由于自身的特性,采用該技術后,隨著各用戶之間多址干擾分量的減少可增加系統(tǒng)容量。(4)軟容量當通信系統(tǒng)采用FDMA和TDMA多址技術時,蜂窩小區(qū)的信道數量按規(guī)劃確定后,若某一時刻小區(qū)信道已被全部占用而又有新的用戶打進時(如遇高峰期業(yè)務繁忙或用戶越區(qū)切換的情況),便不可以接納新用戶了,只有等到有空閑信道時才可接通。CDMA具有所謂“軟容量”的特點,在遇到上述情況時,還允許接納少量用戶。在這種情況下,雖然對通話質量稍有影響,但對于解決通信高峰期的阻塞和提高用戶越區(qū)切換的成功率非常有益。(5)越區(qū)軟切換在FDMA和TDMA系統(tǒng)中,若手機需要越區(qū)切換時,新的小區(qū)必須要有空閑信道。當有空閑信道時,移動臺的收發(fā)頻率都要作相應的調整,這稱之為硬切換。其切換過程是先切斷原通話信道,然后才與新的小區(qū)基站接通新的通路,這種先斷后通的切換方式會引起通信的短暫間斷,或產生“咔嗒”聲,切換時間也較長。而在CDMA系統(tǒng)中,由于所有小區(qū)都可以使用相同的頻率,小區(qū)之間是以不同碼型來區(qū)分的。當CDMA手機越區(qū)切換時,不需要改變頻率,只需對碼序列作相應的調整,這稱之為軟切換。其優(yōu)點是先與新基站接通新通路,而后才切斷原通路,這樣便克服了硬切換的缺點,加上CDMA還具有軟容量的特點,故其切換的成功率要遠大于FDMA和TDMA。(6)應用了分集接收技術,克服多徑衰落,亦可減小發(fā)射功率由于移動通信使用環(huán)境的復雜性和手機的移動性,接收到的信號往往是多個反射波的疊加,會形成多徑衰落現象。為了解決多徑衰落對通信質量產生的不利影響,CDMA系統(tǒng)可以采用它特有的分集接收技術,將多徑信號分離出來,分別接收,再進行同相位信號疊加,這不僅克服了多徑衰落帶來的不利影響,提高了話音的質量,還等效增加了接收有用信號的功率,或等效增加了發(fā)射信號的功率。這也是CDMA系統(tǒng)發(fā)射功率相對很低的原因之一。(7)保密性能好CDMA采用了擴頻技術,該技術將發(fā)射信號的頻譜擴展到一個頻段,從而使發(fā)射的信號完全隱蔽在噪聲和干擾之中,不易被發(fā)現和接收。其次,在通信過程中,所傳輸的數據經過與用戶號碼對應的隨機碼的變換序列調制后再傳輸,以使通信保密。因此,CDMA可以防止有意或無意的竊取,具有良好的保密性能。(8)發(fā)射功率低由于在CDMA系統(tǒng)中,可采用多種特有的技術來提高系統(tǒng)性能,所要求的發(fā)射功率大大降低,可減少對人體的輻射影響,也有利于減輕電池甚至手機的重量,延長電池使用時間。(9)頻率規(guī)劃和管理簡單FDMA和TDMA系統(tǒng)的頻率規(guī)劃和管理比較復雜,動態(tài)管理就更復雜。而在CDMA系統(tǒng)中,所有用戶可以使用相同的頻率,不需要動態(tài)分配,其頻率規(guī)劃和管理都很簡單。3.2無線通信模塊3.2.1CDMA模塊MG801A的介紹CDMA模塊是繼CDMA手機外又一種非常重要的CDMA移動通信系統(tǒng)終端設備,它是傳統(tǒng)調制解調器與CDMA無線移動通信系統(tǒng)相結合的一種數據終端設備,因此也叫無線調制解調器。它的出現給CDMA的發(fā)展注入了新的活力,改變了傳統(tǒng)的以話音為主的通信手段,打開了CDMA網絡數據通信及其應用的大門。凡是使用調制解調器的地方大多數可以用CDMA模塊代替,而CDMA模塊卻沒有一般調制解調器在地域、線路方面的限制,所以基于這種模塊,以CDMA網絡作為無線傳輸網絡,可以開發(fā)出多種前景樂觀的各類應用產品。在國內已經使用的CDMA模塊有Bellware的BCM-860L、AnyDATA的DTU-800、WAVECOM的Q2385C56等。本次設計選用的是中興集訊公司開發(fā)生產的MG801A-CDMA模塊,該模塊提供的峰值數據傳輸率高達153kbPs,無須為了數據性能而犧牲語音性能,它的容量接近于以前的CDMA系統(tǒng)容量的兩倍(比TDMA和GSM更好),且具有待機時間長、容量大、輻射小、低功耗、體積小的特點。MG801A系列CDMA模塊是ZTEiT基于CDMA2000REV0標準的工業(yè)級應用模塊,工作頻段為800MHz。通過接口連接器和天線連接器分別接UIM卡和天線。對于模塊所提供的TTL電平的232接口,單片機可通過串口直接與之相連進行異步串行通信,該接口提供單片機與模塊命令和數據傳輸通道。單片機通過串口發(fā)送AT,命令實現對CDMA模塊的控制,并完成短消息的發(fā)送、接收和存儲。MG801A結構如圖3.2所示。模塊主要由電源部分、射頻部分、基帶處理部分、存儲器和系統(tǒng)連接器組成。電源部分用來給模塊供電。RF射頻部分包括三個主要部分:發(fā)射機、接收機和頻率合成器。發(fā)射機將基帶信號進行I/Q制后,上變頻到發(fā)射頻段,并通過功放模塊將射頻信號放大到所需水平;接收機將從天線接收到的射頻信號放大后下變頻到中頻,經濾波后進行I/Q解調;頻率合成器為發(fā)射機和接收機提供所需的LO(本機振蕩器)頻率。存儲器包括工業(yè)標準的SRAM存儲器和Flash存儲器。模塊的核心部分采用的是高通公司的MSM5105作為基帶部分的硬件,內置QDSP2000數字信號處理器,具有語音識別、語音信箱、數據壓縮和消除回聲等功能。3.2.2MG801AMG801A-CDMA模塊通過一個80pin連接器提供外部連接,80pin連接器是管腳中心距為0.5mm的雙排表面貼裝器件。該模塊包括的接口有以下幾個部分構成:電源和開關機控制充電數字I/OLCD接口鍵盤接口通信接口R-UIM接口模數轉換接口音頻接口射頻連接本次設計主要考慮的是電源和開關機控制,通信接口和R-UIM接口。(1)電源系統(tǒng)連接器的71-75引腳是用來為模塊提供輸入電源的,這些引腳被標注為V_MAIN,V_MAIN為模塊內部的PM1000芯片和其它調節(jié)器供電,同時還為射頻部分供電。雖然PM1000芯片能處理很寬的輸入電壓,但射頻放大器將模塊的允許輸入電壓限定在一定的范圍。因此,電源的供電電壓的最小值為3.3VDC,最大值為4.25VDC,典型值為3.8VDC。系統(tǒng)連接器上的第5、6、11、12、45、46、53、54引腳設計時要可靠接地。在設計電源模塊時,必須保證MG80lA的瞬時供電電壓不能超過電源的最大值,否則可能永久性損壞MG8O1A模塊。(2)開關機控制有兩種方法可以使模塊開機,第一種方法是通過系統(tǒng)連接器上的ON/OFF引腳,第二種方法是使用外部充電器。系統(tǒng)連接器上的第51引腳是ON/OFF引腳,在此引腳上加一瞬時低電平會使模塊開機,模塊關機是通過AT指令實現的,關機指令為AT+ZPWROFF。第二種方法是使用外部充電器為模塊供電,如果外部電壓同時加于V_MAIN(Pin71,72,73,74,75)和VCHG(Pin79)就會使模塊開機,當充電電源移走后,模塊會關機。本次設計采用第一種方法,把ON/OFF引腳接到一個按鍵開關上,按鍵開關的另一個引腳直接接地。(3)通信接口MG801A-CDMA模塊提供2路通用異步收發(fā)器,它與串口的數據通信遵從RS-232接口協議。第一路UART利用系統(tǒng)連接器上的8個引腳,其中4個為預定義引腳,軟件還未開放,見表3.1。第二路為可選擇的UART,當第二路用于R-UIM接口時,UART功能不可用,第二路UART只有收/發(fā)兩條數據線。2路UART可作為串行數據端口來傳送數據、測試及調試、下載或升級系統(tǒng)軟件。在本次設計中,串口主要功能是與單片機通信,實現對CDMA模塊的控制。在設計時首先應該考慮MG801A模塊和單片機的串口輸入輸出電平是否匹配,如果電平不匹配,可以通過接入反向二極管實現該電路的電平轉換,否則有可能燒毀模塊。因為本次設計中選擇的單片機供電電壓為3V,單片機與MG80lA進行通信時,單片機與MG801A的串行接口的電壓都是3V左右,都符合TTL電平標準,所以單片機的發(fā)送端/接收端(Pin60/Pin59)與MG80lA的接收端/發(fā)送端(Pin16/15)可以直接連接,實現通信功能。表3.1第一路UART引腳定義信號名稱I/O類型引腳號說明TXDO15發(fā)送數據RXDI16接受數據/CTSI14消除發(fā)送/RTSO13請求發(fā)送RII41預定義DSRI43預定義DCDI47預定義DTRO48預定義(4)R-UIM接口UIM卡是CDMA手機運用的一種智能卡。UIM卡在CDMA系統(tǒng)中所起的作用與GSM系統(tǒng)中的SIM卡所起的作用極其相似,是一種安全機制。UIM提供了個人認證信息,可以允許MS或手機連接網絡。UIM卡可以允許用戶撥打或接聽電話和收發(fā)短消息。使用戶可以安全、方便地使用CDMA網絡提供的各種服務,可以避免由于個別用戶號碼盜用而帶來的經濟損失。UIM卡固定在卡座上,通過卡座的六個引腳與外部連接。MG801A模塊的19引腳(UIM_EN),用來使能外部線性調節(jié)器為UMI卡供電。R_UIM接口電路設計如圖3.3所示。其中AAT3215是美國研諾邏輯科技有限公司(AATI)推出的一款低壓差線性穩(wěn)壓器,該器件具有高性能、低功率的特點。可以為UIM卡提供15mA電流,在此用做UMI卡的開關芯片。AAT3215的輸入電容可以是luF或較大的陶瓷電容和電解電容,在設計中選擇使用典型的luF的陶瓷電容,這是由陶瓷電容的內在屬性決定的,在此起穩(wěn)定輸入的作用,電容盡量靠近輸入引腳。輸出和旁路電容也是選擇的陶瓷電容起到濾波的作用。本課題設計時,盡量將UIM卡座靠近CDMA模塊連接器接口,以提高抗干擾能力。圖3.2R_UIM的接口電路目前中國的CDMAIX網絡系統(tǒng)升級無需更換終端,可全面平滑地向第三代的先進移動通信過渡。用戶端的設備也無需更換,保證用戶的投資不被浪費。未來的第3代移動通信系統(tǒng)雖然有幾種模式,但毫無例外地都是CDMA碼分多址的。隨著通信技術的不斷成熟以及用戶對通信質量越來越高的要求,現有的GSM網絡將不可避免的向W-CDMA演變,而這個演變的過程估計需要若干年。CDMA網絡以其覆蓋范圍廣、使用費用低,技術完善、安全可靠性高等優(yōu)點,是我們可以選擇的網絡。第4章.數據終端的硬件設計4.1數據終端的總體設計(1)單片機控制模塊單片機一方面與PC機或現場采集儀器交換數據,另一方面控制無線通信模塊,由于無線通信模塊使用串口與單片機相連。在本次設計中,采用Cygnal公司的C8051F020作為數據終端的主控芯片。選擇此單片機作為主控芯片不僅僅是因為它具有硬件串口而是基于諸多因素考慮:C805IF020功能強大,幾乎在單片機中包括了所有常用的功能;與普通的8051有相同的內核,開發(fā)容易,而且支持C語言源程序調試。在本次開發(fā)中,主要考慮對C8051F020的一下功能部件的設計:首先,使用一個硬件串口。這個串口的波特率產生是獨立的,使用起來相當靈活。串口1與無線通信模塊連接,與CDMA網絡通信。其次,使用JTAG接口。通過JTAG接口與用戶系統(tǒng)直接連接,不再需要另外的仿真工具,可以在線調試和下載。再次,使用64K字節(jié)大容量閃速存儲器和4352字節(jié)內部數據RAM(4K十256),64KFlashROM可以滿足本次開發(fā)的需要,不需要另外擴展程序存儲器。數據存儲器用來做數據緩沖區(qū)。(2)驅動電路模塊繼電器是電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應用于自動控制電路中,它實際上是用較小的電流去控制較大電流的一種“自動開關”。故在電路中起著自動調節(jié)、安全保護的作用。(3)RS-232CRS-232C(4)UIM卡接口UIM卡是一種安全機制,提供了個人認證信息,允許用戶安全、方便地使用CDMA網絡提供的各種服務。UIM卡固定在卡座上,通過卡座的六個引腳與外部MG801A模塊連接。(5)穩(wěn)壓電源模塊穩(wěn)壓電源模塊設計中,我們采用了工業(yè)級穩(wěn)壓電源芯片,可以保證數據終端工作穩(wěn)定可靠。在硬件設計中采用了模塊化設計思想。采用模塊化設計可以使系統(tǒng)結構清晰,不僅容易設計也容易管理和修改,方便系統(tǒng)測試和調試,有助于提高系統(tǒng)的可靠性和可修改性。同時,模塊化設計也有助于系統(tǒng)開發(fā)的組織管理。以下各節(jié)將詳細敘述各模塊接口的設計情況。4.2單片機控制模塊4.2.1單片機C8051F在嵌入式系統(tǒng)開發(fā)過程中,8051系列一直扮演著一個重要角色。近年來,由于8051的速度低(每一條指令至少需要12個時鐘周期)、功耗高(幾毫安到幾十毫安)和功能少(不能直接處理模擬信號)等等,8051系列單片機似乎已經走到了盡頭。然而,美國Cygnal公司新近推出的高性能的C8051FX系列單片機徹底改變了人們對以前8051單片機速度慢、性能低的印象。C8051F020是完全集成的混合信號系統(tǒng)級芯片SOC,使用Cygnal的專利CIP-51微控制器內核。CPI-51與MCS-51單片機兼容,但是具有其獨特的功能。CygnalC8051F020有100個引腳,是TQFP封裝,工作溫度為-45℃~85CPI-51內核具有標準8052的所有外設部件,包括5個16位的計數器/定時器,兩個全雙工UARI,,256字節(jié)內部RAM,128字節(jié)特殊功能寄存器地址空間及8個字節(jié)寬的I/O口。CIP-51與MCS-51指令集完全兼容,可以使用標準803X/805X的匯編器和編譯器進行軟件開發(fā)。C8051F020內部集成了4K字節(jié)的RAM、64字節(jié)的FlashROM以及2個UARI,串行接口等。該單片機具有片內調試電路,通過4腳的JTAG接口可以進行非侵入式、全速的在系統(tǒng)調試。本次設計選用的是C8051F020作為數據終端的主控芯片,該芯片是一種在系統(tǒng)可編程、完全集成的混合信號系列級MCU芯片。由于采用了高性能的MCU,省掉了大量的外圍器件,如外擴RAM、ROM存儲器和UART串行接口等,使硬件結構大大簡化,提高了系統(tǒng)的可靠性,而且為日后的擴展設計提供了良好的片內資源。與以往的8051系列單片機相比C805lF020具有幾個明顯的優(yōu)點:(1)提高了指令的運行速度C8051F020系列采用CIP-51的CPU模式,廢除了8051機器周期的概念,指令以時鐘周期為運行單位。平均每個時鐘周期可以執(zhí)行完1條單周期指令。與8051相比,在相同的時鐘下,單周期指令運行速度為原來的12倍,全指令集平均運行速度為原來的9.5倍。(2)最小功耗系統(tǒng)的最佳支持C8051F020實現了片內模擬與數字電路的3V供電標準(電壓范圍為2.7~3.6),大大降低了系統(tǒng)功耗;完善的時鐘系統(tǒng)可以保證系統(tǒng)在滿足響應速度要求下,使系統(tǒng)的平均時鐘頻率最低;眾多的復位源使系統(tǒng)在掉電方式下,可隨意喚醒,從而可靈活地實現零功耗系統(tǒng)設計。因此,C805Fl具有極佳的最小功耗系統(tǒng)設計環(huán)境。(3)增強了復位方式C8051F020把8051單一的外部復位變成多源復位,C8051F020提供了多達7分復位產生源:一個片內VDD監(jiān)視器、一個看門狗定時器、一個時鐘丟失檢測器、一個由比較器0和比較器1提供的電壓檢測器、一個軟件強制復位CNVSTR引腳及RST引腳。RST引腳是雙向的可接受外部復位或將內部產生的上電復位信號輸出到RT引腳。除了VDD監(jiān)視器和復位輸入引腳以外,每個復位源都可以由用戶用軟件禁止。(4)增加了中斷源標準的8051只有7個中斷源,CygnalC8051F020單片機擴展了中斷處理。這對于實時多任務系統(tǒng)的處理是很重要的。擴展的中斷系統(tǒng)向CIP-51提供22個中斷源,允許大量的模擬和數字外設中斷。一個中斷處理需要較少的CPU干預卻有更高的執(zhí)行效率。(5)大容量存儲器CIP-51具有標準8051的程序和數據地址配置。像其他單片機一樣有256字節(jié)RAM,另外不同的是C8051F020具有位于外部數據存儲器地址空間的4K字節(jié)的RAM塊和一個用于訪問外部數據存儲器的外部存儲器接口(EMIF)。C805IF020單片機程序存儲器為64K字節(jié)的Flash存儲器。該存儲器可按512字節(jié)為一扇區(qū),編程可以在線編程且不需在片外提供編程電壓,該程序存儲器未用到的扇區(qū)均可由用戶按扇區(qū)作為非易失性數據的存儲區(qū)。(6)先進的系統(tǒng)的調試C805Fl改變了傳統(tǒng)的仿真調試,使用基于標準的JTAG接口(IEEEI149.1)在系統(tǒng)調試。片內JTAG調試電路允許使用安裝在最終應用系統(tǒng)上的單片機進行非侵入式(不占用片內資源)、全速、系統(tǒng)調試。該調試系統(tǒng)支持觀察和修改存儲器和寄存器,支持斷點、觀察點、單步及運行和停機命令。在使用JTAG調試時,所有的模擬和數字外設都可全功能運行。而且它的JTAG邏輯還為在系統(tǒng)測試提供了邊界掃描功能。(7)外部器件的高度集成C8051F020系列單片機在一個芯片內集成了構成一個控制系統(tǒng)所需要的大部分功能部件,包括ADC、PLD、DAC、UART、SPI、PCA、電壓比較器、內部振蕩器、看門狗定時器及電源監(jiān)視器,甚至還有溫度傳感器等等。(8)可編程數字FO和交叉開關C8051F020系列單片機具有標準8051的端口(0,1,2和3)另外還有4個附加的端口(4,5,6和7),這些端口I/O的工作情況與標準8051相似,但有一些改進。每個端口I/O引腳都可以被配置為推挽或漏極開路輸出。在標準8051中固定的“弱上拉”可以被總體禁止,這為低功耗應用提供了進一步節(jié)電的能力。最獨特的改進是引入了數字交叉開關。這是一個大的數字開關網絡,允許將內部數字系統(tǒng)資源映射到P0,Pl,P2和P3的端口I/O引腳。與具有標準復用數字I/O的微控制器不同,這種結構可支持所有的功能組合。可通過設置交叉開關控制寄存器,使片內的計數器/定時器、串行總線、硬件中斷、ADC轉換啟動輸入、比較器輸出以及微控制器內部的其它數字信號出現在端口I/O引腳。這一特性允許用戶根據自己的特定應用選擇通用端口I/O和所需數字資源的組合。交叉開關是一個多路選擇器,用于為器件內部的硬件外設分配I/O端口。使用交叉開關的關鍵點如下:為了使用端口0、端口1或端口2的任何一個引腳作為輸出,交叉開關必須被允許。交叉開關譯碼器必須在任何一個數字外設被允許前配置。交叉開關通常在復位時被配置一次(在復位處理過程的最開始處),以后不再進行配置。交叉開關的設置改變器件的引腳分配。每一種交叉開關設置導致惟一的器件引腳分配,如果在交叉開關中允許或禁止外設,則引腳分配將發(fā)生變化。對于輸出端口引腳,其輸出方式(漏極開路或推挽)必須被明確設置,即使那些由交叉開關分配的端口引腳也是如此。例外情況是SMBus上的SDA和SCL及UART的RXD引腳,這些引腳被自動配置為漏極開路。交叉開關分配的輸入引腳(例如NSS或刪TO)是漏極開路還是推挽并不重要。這些引腳被配置為輸入,而與相應端口配置寄存器的設置無關。為了將一個通用I/O引腳配置為輸入。首先,通過與這個引腳相關的端口配置寄存器位設置該引腳為漏極開路輸出方式。其次,與該引腳相關的端口位必須被置“1”,使該引腳處于高阻態(tài)。在任意時刻可以通過讀取相應端口SFR得到端口引腳的電平值,而不管交叉開關寄存器的設置如何或引腳被配置為輸入還是輸出。交叉開關寄存器中的允許位是獨立的,與數字外設本身的允許位是分開的。那些在交叉開關中被允許但在它們自己的SFR中被禁止的外設,仍然控制端口引腳。這就是說,端口引腳可以在任何時刻讀取,但是輸出被占用它的外設所控制,不能作為通用輸出口來訪問。交叉開關配置通過XBAR0,XBAR1,XBAR2寄存器來完成。注意當端口中某些口被配置為模擬輸入端口或外部存儲器接口時,在交叉開關配置中會跳過。交叉開關配置是嚴格按照優(yōu)先級順序的,依次在P0-P3口上進行配置,而不是任意配置的。4.C8051F模塊的接口電路。時鐘電路與復位電路采用的是傳統(tǒng)8051單片機的典型電路,在此不做介紹。(1)JTAG接口電路C8051F了傳統(tǒng)單片機需要專門的仿真器的開發(fā)方法。JTAG接口使用C8051F020的四個專用引腳,它們是:TCK、TMS、TDI、TDO。JTAG引腳的定義如表3.2所示。通過JTAG接口加適配器把用戶最終產品連接到計算機上。JTAG的接口電路如圖3.5。表3.2JTAG引腳的定義引線說明12.7~3.6VDC輸入2,3,9接地4TCK5TMS6TDO7TDI8,10沒接地(2)C8051F020與MG801單片機通過串口對MG801A模塊實現初始化和短消息的收發(fā)控制。單片機與手機模塊都具有異步串行接口,單片機是2.7V~3.6V電壓供電,MG801A供電電壓是3.3V~4.25V,典型值為3.8V。單片機與MG801A進行通信時,單片機與MG801A的串行接口4.3驅動電路模塊4.3.1驅動電路的作用是主電路和控制電路之間,用于對控制電路的信號進行放大的中間電路,在本設計中主要是連接燈光照明設備。本設計中所采用的是晶體管驅動繼電器,繼電器應用于自動控制電路中,它實際上是用較小的電流去控制較大電流的一種“自動開關”。具體電路如下所示:4.3.2NPN晶體管驅動時:當晶體管Q2基極被輸入高電平時,晶體管飽和導通,集電極變?yōu)榈碗娖?,因此繼電器線圈通電,觸點K1吸合。當晶體管Q2基極被輸入低電平時,晶體管截止,繼電器線圈斷電,觸點K1斷開。4.4RS-232C串口模塊4.4.1目前RS-232C是PC機與通信工業(yè)中應用最廣泛的一種串行接口。RS-232C標準(協議)規(guī)定連接電纜和機械、電氣特性、信號功能及傳送過程。RS-232C中規(guī)定的最大傳輸速率為20kbps,在當時看來是足夠了,但隨著科學技術的發(fā)展,20kbPs的通信速度己遠不能滿足人們的需要,因此新的修訂版本中,RS-232C的最高通信速率可以達到2MPbs。通常在單片機系統(tǒng)中,由于其處理能力的限制,最高波特率一般為112kbps左右。現在最長用的RS-232C采用負邏輯規(guī)定的邏輯電平,即邏輯“1”表示-3V~-15V,邏輯“0”表示+3V~+l5V。大家知道RS-232接口不能與單片機的異步串行通信接口直接相連就是因為單片機的TTL電平是正邏輯規(guī)定的邏輯電平。協議規(guī)定傳輸的最大距離為15米,實際應用中可以通過降低通信速率為代價適當延長通信距離。在應用RS-232C時必須了解RS-232C的連接,才能正確使用。RS-232C定義的9芯連接器對應的引腳說明如表3.3所示:對于一般全雙工通信,僅需幾條信號線就可實現,如一條發(fā)送線、一條接收線及一條地線。表3.3串口引腳定義引腳號信號名稱簡稱信號功能1數據載波檢出DCDDCD已接收到遠程信號,通知DTE準備接收2接受數據RXDDTE接收串行數據3發(fā)送數據TXDDTE發(fā)送串行數據4數據終端準備好DTRDTE準備就緒5信號地GND信號地6數傳設備就緒DSRDCE準備就緒7請求發(fā)送RTSDCE請求切換到發(fā)送方式8消除發(fā)送CTRDCE已切換到接收方式9振鈴提示RI通知DTE已被呼叫4.由于RS-232是早期為促進公用電話網絡進行數據通信而制定的標準,其邏輯電平對地是對稱的,與TTL、MOS邏輯電平不同,所以單片機與計算機不能直接相連。本論文中C8051F020與PC機的串行接口數據通信電路以SP3223E芯片為核心,實現電平轉換及串口通信功能。SP3223E是SIPEX公司生產的RS-232收發(fā)器,SP3223E內有一個高效電荷泵,可在單+3.0V~+5.5V電源下產生5.5V的RS-232電平,滿負載時,SP3223E器件可工作于235kbps的數據傳輸率。兼容5V邏輯輸入,內含2路接收、2路發(fā)送串行通信接口,具有低功耗、高數據速率、增強型ESD保護等特性。增強型ESD結構為所有發(fā)送器輸出和接收器輸入提供保護,可承受月15kVIEC1000-4-2氣隙放電、8kVIEC1000-4-2接觸放電和15kV人體放電模式。芯片的最大特點是在串行口無數據輸入的情況下可以靈活的進行電源管理,即當ONLINE為低電平,SHUTDOWN為高電平時,ONLINE功能有效。在正常運行模式下,若芯片在接收引腳沒有檢測到有效信號,將自動進入SHUTDOWN模式,此時耗電luA。在ONLINE功能有效時,如果檢測到接收或發(fā)送引腳有信號輸入,該芯片自動被激活而轉入正常工作狀態(tài)。接口電路如圖3.6所示。 圖3.6串行口與PC機接口電路4.5穩(wěn)壓電源模塊數據終端的工作電壓為12VDC。從圖3.7中可以看出電源分兩部分,一部分為MG801A提供3.3~4.25V的電壓,連接了兩個二極管用來降低電壓和限制電流起到保護的作用;另一部分通過LDO芯片ASI117輸出3V電壓給單片機、UIM卡、SP3223芯片供電。需要說明的是電源要接在VBAT(pin76)上,VBAT引腳為電池電壓引腳,模塊通過這個引腳檢測電池電源,如果檢測不到模塊會自動關機。另外,電源的指標不僅僅有電壓的要求,而且功率等指標都要滿足要求。故采用圖3.7的設計方案。在該系統(tǒng)中,開關電源芯片LM7805完成12V到5V的轉換,電容在電源電路中起濾波作用。電源電路主要由LM7805和AS1117-3.0兩個三端穩(wěn)壓電源模塊構成,電源模塊AS1117-3.0接收LM7805輸入的5V電壓,輸出為整個單片機系統(tǒng)和UIM卡的3V供電電壓。電源的輸出基本不會受外部輸入變動的干擾,而且有效的消除了電磁干擾。圖3.7穩(wěn)壓電源接口電路4.6系統(tǒng)抗干擾抗干擾設計是單片機應用系統(tǒng)設計的重要組成部分,沒有良好的抗干擾措施,系統(tǒng)就無法安全可靠的工作。當然,只能通過系統(tǒng)軟件、硬件設計盡可能的減少干擾帶來的影響,而不可能完全消除干擾。本系統(tǒng)在抗干擾方面考慮了如下的問題。4.合理的設置插接件,電源插接件與信號插接件之間保持一定的距離,在接插座上增加接地針數。信號針盡量分散配置,增大彼此間的距離。印制板元件布局時,相關元件盡量靠近,例如晶振緊靠單片機擺放。電源去耦,在電源線和地線之間并聯330uF和0.luF多個去耦電容,并聯大電容為了去除低頻干擾,并聯小電容為了去除高頻干擾。加寬地線和電源線,加寬后的地線和電源線是信號線的7倍。所有芯片可靠接地,并且接地線繞電路板一圈,但不構成回路。手工布置元件和布線,連線盡可能短。雙面板兩面的線條盡量垂直交叉。采用工業(yè)級的芯片等措施提高抗干擾能力。4.軟件設計可以提高系統(tǒng)的可靠性和抗干擾性,這對于整個系統(tǒng)具有很大意義。一個好的軟件設計,要充分考慮采取必要的抗干擾措施,利用軟、硬件相結合實現系統(tǒng)的抗干擾是單片機控制系統(tǒng)具有的特殊優(yōu)點之一。采用設置軟件陷阱防止程序“跑飛”。在軟件抗干擾技術中重要方面是防止程序出現“跑飛”的情況,即程序可能進入非程序區(qū),造成系統(tǒng)運行的一系列錯誤現象。采用設置程序監(jiān)視器(Watchdog-看門狗)有效的解決死循環(huán)問題。程序執(zhí)行過程中若進入死循環(huán),同時又沒有撞上陷阱,就會使程序長時間運行不下去,無法正常實現程序功能。需要注意的是為了防止復位必須在溢出發(fā)生前由應用軟件重新觸發(fā)WDT,即“喂狗”。如果系統(tǒng)出現了軟件/硬件錯誤時應用軟件不能重新觸發(fā)WDT,則WDT將溢出并產生一個復位,這可以防止系統(tǒng)失控。4.在程序的編寫過程中使用了軟件冗余技術,采用軟件冗余技術,使程序運轉的可靠性大大增加。具體的做法是在手機模塊初始化、短消息的發(fā)送和接收程序中,設置了AT指令的發(fā)送次數,反復發(fā)送AT指令,直到網絡響應才退出。為了提高軟件自身的可靠性,在進行程序設計時,程序分段和采用層次結構,將程序分成若干個具有獨立功能的子程序塊。各個程序塊可以單獨使用,也可以與其他程序塊一起使用。各程序塊之間可通過一些指定的單元進行信息的傳遞。每個程序塊都可單獨進行調整和修改而不影響其他程序塊的功能。采用可測試性設計,在編制軟件的過程中會出現一些錯誤,使程序不能正確執(zhí)行,為了便于查出程序的錯誤,編寫了專門的測試程序,把程序結構本身組織成方便測試的形式,這樣做提高了軟件開發(fā)的效率。第5章.數據終端的軟件設計在前一章已經介紹了以單片機為主控的數據終端的硬件設計過程,它是一種無線數據傳輸設備。該系統(tǒng)總的設計思想:用戶通過手機將相應的信息或控制參數發(fā)送,通過無線CDMA通信模塊將數據接收至單片機,由單片機把接收到的信息傳輸給PC機進行顯示并保存或把控制參數傳輸給現場采集儀器。本系統(tǒng)采用cygnal公司的C8051F020單片機,它具有2個串口UART0和UATR1,設計時UART0通過電平轉換芯片連接PC機,UART1連接MG801A模塊,兩個串口都是雙向通信,這樣單片機既可控制MG801A發(fā)送數據,又可通過MG801A接收數據,同時,還可以接收PC機的數據和給PC機發(fā)送數據。單片機數據流向如圖4.1所示。為了方便單片機程序設計,各功能程序實現模塊化、子程序化。首先針對串口通信編寫串口中斷函數和讀寫串口函數,完成數據的發(fā)送和接收。然后在串口函數的基礎上編寫短消息收發(fā)函數,單片機通過AT指令控制CDMA模塊,實現短消息的收發(fā),專門編寫了對CDMA網絡返回參數的判斷函數,及時獲得有短消息到達的提示信息。短消息發(fā)送前要先設置發(fā)送語言,然后按固定格式進行編碼,最后發(fā)送短消息。在此基礎上編寫主函數,主函數是一個程序不可缺少的部分,有功能子函數作為基礎將使主函數的編寫更加方便,在主函數中完成初始化工作和功能子函數的調用。采用模塊化編程最大的優(yōu)點是,當某個功能需要改變時,只需改變相應功能子函數。在軟件設計過程中,有效使用標志位,合理規(guī)劃數據存儲區(qū),劃定接收和發(fā)送緩沖區(qū)的范圍,這樣既能節(jié)約內存容量,又使操作方便。單片機程序設計力求軟件結構清晰、簡潔、流程合理。5.1主程序設計開機上電后,程序在主函數中運行,首先初始化單片機與手機模塊。單片機的初始化包括設置兩個串口的工作方式、波特率、初始化交叉開關和清空接收緩沖區(qū)。手機模塊的初始化包括關閉回顯,刪除所有短消息和設置短消息的接收方式。在進行模塊的初始化之前要確保網絡已經連接好。發(fā)送指令“AT”,如果返回“OK”說明已經連接好。模塊初始化完畢,發(fā)送信息給PC機,通知可以開始發(fā)送數據。串口0與串口1接收數據都采用中斷方式,做到及時處理。單片機不停的監(jiān)控是否有數據要發(fā)送或有沒有接收到新的短消息要處理。單片機接收完PC機發(fā)送的數據后,置發(fā)送短消息標志位為“1”,一旦檢測到有短消息要發(fā)送,調用發(fā)送短消息子程序。單片機監(jiān)控到有短消息或網絡信息到來,首先判斷是什么信息,當接收到短消息時,單片機讀取短消息進行解碼,把得到的手機號和短消息內容發(fā)送給PC機顯示。另外,單片機在完成串口初始化和CDMA模塊初始化之后,將立即開放串口中斷,實時接收PC機發(fā)來的數據和CDMA模塊返回的參數及收到短消息的提示信息。主程序流程如圖4.2所示。為了控制程序執(zhí)行不同的操作,程序設置了可以位尋址的標志位。如表4.1所示。單片機與PC機通信的數據幀結構如表4.2所示。表4.1標志位含義說明標志位含義SendsmsFlag有短信發(fā)送標志EnglishFlag發(fā)送英文短消息標志ReceiveFlag串口1接受到模塊返回參數標志NewsmsFlag讀短消息標志123….1314151617……nn+1起始位語言手機號數據結束位表4.2單片機與PC機通信的數據幀結構5.2單片機初始化程序設計C8051F單片機的初始化與普通51系列單片機基本相同,但因為增加了許多功能模塊,例如:定時器和串行口還有中斷源等。特別是改變了以往單片機I/O固定的模式,引入了交叉開關,可以自由分配資源。因此,引入了許多新的特殊功能寄存器。單片機初始化子程序包括系統(tǒng)時鐘、兩個串口、定時器和I/O的初始化。5.2.1每個MCU都有一個內部振蕩器和一個外部振蕩器驅動電路,每個驅動電路都能產生系統(tǒng)時鐘,MCU在復位后從內部振蕩器啟動。內部振蕩器可以被允許(禁止),同時可使用內部振蕩器控制寄存器(OSCICN)中的CLKSL位在兩個振蕩器之間隨意切換,其內部振蕩頻可以用OSCICN寄存器設置。在本設計中采用外部振蕩器驅動電路產生系統(tǒng)時鐘,MCU復位后一旦檢測到外部振蕩器控制寄存器(OSCXCN)的最高位為高電平,就說明晶體振蕩器運行穩(wěn)定,就可以由內部振蕩器轉換為外部晶體振蕩器。同時外部振蕩器控制寄存器6-4位控制外部振蕩器運行方式,外部振蕩器控制寄存器2-0位控制外部振蕩器頻率。下面是使用一個11.0592MHz的外部石英晶體作為系統(tǒng)時鐘源的初始化程序。從允許振蕩器工作到外部振蕩器控制寄存器的最高位為高電平,這個過程至少需要1ms的啟動時間,所以在程序中加了一個大于lms的延時語句。voidSYSCLK_Init(void){inti;OSCXCN=0x67;For(i=0;i<3000;i++);//大于1ms的間隔時間while(!(OSCXCN&0x80));//等待石英晶振復位OSCICN=0x88;//選擇外部石英晶體作為系統(tǒng)時鐘源5.2.2I通過設置交叉開關控制寄存器將片內的數字信號映射到I/O引腳,這一特性允許用戶根據自己的特定應用選擇通用端口I/O和所需數字資源的組合。當交叉開關配置寄存器XBR0、XBR1和XBR2中外設的對應允許位被設置為邏輯“1”時,交叉開關將端口引腳分配給外設。交叉開關配置是嚴格按優(yōu)先權順序將端口0-3的引腳分配給器件上的數字外設UART、SMBus、PCA、定時器等。端口引腳的分配順序是從P0.0開始可以一直分配到P3.7。未被指定的端口引腳作為通用I/O引腳,通過讀或寫相應的端口數據寄存器訪問端口,既可以按位尋址也可以按字節(jié)尋址。被交叉開關分配的那些端口引腳的輸出狀態(tài)受使用這些引腳的數字外設的控制,再向端口數據寄存器(或相關的端口位)寫入數據時對這些引腳的狀態(tài)沒有影響。不管交叉開關是否將引腳分配給外設,讀一個端口數據寄存器(或端口位)將總是返回引腳本身的邏輯狀態(tài)。因為交叉開關寄存器影響器件外設的引出腳,所以它們通常在外設被配置前由系統(tǒng)的初始化代碼配置。一旦配置完畢,將不再對其重新編程。要正確分配端口,必須熟悉交叉開關寄存器和各種外設的優(yōu)先權順序。在本設計中需要把串行口映射到I/O端口上,UART0具有最高把UATR0NE(XBR0.2)設置成邏輯“1”,則TX0和RX0引腳分別被分配到P0.0和P0.1。當選擇了串行通信外設(即SMBusSPI或UART)時交叉開關將為所有相關功能分配引腳,例如:不能為UART0功能只分配TX0引腳而不分配RX0引腳。同樣,把UATRIEN(XBR2.2)設置成邏輯“1”,則TX1和RX1引腳分別被分配到P0.2和P0.3,被交叉開關分配給輸入信號(例如RX0)的引腳所對應的輸出驅動器被禁止。因此,端口數據寄存器和端口輸出方式寄存器(PnMDOUT)的值對這些引腳的狀態(tài)沒有影響。交叉開關寄存器被正確配置后通過將XBARE(XBR2.6)設置為邏輯“1”來使能交叉開關。在XBARE被設置為邏輯“1”之前端口0-3的輸出驅動器被禁止,以防止對交叉開關寄存器和其它寄存器寫入時在端口引腳上產生爭用。每個端口引腳的輸出方式都可被配置為漏極開路或推挽方式,缺省狀態(tài)為漏極開路。端口0-3引腳的輸出方式由PnMDOUT寄存器中的對應位決定,對應位設置為邏輯“1”時配置為推挽方式;對應位設置為邏輯“0”時配置為漏極開路方式。下面是I/O端口初始化程序:voidPORT_Init(void){XBR0=0x04;//EnableUART0XBR1=0x00;XBR2=0x04;//EnableUART1;XBR2=0x40;//Enablecrossbarandweakpull-ups P0MDOUT=0x05;//EnableTX0,TX1asapush-pulloutputP1MDOUT=0x40;//EnableP1.6(LED)aspush-pulloutput }5.2.3C8051F020有兩個獨立的增強型全雙工的串行口,兩個串口總線都是用硬件實現,都能向CIP-51產生中斷,因此需要很少的CPU的干預。對串口的初始化是通過相關的特殊功能寄存器,即串口控制寄存器(SCON0、SCON1)來實現的。UARE0提供四種工作方式(一種同步方式和三種異步方式)。通過設置SCON0寄存器中的配置位選擇不同方式,這四種方式提供不同的波特率和通信協議,如表.43所示。UART1工作在方式1或方式3時,用定時器4溢出作為波特率時鐘。表4.3串口1的4種工作方式方式同步性波特率時鐘數據位起始/停止位0同步SYSCL/128無1異步定時器1或定時器2溢出8一個起始位,一個停止位2異步SYSCL/32或SYSCL/649一個起始位,一個停止位3異步定時器1或定時器2溢出9一個起始位,一個停止位在本設計中串口1工作在方式1,UART0可以使用定時器1工作在8位自動重裝載方式或定時器2工作在波特率發(fā)生器方式產生波特率(注意,TX和RX時鐘可以分別選擇),每次定時器發(fā)生溢出,即從全1(對定時器1為0xFF,對定時器2為0xFFFF)返回到0時向波特率電路發(fā)送一個時鐘脈沖。當TCLK0(T2CON.4)或RCLK0(T2CO.N5)中的任何一個被置“1”時,定時器2就被強制進入波特率發(fā)生器方式,并使用系統(tǒng)時鐘的二分頻作為時鐘源。下面給出了方式1的波特率方程,其中TIM為定時器1時鐘選擇位(CKCON.4),該位控制提供定時器1的系統(tǒng)時鐘的分頻數。SMOD0是波特率選擇位(PCON0.7),該位用于波特率的計算。TH1是定時器1的8位重裝載寄存器,[RCAP2H:RCAP2L]是定時器2的重裝載寄存器。[RCAP4H:RCAP4L]是定時器4的重裝載寄存器。使用定時器1:波特率=(4.1)使用定時器2:波特率=(4.2)使用定時器4:波特率=(4.3)*******************************************************************************串口初始化程序*******************************************************************************voidUTRT_Init(void){SCON0=0x40;//SCON0:mode1,8-bitUARTSCON1=0x40;//SCON1:mode1,8-bitUART}*******************************************************************************使用定時器1產生波特率時鐘的初始化程序,SMOD0=1,T1M=1:使用系統(tǒng)時鐘。*******************************************************************************voidTimer1_Init(void){TMOD=0x20;CKCON=0x10;PCON=0x90;TH1=-(SYSCLK/BAUDRAD/16);//nCount=SYSCLK/BAUDRAD/32TH2=1;//startTimer1}*******************************************************************************使用定時器2做波特率時鐘*******************************************************************************VoidTimer2_Init(intnCout)//nCount=SYSCLK/BAUDRAD/32{T2CON=0;//Timer2offCKCON=0x20;//Timer2usesystemclocktocountRCAP2L=0XFF&(-nCount);//BAUDRATEsetRCAP2H=(-nCount)>>8;T2CON=0x34;//RCLK0=1,TCLK0=1,startTimer2}5.3模塊初始化程序設計模塊初始化是模塊上電運行后對其設置的一組參數。首先,發(fā)送AT<CR>測試網絡是否已經連接。如果沒有連接上網絡,程序復位,重新開始。模塊自身運行的參數設置,主要包括設置回顯開關值,運行時關閉回顯,AT指令為“ATE0”;設置新短消息內容存儲而不直接顯示和發(fā)送短消息后沒有狀態(tài)報告,AT指令為“AT十CNMI=2,1,0,0,0”,這樣做是為了更好的獲得有效信息。由于普通的UIM卡所能夠存儲的短消息數量有限,因此,為了使新的數據信息能夠及時收到,在系統(tǒng)開始運行時,設置刪除CDMA模塊中的所有短消息,A“AT+CMGD=l,4”。同時,在模塊的初始化程序中完成接收緩沖區(qū)的清零工作。其源程序代碼參見附錄5.4串口中斷設計短消息的發(fā)送和接收還有返回信息的判斷,都是在串口中斷函數和底層操作函數的支持下實現的,底層操作函數包括:讀寫串口函數、清空接收緩沖區(qū)函數和定時器中斷函數。在實現短消息發(fā)送和接收的過程中經常要調用這些函數。5.4.單片機通過AT指令控制手機模塊實現短消息的發(fā)送,實際上數據的發(fā)送與接收都是通過異步串行口完成的。對UART1的控制和訪問是通過相關的特殊功能寄存器即串行控制寄存器(SCON1)和串行數據緩沖器(SBUF1)來實現的,一個SBUF1地址可以訪問發(fā)送寄存器或接收寄存器。讀操作將自動訪問接收寄存器,而寫操作自動訪問發(fā)送寄存器。使用中斷方式接收和發(fā)送數據,首先要開中斷和允許接收,而且SCON1不可以位尋址。在發(fā)送完一個字節(jié)后,發(fā)送標志位被硬件置“1”,如果要發(fā)送下一個字節(jié),必須用軟件給發(fā)送標志位清“0”。在允許接收的情況下,接收到停止位后,如果滿足接收標志位為邏輯“0”,則數據字節(jié)將被裝入接收寄存器,接收標志位被置“1”。在本次設計中,中斷函數只負責數據的發(fā)送與接收,接收緩沖區(qū)設置成512個字節(jié),而且數據存儲采用了循環(huán)隊列的方式。串口1中斷服務函數流程如圖4.7,其源程序代碼參見附錄B。5.4串口中斷函數只負責數據的接收和發(fā)送,要知道接收到了什么數據是通過讀串口函數實現的,要發(fā)送什么數據是通過寫串口函數實現的。讀串口函數設計:如果沒有接收到字符,函數輸出0x00;當接收到字符時,函數輸出接收到的字符。寫串口函數設計:首先,清空發(fā)送緩沖區(qū),將要發(fā)送的數據送到發(fā)送緩沖區(qū),用0x0a來判斷一條AT指令是否寫完。發(fā)送第一個字節(jié)啟動發(fā)送,清中斷發(fā)送標志位,置位數據發(fā)送標志位。讀寫串口函數程序流程如圖4.8和4.9,其源程序代碼參見附錄B。第6章.結論與展望6.1結論此次畢業(yè)設計不僅要求我們能充分利用在校期間所學的相關課程的專業(yè)知識,同時也要求我們具有良好的理解能力、較強實踐動手能力和實際運用的靈活度。

隨著單片機技術的成熟,單片機在無線控制中的作用也日益增大。單片機具有體積小,處理速度快,價格低廉,功能強大。應用單片機作為控制系統(tǒng)避免了設備多,檢修困難,運行維護不便,造價成本高的特點,也可以取消選層器和大量的中間繼電器,而且又相對于應用其他系統(tǒng)控制減少了外圍設備的接口芯片、增強了可靠性,運用單片機控制可以大大降低成本,而且程序被固化,加強了保密性、提高了可靠性,可以做成專用控制系統(tǒng),所以單片機是合適的控制元件。但由于單片機種類繁多,人們采用不同的單片機作為電機的主控制器件,電機所實現的功能也不盡相同。

1、 針對畢業(yè)設計要求進行了細致的資料收集工作和廣泛的調研,確定了此次設計的方案,并進行了詳細論證。同時,針對設計具體要求考慮了遠程控制燈光照明在實際應用中所面對的一系列問題。

2、 設計中選用單片機C8051F020為主控芯片,通過連接無線控制模塊來實現遠程控制燈光照明系統(tǒng);

3、設計中選用 中興集訊公司的MG8O1A芯片為無線控制模塊,4、 對基于CDMA技術的燈光照明控制系統(tǒng)進行了硬件電路設計,其中包括單片機控制模塊、無線通信模塊、被控對象模塊、RS232串口模塊和穩(wěn)壓電源模塊和其他子模塊電路等;

5、 針對硬件電路進行了軟件編程實現和軟件抗干擾設計,實現了利于CDMA網絡遠程控制燈光照明系統(tǒng)的過程。該設備可以應用于遠程控制照明燈光、無線抄表、車輛調度和工業(yè)控制等領域。基于CDMA技術的燈光照明控制系統(tǒng),具有以下特點:1.利用移動通信網絡覆蓋面廣、網絡設施完備的整體優(yōu)勢,不再需投資基礎設施、隨時隨地實現“個性化”的服務。2.實施與運行費用低,只需把數據終端加入己有系統(tǒng)中,短消息收費方式采用包月計費或按短消息條數來計費的方式,這樣就降低了費用。3.可以在無人值守、環(huán)境惡劣、超遠距離的情況下控制信息的收集和傳送,硬件的品質保證了通信安全可靠。4.獨立性好,可以不需PC機支持,在應用現場獨立完成數據的傳輸,給用戶使用帶來方便。5.可以進行二次開發(fā),與其他應用系統(tǒng)集成為新的產品。6.2展望由于所學知識的有限,該設計的比較簡單,對于單片機利用CDMA控制燈光照明系統(tǒng)進行了仔細的深入研究和實現,這次的設計基本滿足了無線控制的一些基本要求,在設計過程中,盡量做到使設計更加明白簡單。選擇這一方向來作為此次畢業(yè)設計,不僅是對四年知識學習的考察,也是對這些能力的應用考察,盡力使自己的設計減少錯誤。

但是,由于知識和能力的欠缺,這套設計依然不夠完善在硬件電路設計方面還有所欠缺,建議今后在以下幾個方面開展進一步的工作:(1)增加數據終端的供電方式,現采用外部供電方式,顯然使應用受到了一定的限制,可以采用充電電池供電方式作為補充。(2)根據用戶需求,可以開發(fā)出功能強大的上位機軟件,如:進行數據分析處理、波形顯示、打印等功能。使其成為一功能強大的應用軟件。近幾十年來,隨著無線技術的發(fā)展,無線控制的發(fā)展也越來越成熟,而遠程控制燈光照明系統(tǒng)也將向更精確、更可靠、更經濟的方向發(fā)展,在這些不斷發(fā)展的過程中,遠程控制方面還需要解決很多問題。

通過本次的畢業(yè)設計,對以前所學的理論知識有了更進一步的了解,同時能更加合理的查閱及利用資料,為達到課題要求兒對在大學期間所學習的課程進行了全面、綜合的鞏固和加深。

致謝衷心感謝我的指導老師李世芳教授,感謝對于我論文的指導。指導老師嚴謹的治學態(tài)度、踏實的工作作風和對事業(yè)、學術的執(zhí)著追求以及對我的諄諄教誨給我留下了深刻的印象,使我受益終身。本論文是在她的精心指導和關懷下完成的,從論文的選題、到電路設計方案,王老師都提出了寶貴的意見。在此,謹向導師致以衷心的謝意與崇高的敬禮!在本文的設計過程中得到了物理電氣信息學院電氣自動化(1)班的班長楊偉峰及馬元同學的幫助,在此也向他們表示最衷心的感謝!同時還要感謝我的父母和家人給予我生活上的經濟資助以及精神上的支持和鼓勵,在此向他們表示最真摯的感謝!參考文獻[1]郭丙君,俞金壽基于GSM的遠程監(jiān)控系統(tǒng).自動化儀表.2004年8月第25卷第8期[2]王德凡漫話CMDA移動通信.移動通信2002.4[3]竺南直,肖輝碼分多址(DCMA)移動通信系統(tǒng).[M]北京:電子工業(yè)出版社.1999.4[4]蘭華軍基于CDMA的視頻圖像無線傳輸解決方式.計算機世界[5]王鵬,雷斌.基于CDMA的無線數傳系統(tǒng)設計.單片機與嵌入式系統(tǒng)應用2005.10[6]琢金等,施國君.C8051F高速SOC單片機原理及應用.[M]北京:北京航空航天大學出版社.2002.5[7]求是科技編著.單片機通信技術與工程實踐.[M]北京:人民郵電出版社2005.3[8]房小翠,王金鳳.單片機實用系統(tǒng)設計技術.[M].北京:國防工業(yè)出版社.1999.6[9]何立民編著.單片機應用系統(tǒng)設計[M].北京:北京航空航天大學出版社.2002.7附錄附錄A:英文縮寫對照表ADDS應用數據發(fā)送服務B/S瀏覽器/服務器BS基站BSS基站系統(tǒng) BUFFER緩沖器BSC基站控制器CDMA碼分多址C/S客戶機/服務器DAO數據訪問對象DBCS雙字節(jié)字符系統(tǒng)DCE數據通信設備DTE數據終端設備ESD靜電釋放FDMA頻分多址GSM全球移動通信系統(tǒng)GMSC移動交換中心網關HLR歸屬位置寄存器IDE集成開發(fā)環(huán)境IWMSC互聯移動交換中心JTAG連接測試行動小組LDO低壓差線性穩(wěn)壓器MAP移動臺應用部分MO移動臺發(fā)起MS移動臺MT移動臺終結PLMN公共陸地移動通信網RDO遠程數據對象SFR特殊功能寄存器SMDPP短消息傳輸點到點操作SME短消息實體SMS短消息業(yè)務SMSC短消息中心SOC系統(tǒng)級芯片TDMA時分多址VLP訪問位置寄存器W-CDMA寬帶碼分多址WDT看門狗定時器附錄B:數據終端部分單片機源代碼/*-------------------------------------------------------------------------------主函數----------------------------------------------------------------------------------*/voidmain(){uchari,j;SYSCLK_Init();Port_Init();//configureportEA=1;//EnableglobaliterruptES0=1;EIE2=0x40;WDTCN=0xFF;Timer2_I

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論