《基于單片機(jī)的短信收發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)9600字(論文)》_第1頁
《基于單片機(jī)的短信收發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)9600字(論文)》_第2頁
《基于單片機(jī)的短信收發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)9600字(論文)》_第3頁
《基于單片機(jī)的短信收發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)9600字(論文)》_第4頁
《基于單片機(jī)的短信收發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)9600字(論文)》_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

IV基于單片機(jī)的短信收發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)TOC\o"1-3"\h\u368摘要 II15010第一章緒論 136621.1課題研究背景和意義 1217421.2國內(nèi)外研究現(xiàn)狀 130865第二章整體方案設(shè)計(jì)和框架 3127542.1整體設(shè)計(jì)方案 3147292.2主要元器件的選擇 3266612.2.1主控芯片的選擇 3108762.2.2短信收發(fā)設(shè)計(jì)方案的選擇 4232002.2.3顯示方案的選擇 432679第三章硬件設(shè)計(jì) 6244283.1主控電路模塊 6179193.2GSM模塊和存儲(chǔ)模塊 7269603.3按鍵電路 8493.4蜂鳴器和LCD顯示模塊 826430第四章軟件設(shè)計(jì) 10257234.2主要程序說明 1030024第五章調(diào)試、測試與仿真 1526315.1硬件測試 1546805.2軟件測試與仿真 1535125.3系統(tǒng)總體測試 1526561第六章總結(jié) 178328第七章致謝 18摘要短信作為人與人之間極為重要的交流手段,在我們的日常生活中充當(dāng)著不可缺少的角色。本文主要利用了單片機(jī)最小系統(tǒng)的工作原理,使用STC89C52單片機(jī)作為本次設(shè)計(jì)的主控制器,通過單片機(jī)的最小系統(tǒng)、GSM模塊、4x4按鍵電路、DS1320定時(shí)器、LCD1602顯示器這五個(gè)模塊的恰當(dāng)運(yùn)用,完成了本次短信收發(fā)系統(tǒng)的設(shè)計(jì)及測試過程。單片機(jī)的最小系統(tǒng)負(fù)責(zé)本系統(tǒng)的主控模塊;GSM模塊負(fù)責(zé)短信的發(fā)送;4x4按鍵電路負(fù)責(zé)獲取相應(yīng)按鍵信息;DS1320定時(shí)器負(fù)責(zé)檢測實(shí)時(shí)時(shí)間;LCD1602顯示器負(fù)責(zé)展示收信人號(hào)碼、短信內(nèi)容、實(shí)時(shí)時(shí)間等。本系統(tǒng)充分利用了單片機(jī)強(qiáng)大的信息處理能力,很大程度上滿足了用戶與用戶之間的交流需要,提高了人們的生活訴求,更好地為人們的生活提供便利,也給工業(yè)生產(chǎn)領(lǐng)域帶來了極大的好處。關(guān)鍵詞:單片機(jī);GSM模塊;短信收發(fā);按鍵電路第1章緒論1.1課題研究背景和意義SMS服務(wù)又叫短消息服務(wù),也叫SMS短信息服務(wù)。SMS短信息服務(wù)是當(dāng)今使用范圍最廣,也是最早使用的一種短信業(yè)務(wù)。短消息服務(wù)通過用戶終端設(shè)備經(jīng)由GSM通信網(wǎng)絡(luò),發(fā)送簡短消息或簡單字母和數(shù)字給另一用戶終端的一個(gè)數(shù)據(jù)傳輸平臺(tái),簡稱短信收發(fā)平臺(tái)。短信剛推出給應(yīng)用群體的時(shí)候,能夠承載的信息量很少,發(fā)送的短信數(shù)量也有所限制。而隨著現(xiàn)代生活日新月異的發(fā)展,短信息服務(wù)早已能夠承載多樣化的業(yè)務(wù),例如像用戶定時(shí)發(fā)送旅游景點(diǎn)門票預(yù)約提醒、孩子成績單附件的發(fā)送等,促使我們的生活變得更加的多樣化起來。本文通過研究短信在單片機(jī)上的收集和發(fā)送消息功能,了解短信收發(fā)的原理及其工作流程,模擬設(shè)計(jì)一個(gè)基于單片機(jī)的短信收發(fā)平臺(tái),讓人們了解短信是如何發(fā)送出來的。通過對(duì)短信收發(fā)系統(tǒng)的控制,我們可以將這一便捷、傳輸效率高、費(fèi)用低以及具有傳輸穩(wěn)定性的短信收發(fā)系統(tǒng),運(yùn)用到生活與生產(chǎn)的方方面面,例如:衛(wèi)星的GPS定位系統(tǒng)、電子溫度計(jì)告警系統(tǒng)、交通電子監(jiān)控的報(bào)警系統(tǒng)等。1.2國內(nèi)外研究現(xiàn)狀自從1992年,第一條短信在英國成功發(fā)送出來之后,短信就跟隨著人們的生活與發(fā)展迅速蔓延到整個(gè)世界。QQ、微信等聊天軟件被研發(fā)出來之后,短信曾受到過一段時(shí)間的打壓,但這并沒有取代短信在人們心中的重要地位。雖說短信在個(gè)人用戶使用環(huán)境中的比重下降,但它仍是許多工業(yè)生產(chǎn)領(lǐng)域中不可或缺的一部分。在目前的通信網(wǎng)絡(luò)中,GSM網(wǎng)絡(luò)是目前能夠利用十分多只技術(shù)作為技術(shù)支撐的較為成熟的、適用范圍最廣的網(wǎng)絡(luò)系統(tǒng)之一。近些年來,人們使用的移動(dòng)通信網(wǎng)絡(luò)的主要是基于GSM網(wǎng)絡(luò)的移動(dòng)數(shù)字通信網(wǎng),可以在終端設(shè)備之間進(jìn)行信息交換,主要發(fā)送字母、數(shù)字和短信息文本,為人們提供語音、短訊、數(shù)據(jù)傳送等各種基礎(chǔ)業(yè)務(wù)。第2章GSM系統(tǒng)和整體方案設(shè)計(jì)2.1GSM系統(tǒng)射頻芯片、存儲(chǔ)模塊、基帶處理模塊、功放器件,把這些器件集成在一個(gè)板件上,這個(gè)集成板件就擁有了獨(dú)立的操作系統(tǒng),具有能夠處理射頻信號(hào)和基帶信號(hào)的功能,這個(gè)系統(tǒng)就叫做GSM系統(tǒng)。GSM系統(tǒng)具有發(fā)送短信、語音電話處理、數(shù)據(jù)傳輸?shù)墓δ堋?.1.1GSM系統(tǒng)的特點(diǎn)GSM系統(tǒng)的特點(diǎn)之一,在于能夠進(jìn)行語音的編碼。GSM系統(tǒng)最早的語音編碼方案采用規(guī)則脈沖激勵(lì)長時(shí)預(yù)測編碼(REP-LTP)技術(shù)。它產(chǎn)生的編碼速率為13Kbps,每20ms一個(gè)話音幀。話音質(zhì)量平均意見分值(MOS)可達(dá)到3.6。這一方案被稱作全速率編碼(FullRate,F(xiàn)R)[1]。人們在全速率編碼的基礎(chǔ)上,不改變GSM系統(tǒng)的編碼速率,經(jīng)過算法研究出了一種更強(qiáng)的編碼形式,叫做增強(qiáng)型全速率編碼,簡稱EFR。它能夠改進(jìn)當(dāng)前的通話質(zhì)量,使用戶得到更好的體驗(yàn)。GSM系統(tǒng)的另一顯著特點(diǎn)是能夠識(shí)別用戶的身份。GSM系統(tǒng)的用戶身份模塊在識(shí)別用戶信息和數(shù)據(jù)這一塊有一個(gè)廣泛的用途,叫做SIM卡,也就是我們手機(jī)上的SIM卡。SIM卡是一種可以拆卸出來的小型智能IC卡,能夠儲(chǔ)存用戶的本地?cái)?shù)據(jù)和通訊錄,這樣即使用戶更換手機(jī)之后,還能找回自己SIM卡上的通訊錄,避免了數(shù)據(jù)的丟失,給用戶省去了不少的麻煩。GSM系統(tǒng)通過SIM卡來識(shí)別處于GSM網(wǎng)絡(luò)中的用戶,是本設(shè)計(jì)的一個(gè)主要硬件模塊。2.1.2GSM系統(tǒng)體系結(jié)構(gòu)GSM系統(tǒng)結(jié)構(gòu)主要是由移動(dòng)臺(tái)(MS)、移動(dòng)網(wǎng)子系統(tǒng)(NSS)、基站子系統(tǒng)(BSS)和操作支持子系統(tǒng)(OSS)四部分組成[2]。移動(dòng)臺(tái)(MS)是我們GSM網(wǎng)絡(luò)用戶能夠直接接觸得到的一個(gè)設(shè)備,也是我們當(dāng)前正在使用的一種基于GSM網(wǎng)絡(luò)的設(shè)備,它有手持設(shè)備(臺(tái))、車載設(shè)備(臺(tái))等。移動(dòng)網(wǎng)子系統(tǒng)(NSS)是GSM系統(tǒng)交換結(jié)構(gòu)的重要組成部分,具有管理用戶數(shù)據(jù)庫安全的作用,充當(dāng)兩個(gè)用戶之間的通信橋梁。基站子系統(tǒng)(BSS)能夠通過無線端口直接和移動(dòng)臺(tái)相連接,是GSM系統(tǒng)中和無線蜂窩網(wǎng)絡(luò)關(guān)系中的基本組成部分,具有接收發(fā)送和資源管理的功能。操作支持子系統(tǒng)(OSS)簡而言之就是GSM系統(tǒng)中的操作系統(tǒng),用于維護(hù)用戶網(wǎng)絡(luò),保證用戶網(wǎng)絡(luò)穩(wěn)定性,以及用戶移動(dòng)設(shè)備網(wǎng)絡(luò)間的管理和維護(hù)。2.2GSM系統(tǒng)設(shè)計(jì)本設(shè)計(jì)由RS232串口連接單片機(jī)和GSM系統(tǒng),通過輸入AT指令來使GSM系統(tǒng)進(jìn)行短信的接收、處理和發(fā)送工作,幫助用戶實(shí)現(xiàn)短信由本側(cè)設(shè)備端傳輸?shù)搅硪粋?cè)設(shè)備端,降低了兩個(gè)用戶之間的信息交流困難。圖2-1是GSM模塊的原理圖,表2-1是本設(shè)計(jì)采用的相關(guān)AT指令說明:圖2-1GSM模塊原理圖本設(shè)計(jì)采用的相關(guān)AT指令說明連機(jī)AT工作模式AT+CMGF=n,n=0PDU/文本模式AT+CMGF=n,n=1發(fā)送信息指令A(yù)T+CMGS=n,n為目標(biāo)號(hào)碼新消息提示指令A(yù)T+CMNI=2,1,0,0,設(shè)置為mode=2,mt=1讀取數(shù)據(jù)AT+CMGR=n,n為短消息號(hào)(十進(jìn)制)表2-1本設(shè)計(jì)采用的相關(guān)AT指令說明2.3本章小結(jié)本章主要介紹了GSM系統(tǒng)的定義、特點(diǎn)、體系結(jié)構(gòu),也對(duì)GSM系統(tǒng)的作用進(jìn)行了簡要的概述。通過認(rèn)識(shí)GSM系統(tǒng),我們了解到它是本設(shè)計(jì)中的一個(gè)主要的輸出部分,負(fù)責(zé)發(fā)送短信和接收短信模塊,為下一章硬件設(shè)計(jì)的功能實(shí)現(xiàn)提供基礎(chǔ)保障。第3章系統(tǒng)硬件設(shè)計(jì)3.1單片機(jī)最小系統(tǒng)3.1.1單片機(jī)最小系統(tǒng)使用最少的元器件就能夠?qū)崿F(xiàn)最簡單工作的系統(tǒng),叫做單片機(jī)的最小系統(tǒng)。它由主控制器和其相應(yīng)的外圍電路組成,主控制器也叫主控芯片;外圍電路由電源電路、晶振電路和復(fù)位電路組合而成。圖3-1為單片機(jī)的最小系統(tǒng)原理圖:圖3-1單片機(jī)最小系統(tǒng)原理圖3.1.2主控芯片的選擇針對(duì)主控芯片的選擇,本文采取了兩種單片機(jī)選擇方案的對(duì)比來說明:方案1:選擇HC32LI36單片機(jī)。HC32LI36單片機(jī)是上海華大半導(dǎo)體公司研發(fā)制作的一款單片機(jī),它是一款32位單片機(jī),與STM32這款單片機(jī)的功能很相似,只是HC32LI36單片機(jī)的功耗要比STM32要低很多。方案2:選擇STC89C52單片機(jī)。STC89C52單片機(jī)是宏晶科技公司推出的一款單片機(jī),它是一款8位單片機(jī),具有高速運(yùn)行、低功耗等有點(diǎn),并且具有很好的抗干擾能力。這款單片機(jī)的應(yīng)用范圍很廣,多數(shù)運(yùn)用于一些電子產(chǎn)品以及小型家電當(dāng)中。兩種單片機(jī)對(duì)比來看,HC32LI36單片機(jī)的處理數(shù)據(jù)速度要比STC89C52單片機(jī)要快,內(nèi)存也比STC89C52單片機(jī)大很多,但它不容人忽視的缺點(diǎn)是它的芯片的參考資料不全,編程方面相對(duì)來說會(huì)比較困難,并且費(fèi)用也相對(duì)較高。而使用STC89C52單片機(jī)作為主控芯片的話,雖說它的數(shù)據(jù)處理方面和內(nèi)存方面不如HC32LI36單片機(jī),但是它的受眾范圍廣,市面上有很多的資料可供參考,再加上STC89C52單片機(jī)在人類歷史上也使用了相當(dāng)長的一段時(shí)間,它的穩(wěn)定性與可靠性是HC32LI36單片機(jī)比不了的,還有一個(gè)很重要的一個(gè)點(diǎn)就是,它的使用成本要比HC32LI36單片機(jī)低的多。因此本文選擇STC89C52單片機(jī)來作為我們主要研究的主控芯片。3.1.3主控芯片的外圍電路單片機(jī)的最小系統(tǒng)構(gòu)成了本設(shè)計(jì)系統(tǒng)的主控制器模塊,下面分別介紹主控制器模塊中的幾種外圍電路:電源電路:給系統(tǒng)上電,提供+5V的電壓。圖3-2電源電路原理圖晶振電路:晶振電路,也叫晶體振蕩器。它是由一個(gè)電阻串聯(lián)兩個(gè)并聯(lián)電容組成的,有兩個(gè)振諧點(diǎn),用頻率的高低來作為區(qū)分,頻率較高的是兩個(gè)并聯(lián)電容電路,頻率較低的是電阻串聯(lián)電路。因?yàn)檫@兩個(gè)高低頻率之間的距離很近,在這個(gè)頻率范圍很小的時(shí)候,由于晶體的諧振特性,他就能等效成為一個(gè)電感,此時(shí)我們在晶振電路的兩端再加上一個(gè)合適的電容,這個(gè)時(shí)候的電路就形成了一個(gè)并聯(lián)振諧電路。圖3-3晶振電路原理圖復(fù)位電路:復(fù)位電路在本系統(tǒng)中也叫按鍵復(fù)位電路。按鍵復(fù)位電路就有點(diǎn)像是我們重啟手機(jī)的時(shí)候,當(dāng)我們因?yàn)橐恍┰蛳胍貑⑹謾C(jī)時(shí),就需要通過按下電源鍵來重啟手機(jī),這時(shí)候復(fù)位電路中的按鍵就相當(dāng)于是手機(jī)的電源鍵,我們按下按鍵,讓復(fù)位電路從當(dāng)前工作狀態(tài)退出,隨后自動(dòng)復(fù)原到初始的工作狀態(tài)。復(fù)位電路的作用,一方面是給我們的設(shè)計(jì)系統(tǒng)提供了多次試驗(yàn)的機(jī)會(huì),另一方面也給與了一定的容錯(cuò)機(jī)會(huì)。圖3-4按鍵復(fù)位原理圖3.2SIM900A模塊3.2.1SIM900A模塊SIM900A模塊是一個(gè)專為中國大陸市場設(shè)計(jì)的2頻的GSM/GPRS模塊,工作的頻段為EGSM900MHz和DCS1800MHz。SIM900A支持GPRSmulti-slotclass10/class8(可選)和GPRS編碼格式CS-1,CS-2,CS-3和CS-4。模塊的尺寸只有24mmx24mmx3mm,采用SMT封裝形式,包含68個(gè)引腳[3]。SIM900A模塊功耗低;供電的范圍較廣,有3.2-4.8V;能支持GSM模塊的900/1800MHZ頻段、支持多種速率的語音編碼方式。3.2.1SIM900A模塊接口SIM900A模塊能夠提供兩種接口,一種是2.85V的TTL接口,經(jīng)過電平匹配之后,它可以與支持3.3V的單片機(jī)直接連接;另外一種TTL接口可以兼容各種電壓,也可以與支持3.3V、5.5V的單片機(jī)直接連接。在本設(shè)計(jì)中,連接SIM900A模塊和單片機(jī)時(shí),SIM900A模塊RXD引腳要和單片機(jī)的TXD引腳連接,SIM900A模塊TXD引腳要和單片機(jī)的RXD引腳連接。還需要將雙方的接口對(duì)應(yīng)好才能進(jìn)行連接,否則有可能會(huì)燒壞單片機(jī),如SIM900A模塊的TTL接口要對(duì)應(yīng)單片機(jī)的TTL接口,SIM900A模塊的R232接口要對(duì)應(yīng)單片機(jī)的R232接口。3.3外圍電路設(shè)計(jì)3.3.1按鍵電路按鍵電路相當(dāng)于電子開關(guān),按下某個(gè)鍵,該電路支路就會(huì)斷電;松開該按鍵,該電路支路恢復(fù)用電。按下這個(gè)按鍵,按鍵內(nèi)部的金屬片受力下壓,電信號(hào)通過金屬片傳入支路,支路處于連接狀態(tài);松開這個(gè)按鍵,按鍵內(nèi)部的金屬片受力彈開,電信號(hào)不能通過金屬片傳入支路,支路處于斷開狀態(tài)。按鍵電路連接單片機(jī),通過連接端口控制默認(rèn)通電狀態(tài)時(shí)為高電平狀態(tài),斷電狀態(tài)時(shí)為低電平狀態(tài)。在本系統(tǒng)中,按鍵電路為輸入短信內(nèi)容、收件人號(hào)碼做了保障,實(shí)現(xiàn)了人與機(jī)的交互操作。圖3-5為按鍵電路原理圖:圖3-5按鍵電路原理圖3.3.2蜂鳴器電路蜂鳴器:蜂鳴器是通過電磁場將電信號(hào)轉(zhuǎn)換為聲音信號(hào),從而使蜂鳴器發(fā)出嗡鳴聲,具有定時(shí)提醒功能。在本系統(tǒng)中,輸入收件人號(hào)碼后,按下“#”鍵,蜂鳴器嗡鳴一聲,提示短信發(fā)送成功。圖3-6蜂鳴器原理圖3.3.3顯示模塊電路針對(duì)顯示模塊的選擇,本文采取了兩種方案的對(duì)比:方案1:使用LED數(shù)碼管實(shí)現(xiàn)。數(shù)碼管是由8個(gè)發(fā)光二極管組成的,它是通過脈沖信號(hào)的刺激來點(diǎn)亮發(fā)光二極管,從而使得數(shù)碼管能顯示出簡單的數(shù)字或字母。方案2:使用LCD液晶顯示器實(shí)現(xiàn)。LCD液晶顯示模塊是通過接收接口的指令集來控制實(shí)現(xiàn)顯示文本的。兩種方案對(duì)比來看:LED數(shù)碼管可以顯示簡單的數(shù)字和英文字母,使用成本低,但是能夠顯示的內(nèi)容是有限的,一般是采用多個(gè)數(shù)碼管一起使用,成本又上漲了,而且并不能顯示文本信息,它的使用壽命也比較短,不利于長期使用。而LCD液晶顯示模塊,它的體積小,使用功耗較低,能夠顯示兩行信息,每行能夠顯示16位,大大降低了它的使用成本。LCD液晶顯示模塊它只需要靠5V的電壓就能正常使用,外圍電路簡單,價(jià)格低廉,性價(jià)比相對(duì)LED數(shù)碼管來說要高得多。綜上所述,顯示方案選擇方案2。LCD1602顯示模塊:LCD顯示模塊通過點(diǎn)陣排列,在接收到文本或數(shù)字信號(hào)時(shí),調(diào)用字的模型實(shí)現(xiàn)顯示文本信息。顯示時(shí),通過背景光板的顏色不同顯示不同的字符,將字符呈現(xiàn)到我們的眼前。圖3-7為LCD1602顯示模塊的原理圖:圖3-7LCD顯示模塊原理圖3.3.4DS1320定時(shí)器模塊電路DS1320是一種涓流充電時(shí)鐘芯片,它通過串口與單片機(jī)連接,含有一個(gè)31字節(jié)的靜態(tài)RAM和一個(gè)實(shí)時(shí)時(shí)鐘/日歷。實(shí)時(shí)時(shí)鐘/日歷可以顯示實(shí)時(shí)的年月日、時(shí)分秒,還可以使用AM/PM轉(zhuǎn)換它的時(shí)間顯示方式,有12小時(shí)制或24小時(shí)制兩種選擇方式,還能自動(dòng)調(diào)節(jié)閏年模式。圖3-8DS1320電路原理圖3.4本章小結(jié)本系統(tǒng)的硬件設(shè)計(jì)以STC89C52單片機(jī)作為我們的中心控制器,加上輸入部分和輸出部分共同組成本設(shè)計(jì)系統(tǒng)。其中,中控部分是STC89C52單片機(jī),它的作用是收集部分?jǐn)?shù)據(jù)的輸入,經(jīng)由內(nèi)部處理模塊,再傳送給輸出部分,完成整個(gè)系統(tǒng)的核心操作。輸入部分由三個(gè)部分組成,分別是電源電路模塊,4x4按鍵電路模塊,DS1302時(shí)鐘模塊。電源電路模塊負(fù)責(zé)給系統(tǒng)提供工作電壓,使系統(tǒng)得以順利進(jìn)行;4x4按鍵模塊負(fù)責(zé)發(fā)送文本信息,如發(fā)送隨機(jī)數(shù)字、英文中文等,還能顯示時(shí)間和輸入號(hào)碼,帶有歸位“D”、發(fā)送“#”按鍵;DS1302時(shí)鐘模塊可以檢測當(dāng)前的時(shí)間信息。輸出部分也有三個(gè)模塊,一個(gè)是LCD1602顯示器,在該顯示器上,能夠顯示信息發(fā)送的時(shí)間、信息內(nèi)容和接收號(hào)碼;還有一個(gè)是GSM系統(tǒng)中的SIM900A模塊,該模塊負(fù)責(zé)給手機(jī)發(fā)送短信;最后一個(gè)輸出模塊則是蜂鳴器,具有消息發(fā)送成功的提醒功能。圖3-9是整個(gè)設(shè)計(jì)的框架圖:SIM900A模塊電源電路單片機(jī)最小系統(tǒng)SIM900A模塊電源電路單片機(jī)最小系統(tǒng)LCD1602顯示按鍵電路LCD1602顯示按鍵電路蜂鳴器時(shí)鐘模塊蜂鳴器時(shí)鐘模塊圖3-9整體設(shè)計(jì)框架圖第4章軟件設(shè)計(jì)4.1總體程序設(shè)計(jì)4.1.1總體軟件設(shè)計(jì)及流程在本設(shè)計(jì)系統(tǒng)的主程序中:首先要對(duì)各個(gè)程序模塊初始化,其次對(duì)函數(shù)進(jìn)行定義,然后進(jìn)入到while函數(shù)循環(huán)當(dāng)中,開始循環(huán)整個(gè)主程序:首先進(jìn)入按鍵程序,按鍵程序函數(shù)分為兩個(gè)部分,第一部分是調(diào)用按鍵程序函數(shù)獲取該按鍵下的對(duì)應(yīng)信息,如獲取號(hào)碼信息、文本信息等;第二部分是對(duì)獲取的信息進(jìn)行相應(yīng)的操作,如選擇是否發(fā)送信息、取消操作、歸位等。經(jīng)過按鍵程序后其次進(jìn)入到第二個(gè)函數(shù)監(jiān)測函數(shù),該函數(shù)主要是通過DS1320定時(shí)器來獲取實(shí)時(shí)時(shí)間;第三部分是顯示函數(shù),該函數(shù)通過不同的標(biāo)志位來轉(zhuǎn)換顯示界面,包含顯示收信人號(hào)碼、實(shí)時(shí)時(shí)間和信件信息等。然后進(jìn)入到第四個(gè)函數(shù)處理函數(shù),該函數(shù)定義短信的延遲和發(fā)送指令。最后一個(gè)函數(shù)是延時(shí)函數(shù),該函數(shù)通過計(jì)數(shù)的方式來限制各個(gè)函數(shù)的掃描時(shí)間。總體設(shè)計(jì)的部分源代碼如下:voidmain(){ Lcd1602_Init(); //LCD1602初始化 Delay_function(50); //延時(shí)50ms Ds1302_Init(); lcd1602_clean(); //清屏 Delay_function(50); //延時(shí)50ms Delay_function(50); //延時(shí)50ms SerialInti(); // ds1302_write_time(); while(1) {(部分代碼省略)…… }}圖4-1總體軟件設(shè)計(jì)流程圖4.1.2編程語言的選用由于整個(gè)編程程序計(jì)算量太大,程序相對(duì)復(fù)雜,因此作者采用C語言作為本系統(tǒng)的編程語言。C語言的優(yōu)點(diǎn)有很多:第一,C語言的編程語言簡潔明朗,可以靈活使用;第二,C語言的運(yùn)算符和數(shù)據(jù)類型都很豐富,而且具有很多結(jié)構(gòu)化語句,能夠滿足本設(shè)計(jì)源代碼編程的需要;第四,C語言的程序可以自由編寫,能夠?qū)崿F(xiàn)很多匯編語言的功能,生成的代碼質(zhì)量高,具有一定的穩(wěn)定性;第五,C語言的應(yīng)用范圍較廣,可以很順利地移植到本設(shè)計(jì)系統(tǒng)中。4.1.3編程軟件——Keil5軟件本設(shè)計(jì)系統(tǒng)的程序語言是在Keil5軟件上編寫的,Keil5軟件是美國KeilSoftware公司研制出品的一款匯編語言開發(fā)程序軟件,能夠?qū)崿F(xiàn)C語言等匯編語言的編寫,檢查代碼錯(cuò)誤,運(yùn)行仿真程序的軟件開發(fā)平臺(tái)。與其他的編程軟件相比,Keil5軟件界面簡潔,操作簡單,輕便快捷,贏得許多開發(fā)用戶的喜愛。Keil5還有三種編譯方式,一個(gè)是單獨(dú)編譯,一個(gè)是部分編譯,一個(gè)是全局編譯,不管是哪一種編譯方式,最終編譯的結(jié)果都會(huì)顯示在開發(fā)界面的最下方,能夠?yàn)殚_發(fā)用戶更加便捷地檢查源代碼錯(cuò)誤。它還能兼容單片機(jī),支持Windows系統(tǒng),提供豐富的庫函數(shù)和數(shù)據(jù)類型。圖4-2Keil5軟件開發(fā)界面4.2按鍵函數(shù)流程設(shè)計(jì)按鍵函數(shù)先是通過按鍵掃描函數(shù),獲得該鍵位下對(duì)應(yīng)的值,然后根據(jù)這個(gè)值做出相應(yīng)的變化。如果按下的鍵值是“A”,為“發(fā)送數(shù)字”選項(xiàng),發(fā)送的數(shù)字為隨機(jī)四位數(shù)字;如果按下的鍵值是“B”,為“發(fā)送英文”選項(xiàng),發(fā)送的英文為固定英文字母“EnglishTEST”;如果按下的鍵值是“C”,為“發(fā)送中文”選項(xiàng),發(fā)送的中文為固定中文“中文測試”。部分程序的源代碼為:voidKey_function(void){ key_bianma=matrix_keyboard_scan(); if(key_bianma!=0) { key_num=matrix_keyboard_coding(key_bianma); //根據(jù)按鍵的位置將其編碼,編碼值賦值給NUM { switch(key_num) //判斷 { case('A'): //發(fā)送數(shù)字 flag_mode_num=1; lcd1602_clean(); break; //顯示1602內(nèi)容(部分代碼省略)……}}圖4-3按鍵函數(shù)子流程圖4.3發(fā)送短信函數(shù)設(shè)計(jì)LCD1320顯示屏初始化界面為顯示當(dāng)前時(shí)間,如果想要發(fā)送隨機(jī)四位數(shù)字,則按下字母“A”鍵,輸入收信人的手機(jī)號(hào)碼,再按下“#”鍵,這時(shí)蜂鳴器提示短鳴一聲,表示短信發(fā)送成功,并將已發(fā)送內(nèi)容顯示在當(dāng)前界面上;如果想要發(fā)送英文,則按下字母“B”鍵,輸入收信人的手機(jī)號(hào)碼,再按下“#”鍵,這時(shí)蜂鳴器提示短鳴一聲,表示短信發(fā)送成功,但發(fā)送內(nèi)容不會(huì)顯示在當(dāng)前界面上;如果想要發(fā)送中文,則按下字母“C”鍵,輸入收信人的手機(jī)號(hào)碼,再按下“#”鍵,這時(shí)蜂鳴器提示短鳴一聲,表示短信發(fā)送成功,但發(fā)送內(nèi)容不會(huì)顯示在當(dāng)前界面上。其部分源代碼為:voidManage_function(void){ if(flag_mode_num==1) //顯示標(biāo)志位為0時(shí) {// lcd1602_display_num(2,1,randdata); }}voidsend_msg(){(部分代碼省略)……}}圖4-4發(fā)送短信設(shè)計(jì)流程圖4.4本章小結(jié)本章節(jié)主要介紹了系統(tǒng)總體的軟件設(shè)計(jì)流程,通過對(duì)總體設(shè)計(jì)框圖的勾畫,大致了解了整個(gè)軟件設(shè)計(jì)的函數(shù)構(gòu)成:主要為按鍵函數(shù)、監(jiān)測函數(shù)、顯示函數(shù)、處理函數(shù)和延時(shí)函數(shù)。每個(gè)函數(shù)有著自己明確的分工,互相配合,攜手合作。在本次章節(jié)中,重點(diǎn)介紹了按鍵函數(shù)流程,通過不同的鍵位設(shè)置,獲得不同的信息;還介紹了發(fā)送短信設(shè)置,能夠發(fā)送三種短信內(nèi)容,分別是隨機(jī)四位數(shù)字、固定“EnglishTEST”英文內(nèi)容、固定“中文測試”中文內(nèi)容。在本章節(jié)中還粗略介紹了作者所用的編程語言——C語言、編程開發(fā)軟件——Keil5軟件,極大地提高了本次軟件設(shè)計(jì)的流程制作效率。第5章系統(tǒng)測試5.1硬件測試設(shè)計(jì)好PCB電路之后,經(jīng)過打印PCB原理圖、焊接元器件等流程做好之后,就可以開始進(jìn)行硬件測試了。硬件安裝之前要先確認(rèn)系統(tǒng)原理圖是否準(zhǔn)確,再用萬用表檢測電路板上的元器件是否都有通電,測試各個(gè)焊接點(diǎn)是否有斷電、漏電的情況。檢查確認(rèn)無誤之后,先給電源電路通電,看電源指示燈是否亮起來,電源指示燈亮說明該電路系統(tǒng)處于正常工作狀態(tài),電源指示燈不亮,說明該電路系統(tǒng)處于非正常工作狀態(tài),則要再去檢查電路是否準(zhǔn)確,檢查無誤之后再重復(fù)之前的步驟。以上步驟都正確之后,把主控芯片和LCD顯示屏插入板件中,把線路都連接正確,然后下載最簡單的程序到芯片中測試運(yùn)行,觀察該程序是否正確運(yùn)行,再驗(yàn)證按鍵狀態(tài)、部件和顯示屏是否正常運(yùn)行。如果正常運(yùn)行,則說明該板件能夠承載本設(shè)計(jì)系統(tǒng)正常運(yùn)行,就可以進(jìn)行下一步,即下載本設(shè)計(jì)系統(tǒng)的程序進(jìn)行測試;如果沒有正常運(yùn)行,則要重新測試板件哪里有錯(cuò)誤,找到錯(cuò)誤的地方,慢慢調(diào)整好,再繼續(xù)進(jìn)行以上步驟。5.2軟件測試該模塊測試使用的是Keil5軟件進(jìn)行測試。在Keil5軟件中導(dǎo)入編寫好的系統(tǒng)源代碼,通過軟件本身的運(yùn)行按鍵,點(diǎn)擊運(yùn)行,等待運(yùn)行的結(jié)果。如果運(yùn)行結(jié)果顯示無錯(cuò)誤,例如:顯示“0error”,則該系統(tǒng)源代碼能夠正常運(yùn)行;若運(yùn)行結(jié)果顯示有錯(cuò)誤,例如:顯示“1error”,則需要查看錯(cuò)誤信息,并進(jìn)行修改,然后再重復(fù)之前的步驟,直至源代碼程序能夠正常運(yùn)行無誤。源代碼運(yùn)行無誤之后,將源代碼導(dǎo)入另一仿真軟件proteus軟件中。再使用軟件中的仿真按鍵,對(duì)本設(shè)計(jì)系統(tǒng)進(jìn)行仿真調(diào)試,等待運(yùn)行的結(jié)果。確認(rèn)仿真正確狀態(tài)下的運(yùn)行結(jié)果是否準(zhǔn)確,如系統(tǒng)是否正確發(fā)送短信,顯示屏上是否準(zhǔn)確顯示按鍵輸入的內(nèi)容,顯示內(nèi)容是否完整等。確認(rèn)仿真結(jié)果無誤之后就可以導(dǎo)入我們制作好的PCB板件中進(jìn)行硬件測試了。5.3發(fā)送短信測試5.3.1按鍵測試系統(tǒng)的總體測試與硬件測試基本上是差不太多的。在確認(rèn)板件線路能夠正常運(yùn)行之后,將源代碼程序下載到板件的單片機(jī)芯片上,驗(yàn)證按鍵按鈕、顯示器、串口傳輸是否能夠正常運(yùn)行。需要用到的測試工具有:SIM卡、系統(tǒng)板件、手機(jī)。測試步驟為:第一步,先將SIM卡(只能使用移動(dòng)卡)插入到GSM卡槽中,通電,觀察電源指示燈是否亮起、信號(hào)指示燈一個(gè)亮起一個(gè)滅掉,亮起和滅掉的頻率時(shí)間相同,這說明GSM模塊處在搜索信號(hào)的狀態(tài),等到信號(hào)指示燈突然閃一下,滅掉大概2-3秒后又重新亮起,顯示常亮狀態(tài),則說明GSM模塊正式連接上了信號(hào),這個(gè)部分運(yùn)行正常。第二步,將單片機(jī)與電腦通過USB線和端口連接上,下載系統(tǒng)程序到單片機(jī)中,下載成功后,斷開連線,正式進(jìn)入到調(diào)試模塊。第三步,檢查LCD顯示屏是否正常顯示,顯示屏上包含實(shí)時(shí)時(shí)間,例如2021-05-01(上行),12:00:00。確認(rèn)該步驟運(yùn)行正常,進(jìn)行下一步。第四步,測試每個(gè)按鍵是否運(yùn)行正常。依次按下“1234567890”,觀察是否完全顯示;按下“D”,觀察是否顯示界面是否歸位。第五步,以上步驟都確認(rèn)無誤后,則可進(jìn)入下一個(gè)測試步驟。5.3.2短信發(fā)送測試按鍵測試步驟確認(rèn)無誤后,進(jìn)行本項(xiàng)測試,測試步驟如下:第一步,發(fā)送四位隨機(jī)數(shù)字發(fā)送測試。先按下“A”鍵,然后按下收信人手機(jī)號(hào)碼,例如,輸入完成后按“#”,此時(shí)已處于短信發(fā)送狀態(tài)。當(dāng)聽到蜂鳴器短鳴一聲“嘀——”,提示短信發(fā)送成功,此時(shí)顯示屏上僅顯示收信人號(hào)碼和短信內(nèi)容“6428”,不會(huì)顯示時(shí)間。與此同時(shí),手機(jī)上會(huì)收到內(nèi)容為“6428”的短信。此時(shí)按下“D”鍵,系統(tǒng)歸位,顯示界面重新顯示當(dāng)前時(shí)間。發(fā)送四位隨機(jī)數(shù)字測試成功。圖5-1發(fā)送四位隨機(jī)數(shù)字測試界面第二步,發(fā)送英文測試。先按下“B”鍵,然后按下收信人手機(jī)號(hào)碼,例如,輸入完成后按“#”,此時(shí)已處于短信發(fā)送狀態(tài)。當(dāng)聽到蜂鳴器短鳴一聲“嘀——”,提示短信發(fā)送成功,此時(shí)顯示屏上依舊顯示當(dāng)前時(shí)間,不會(huì)顯示收件人號(hào)碼和短信內(nèi)容。與此同時(shí),手機(jī)上會(huì)收到內(nèi)容為“EnglishTEST”的短信。此時(shí)按下“D”鍵,系統(tǒng)歸位,顯示界面顯示當(dāng)前時(shí)間。發(fā)送英文測試成功。圖5-2發(fā)送英文測試界面第三步,發(fā)送英文測試。先按下“C”鍵,然后按下收信人手機(jī)號(hào)碼,例如,輸入完成后按“#”,此時(shí)已處于短信發(fā)送狀態(tài)。當(dāng)聽到蜂鳴器短鳴一聲“嘀——”,提示短信發(fā)送成功,此時(shí)顯示屏上依舊顯示當(dāng)前時(shí)間,不會(huì)顯示收件人號(hào)碼和短信內(nèi)容。與此同時(shí),手機(jī)上會(huì)收到內(nèi)容為“中文測試”的短信。此時(shí)按下“D”鍵,系統(tǒng)歸位,顯示界面顯示當(dāng)前時(shí)間。發(fā)送中文測試成功。圖5-3發(fā)送中文測試界面5.4本章小結(jié)本章主要介紹了整個(gè)系統(tǒng)的測試過程。首先通過硬件測試,確認(rèn)板件電路之間連接通路,無斷路現(xiàn)象;其次通過軟件測試,確認(rèn)源代碼運(yùn)行無誤,能完整地實(shí)現(xiàn)短信收發(fā)的軟件過程;最后著重介紹了硬件設(shè)備和軟件系統(tǒng)結(jié)合下的整體系統(tǒng),逐一測試過后,整個(gè)系統(tǒng)操作流程無任何錯(cuò)誤,本次測試過程完美結(jié)束??偨Y(jié)在當(dāng)今這個(gè)信息飛速發(fā)展的時(shí)代,短信的發(fā)展過程無疑是讓人驚嘆不已的,在眾多依據(jù)短信收發(fā)原理的應(yīng)用中,單片機(jī)承載著它一直朝著最前端的方向走去,短信收發(fā)系統(tǒng)的基本傳輸原理能夠運(yùn)用到相當(dāng)多的領(lǐng)域當(dāng)中,不管是人類的日常生活,還是工業(yè)生產(chǎn)領(lǐng)域,亦或是未來的智能生活領(lǐng)域,它都能發(fā)揮出極大的作用,這也決定了它的研究價(jià)值。在本設(shè)計(jì)中,針對(duì)短信收發(fā)系統(tǒng)的原理和設(shè)計(jì)理念,我參考了許多國內(nèi)外優(yōu)秀的成果報(bào)告研究和文獻(xiàn),最終也讓我受益匪淺。本設(shè)計(jì)通過使用系統(tǒng)模型,利用按鍵電路模塊的工作原理、GSM模塊SIM900A模塊支持短信收發(fā)的原理以及單片機(jī)最小系統(tǒng)的工作原理,結(jié)合串口傳輸設(shè)計(jì)、AT指令、LCD1602顯示器和各個(gè)相關(guān)軟件,最終實(shí)現(xiàn)了短信的收集發(fā)送過程。通過設(shè)置相應(yīng)的按鍵信息來實(shí)現(xiàn)文本信息的輸入、通過串口傳輸設(shè)置發(fā)送信息,再由顯示模塊顯示出短信內(nèi)容來。本設(shè)計(jì)設(shè)計(jì)了許多單獨(dú)模塊的介紹和運(yùn)用,對(duì)于那些優(yōu)秀的研究成果來說,雖然設(shè)計(jì)理念和想法不是最具有創(chuàng)新能力的,但是未來對(duì)于單片機(jī)中短信收發(fā)系統(tǒng)的發(fā)展過程是無限的,以后的要求也會(huì)越來越高,并且隨著人類生活往更加智能化的方向發(fā)展,對(duì)于單片機(jī)中短信收發(fā)原理的研究也會(huì)日新月異。參考文獻(xiàn)[1]現(xiàn)代通信原理與技術(shù)[M].西安電子科技大學(xué)出版社,張輝,曹麗娜編著,2002[2]李燕梅.GSM移動(dòng)網(wǎng)絡(luò)綜述[J].大理學(xué)院學(xué)報(bào),2005(S1):107-111+116.[3]張慶力,劉姜偉,張鑫.基于SIM900A模塊的短信收發(fā)系統(tǒng)設(shè)計(jì)[J].電子世界,2016(08):152-153.[4]牛丹,買和木提,周澄,翁多杰.單片機(jī)控制GSM模塊實(shí)現(xiàn)短信收發(fā)的技術(shù)及應(yīng)用[J].儀器儀表與分析監(jiān)測,2008(04):7-9+12.[5]曾敬,滕軍,章三妹.短信收發(fā)系統(tǒng)設(shè)計(jì)[J].信息與電

溫馨提示

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

評(píng)論

0/150

提交評(píng)論