基于GSM的LED显示屏远程控制设计_第1页
基于GSM的LED显示屏远程控制设计_第2页
基于GSM的LED显示屏远程控制设计_第3页
基于GSM的LED显示屏远程控制设计_第4页
基于GSM的LED显示屏远程控制设计_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

苏州大学硕士毕业设计论文题目:基于GSM的LED显示屏远程控制设计院别电子信息学院学号20104328010姓名学科、专业电子与通信工程研究方向学位级别专业学位指导教师协助指导者摘要随着现代电子工业技术飞速发展,传统的LED显示屏的信息输入只能通过数据线与电脑直接连接来进行,这样的方法逐渐暴露出一系列的问题及弊端。不能满足远程信息实时发布的需要。本文采用无线远程控制的LED显示屏可通过GSM短信的方式接收文字信息,具有良好的收益前景,实现了LED显示屏随时随地获得信息的梦想,从而大大拓展了LED显示屏的应用领域。极大的降低了成本,在实际工作中起到了事半功倍的作用,增强LED显示屏作为信息显示载体发布信息的灵活性和实时性。本论文完成基于GSM的短信远程控制无线LED显示屏系统中的短信接收模块设计。由ARM(STM32系列)处理器控制短信接收处理模块SIM900A接收短信并进行处理,最后提取出短信内容储存在外部FLASH中。关键词:SIM900A模块GSMSMSTCP数据收发ARM处理器AT指令PDU编码PAGEIIAbstractKeyWords:PAGEV目录摘要 (I)Abstract (II)1.绪论 (1)1.1LED显示屏的研究现状及发展趋势 (1)1.2LED显示屏控制系统的研究现状与发展趋势 (2)1.3GSM通信系统 (3)1.4课题研究的意义 (3)1.5本课题主要完成的内容 (3)2.系统方案设计 (5)3.硬件部分 (8)3.1LED显示屏 (8)3.1.1LED显示屏的显示原理 (8)3.1.2LED显示屏的驱动原理 (9)3.1.3LED显示屏的显示原理优点 (8)3.2ARM处理器 (8)3.2.2ARM概述 (8)3.2.3STM32简介 (9)3.3ARM最小系统设计 (10)3.3.1电源电路介绍 (10)3.3.2复位电路 (11)3.3.3JTAG调试电路 (12)3.4短信接收模块 (13)3.4.1SIM900A概述 (13)3.4.2SIM900A功能结构 (14)3.4.3SIM900A引脚功能 (15)3.4.4SIM900A外围电路设计 (15)4.短消息简介 (18)4.1短消息概述 (18)4.2短消息的格式 (19)4.3短消息的控制方式 (19)4.4AT指令 (19)4.5短消息编码 (20)4.6Unicode编码 (21)5.软件部分 (22)5.1本设计功能介绍 (22)5.2软件编译环境ADS1.2 (22)5.2.1ADS1.2概述 (22)5.2.2ADS集成开发环境的组成 (22)5.3流程图设计 (24)5.4程序设计 (25)5.4.1串口初始化程序设计以及头文件 (25)5.4.2中断程序设计 (26)5.4.3串口接收函数设计 (26)5.4.4主程序设计 (27)6.总结与说明 (28)6.1总结 (28)6.2说明 (28)致谢 (29)参考文献 (30)附录 (32)附录A原理图设计 (32)附录B短信息接收程序设计 (33)1.绪论PAGE1绪论1.1LED显示屏的研究现状及发展趋势当今社会LED显示屏的技术和产业都取得了长足的发展,作为重要的现代信息发布媒体之一LED显示屏在金融、交通、广告等领域被广泛地应用。伴随社会信息化进程的加速推进,LED显示屏技术也在不断地推陈出新,应用领域愈加广阔。[1]LED显示屏是九十年代初期全球迅速发展起来的新型信息显示媒休,它利用发光二极管构成的点阵模块组成像素组成大面积显示屏幕,以可靠性高、使用寿命长、环境适应能力强、性价比高等特点,在较短时间内,迅速成长为平板显示的主流产品,在信息显示领域得到广泛的应用。我国LED显示屏产业自90年代开始,发展到目前,产业已初具规模,并形成了一批具有一定规模的骨干企业。据不完全统计,全国从事LED显示屏的各类企业约有180家,从业人员近万人。其中130家企业加入了中国光学光电子行业协会LED显示屏分会,年度销售总额占全国同行业的80%以上。目前国内主要LED显示屏制造厂商主要集中在华东、华南、华北区域。国内LED厂商中,年产值上千万的有22余家在规模迅速发展的同时,产品技术也推陈出新,一直保持了在该领域内比较先进的水平。早在90年代初,国产的LED显示屏就具备了成熟的16级灰度256色视频控制技术和无线遥控等,代表了当时的国际先进技术水平。近几年,在全彩色LED显示屏256级灰度视频控制技术、集群无线控制、多级群控技术等方面,均有居国内外先进技术水平的产品出现。在LED显示屏控制专用大规模集成电路方面,国内企业也有开发生产并得到了实际应用。[1]进入二十一世纪的示技术将是平板显示的时代,LED显示屏作为平板显示的主导产品之一无疑会有更大的发展,当之无愧成为二十一世纪平板显示的代表性主流产品。蓝色及纯绿色LED产品自出现以来,成本逐年快速降低,已具备成熟的商业化条件。基础材料的产业化,使LED全彩色显示屏产品成本下降,应用加快。目前国际上LED红管的单价急剧下跌,某些厂商的蓝管价格也下降到0.6美元/颗,纯绿管逐渐大批量生产,显示屏屏体价格会逐步降低;同时,随着控制技术的发展和屏体稳定性的提高,使显示屏的质量也较过去为佳。全彩色LED显示屏将是LED显示屏的重要发展方向。LED产品性能的提高,使全彩色显示屏的亮度、色彩、白平衡均达到比较理想的效果,完全可以满足户外全天候的环境条件要求,同时,由于全彩色显示屏价格性能比的优势,预计在未来几年的发展中,全彩色LED显示屏在户外广告媒体中会越来越多地代替传统的灯箱、霓红灯、磁翻板等产品,体育场馆的显示方面全彩色LED屏更会成为主流产品。据不完全统计,世界上生产全彩屏,其中产品齐全,规模较大的公司约有30家左右,主要分布在美国、欧洲、亚洲。而亚洲主要是日本、中国台湾、中国大陆。国内从90年代中期开始生产全彩色显示屏,到2002年初,全国范围内的全彩色LED显示屏达到300多块。全彩色LED显示屏的广泛应用会是LED显示屏产业发展的一个新的增长点。材料、技术的成熟及市场价格的基本均衡之后,LED显示屏的标准化和规范化将成为一个新趋势。近几年业内的发展,市场竞争在传统产品条件下是以价格作为主要的竞争手段几番价格回落调整达到基本均衡,产品质量、系统的可靠性等将成为主要的竞争因素,这就对LED显示屏的标准化和规范化有了较高要求。1999年,中国光协光电器件分会LED显示屏专业委员会在昆明组织起草了《LED显示屏检测方法》,经修改后,于2000年8月正式印发。[2]信息化社会的形成,信息领域愈加广泛,显示屏的应用前景更为广阔。预计大型或超大型LED显示屏的主流产品局面将会发生改变,适合护服务行业特点和专业性要求的小型LED示屏会有较大提高,而向信息服务领域的LED显示屏产品门类和品种体系将更加丰富部分潜在的市场需求和应用领域将会有所突破,如公共交通、停车场、餐饮、医院等综合服务方面的信息显示屏需求量将有更大的提高,大批量、小型化的标准系列LED显示屏在LED显示屏市场总量中将会占有多数份额。[2]1.2LED显示屏控制系统的研究现状与发展趋势LED显示屏具有发光亮度高,色彩鲜艳,寿命长等优点,自上世纪80年代问世以来便引起了人们的广泛关注,并逐步发展成为一个技术全面的产业。LED显示屏控制系统也随之发展起来,并随着技术的进步几经更新。这期间主要经历了两个阶段,分别是:基于单片机的LED显示屏控制系统,基于ARM+FPGA/CPLD的SOPC片上系统的LED显示屏控制系统。LED显示屏的单片机控制系统是将微处理器,存储器,输入输出设备集成在一块PCB板上来实现对LED显示屏的驱动、扫描、存储等控制,这种方式的控制系统在八十年代后期起一直到现在都是LED显示屏控制系统的主流方式,技术相当成熟,能很好的适应公众场合的信息显示。该系统的一般框架如下:单片机单片机列驱动行驱动LED屏图1.2基于单片机的LED显示屏控制系统一般框图[3]基于单片机的LED控制系统按照单片机内核的不同又可分为两种情形:第一种,基于51系列单片机的LED显示屏控制系统。第二种,基于ARM的LED显示屏控制系统。这两钟方式的控制系统组成都差不多,外围电路组成变化不大。但是,由于LED显示屏控制较复杂,特别是对于显示特殊效果,如循环移动、覆盖、霓虹灯效果,要求处理器运算速度快、执行效率高,51系列单片机是8位机且硬件资源受限制渐渐不能适应这种高质量,大容量数据的显示,ARM处理器是32位机,各种硬件资源相当丰富,因此在实践应用中逐渐有取代51系列单片机的趋势。[3]苏州大学硕士学位论文PAGE181.3GSM通信系统GSM中文名:全球移动通信系统;英文名:Globalsystemformobilecommunications。GSM属于第二代移动通信技术,起源于欧洲的移动通信技术标准,又称“全球通”,作为全球性的移动通信标准,在全球160多个国家中广为分布。全球用户数达到10亿(截至到2013年的6月底)。同样,GSM在中国也取得了长足的发展。20世纪90年代引进该技术标准,进而取代了第一代移动通信技术标准-蜂窝模拟移动技术。在随后的短短的数十年里,中国移动已逐步建立了覆盖广、通信质量高、业务品种丰富、服务水平一流的移动通信网路,使中国成为世界上网络规模和用户规模最大的移动通信市场。GSM系统包括GSM900:900MHz、GSM1800:1800MHz及GSM-1900:1900MHz等几个频段。图1.1GSM系统结构MS:移动台OSS:操作支持子系统BSS:基站子系统NSS:网路子系统NMC:网路管理中心DPPS:数据后处理系统SEMC:安全性管理中心PCS:用户识别卡个人化中心OMC:操作维护中心MSC:移动业务交换中心VLR:来访用户位置寄存器HLR:归属用户位置寄存器AUC:鉴权中心EIR:移动设备识别寄存器BSC:基站控制器BTS:基站收发信台ISDN:综合业务数字网PDN:公用数据网PSTN:公用电话网GSM系统由若干个子系统或功能实体组成。其中基站子系统(BSS)在移动台(MS)和网路子系统(NSS)之间提供和管理传输通路,特别包括了MS与GSM系统的功能实体之间的无线接口管理。NSS负责管理通信业务,保证MS与相关的供应能够通信网或与其他MS之间建立通信。MS、BSS和NSS组成GSM系统的实体部分。操作支持系统(OSS)提供运营部门一种手段来控制和维护这些实际运行部分。GSM功能具有一下功能:(1)话音功能GSM最重要的功能就是电话服务功能,而这项服务须保证我们的GSM用户在任何地点均能与其它有线或无线用户通话。且通话必须保证是双向的。从电话服务演生出的另一话音功能是语音信箱。声音信息被储存,使呼叫不通时,用户可将声音存入GSM用户的语音信箱,而GSM用户也能接入语音信箱听取留言。(2)数据传输服务提供给固定(有线)用户和ISDN用户的大部份服务GSM都提供,包括分组交换资料网所提供的服务。GSM资料用户可以和PSTN用户相连接,也可与ISDN用户相连。PSTN(publicSwitchTelephoneNetwork)(3)短消息服务GSM能够传送包括送往移动台和移动台送出的短消息(SMS-MT/PP-MobilTerminatingShortMessageServiceandSMS-MO/PP-MobilOrinamtingShortMessageService)。另一种消息服务是"蜂窝广播短消息服务"(SMS-CB-CellBroadcastShortMessageService),这种服务是基地台在每隔一段固定时间对移动台送出广播讯息,例如天气预报,股票行情,重要新闻等[9]。1.4课题的研究意义随着电子工业的飞速发展,越来越多的场所需要用LED点阵显示图形和汉字。LED显示屏是利用发光二极管点阵模块或像素单元组成的大面积显示屏幕。由于它具有可靠性高、使用寿命长、性能价格比高、使用成本低、环境适应能力强等特点,广泛应用于建筑市场、拍卖行、医院、体育场馆、车站、码头、机场、商场、宾馆、工业企业管理和公共场所广告宣传、证券与银行信息显示、公交车辆报站系统等。传统电子显示屏的内容由电脑通过数据线发送,信息只能在固定的电脑上发送,只能固定地显示所连接电脑一次发送的信息,且只能在短距离内使用,一般只有数十米。实际使用中暴露出的问题和弊端如:如脱机屏的方式、信息管理不方便、更新信息需换芯片等问题。使用中浪费大量的人力和财力。短消息是GSM(全球移动通信系统)中最简便的数据通信方式之一。随着短消息业务的日益完善,短消息已具备承载重要数据信息的能力。而运用短信来远程控制LED显示屏内容大大降低了成本,在实际工作中起到了事半功倍的作用。意义如下:(1)信息发送:传统电子显示屏的内容由电脑通过数据线发送,信息只能在固定的电脑上发送。GSM无线电子信息屏的内容通过电脑上网、电脑连接专用发送模块、通过手机短信息方式发布,因此,发送信息不受时间和空间的限制。(2)显示方式:传统电子显示屏只能固定地显示所连接电脑一次发送的信息。GSM无线电子信息屏随时接收信息,而且每条信息都可以定义显示时长,显示频率。(3)控制距离:传统电子显示屏只能在短距离内使用,一般只有数十米,GSM无线电子信息屏在全国城镇地区均可使用,只要GSM网覆盖的地方都可安装,不受距离和位置的限制。信息行业的飞速发展迅速,作为主要平面显示媒介的LED显示屏的作用也越来越广泛,已经从公共信息展示等商业应用向消费类多媒体应用渗透。但同时应该清楚的认识到我国的LED技术虽然发展迅速但和世界先进水平还有一定的差距。我国自产的LED芯片,外延片产量仍有限,其产品以中、低档为主,产业化规模偏小,只能满足国内封装企业需求量的20%~30%,大部分高性能LED和功率LED产品均要依赖进口。此外,在LED的应用市场上面,也存在产品种类、品种等方面的制约。相关的从业人员也会越来越紧缺。因此本课题不论是对自己知识水平的提高还是对我国LED显示技术的发展都有非常现实与积极的意义。1.5本课题主要完成的内容本课题要求设计远程控制LED显示屏信息装置。GSM网络具有良好的覆盖功能,并且传输信息稳定可靠,GSM短信收发模块发展至今也有相对比较好的性能,所以本课题是基于GSM网络之上用短信来控制无线LED显示屏显示内容。该设计有良好的市场前景,在实际工作中起到了事半功倍的作用。能够大大提高工作效率,节约大量的人力财力。总体框架设计该设计主要实现以下功能:⒈通过GSM网络接收信息的发入和存储;⒉完成对信息的处理,把PDU码中有用内容提取出来以字符的形式存放;⒊给存储的字符建立字模,然后通过LED点阵扫描显示在LED屏上;⒋无线即时更改LED屏幕内容,方便信息高效传输。基于以上几点,本设计的研究的重点主要在前几个功能上面,主要应解决一下几个设计难点:⒈短消息是如何接收的;⒉如何定义PDU编码的帧格式提取有用信息;⒊字模是怎样在LED屏幕上点阵显示的。在明确了方向以后,我从以下几个方面着手设计首先,深入学习相关专业知识,掌握整个设计系统的工作原理,根据原理设计本课题相关方案和原理图。其次,设计基于GSM的无线LED显示屏的短信接收模块,主要包括以下几部分设计:课题框图设计、课题原理图设计、以及对单元电路的设计、短信接收流程图及程序设计。最后,根据上述设计主要完成protel电路图设计,用汇编语言对该系统进行短信接收程序设计,然后对短信息接收程序进行编译,最后送LED显示。2.系统方案设计本设计以ARM处理器STM32为核心,利用SIM900A.和LED显示模块,实现短信的接收和显示。系统在ARM处理器的控制下,由GSM短信接收模块接收短信,通过ARM处理器进行数据处理,提取出将要显示的数据,进行存储,并控制LED显示模块进行显示。总体设计方案原理框图如图2.1所示。图2.1系统方框图如图所示系统框图由GSM短信接收模块,RS232接口模块,ARM处理器,LED显示模块组成。数据处理模块采用了一ARM为控制核心的处理器,完成对数据的判断、数制转换、存储等功能。ARM处理器是本系统的控制核心,实现对系统的处理、控制,选用ARM公司的STM32系列芯片。该系列单片机高性能、低成本、低功耗的嵌入式应用设计的ARMCortex-M3内核。本系统采用的STM32属于互联型产品,具有以下标准功能:72MHZ主频,56k字节Flash,64字节SRAM,2个看门狗,多个16位定时器,80%的引脚可以作为通用I/O口,以及USART、SPI等通信外设,其外设完全满足本系统的功能要求。LED显示模块实现系统的字符显示,选用的是12块8X8LED点阵模块组成LED显示屏。其原理框图如图2.2所示。ARM最小系统ARM最小系统FLASHLED点阵1LED点阵12行驱动列驱动图2.2LED点阵显示图短信接收模块,选用的是芯讯通(SIMCOM)公司生产的SIM900A,是一款尺寸紧凑的GSM/GPRS模块。其采用SMT封装,并基于STE的单芯片案,由于其ARM926EJ-S架构,性能强大,支持AT指令。

3.硬件部分硬件部分3.1LED显示屏3.1.1LED显示屏的显示原理无论是单个LED(发光二极管)还是LED七段码显示器(数码管),都不能显示字符(含汉字)及更为复杂的图形信息,主要是因为它们没有足够的信息显示单位。LED点阵显示是把很多的LED按矩阵方式排列在一起,通过对各LED发光与不发光的控制完成各种字符或图形的显示,在一定面积的矩阵中集成的LED点数越多显示的文字或图像就会越清晰。当需要显示相关的文字时就只要点亮相应的LED灯管的正极加高电压,在负极加低电压即可。一般的LED屏是由一个个小模块组成的,常见的有8*8矩阵模块等,通过将这些模块级联就会得到所需大小的LED显示屏。[3]屏幕显示可分为静态显示和动态扫描显示两种。静态显示每一个像素需要一套驱动电路,如果显示屏为n×m个像素,则需要n×m套驱动电路;动态扫描显示则采用多路复用技术,如果是P路复用,则每P个像素需一套驱动电路,n×m个像素仅需n×m/P套驱动电路。对动态扫描显示而言,P越大驱动电路就越少,成本也就越低,引线也大大减少,更有利于高密度显示屏的制造。在实际使用的LED大屏幕显示器中,很少采用静态驱动。[3]3.1.2LED显示屏的驱动原理由LED器件的发光原理可知,只要在LED器件上加上足够的正向电压,那么流过它的电流就会使它发光,这就是LED器件的驱动。在实际应用中,往往需要调节LED器件的发光强度,通常我们是通过调节流经LED器件的电流的平均时间来实现的。常见的LED器件的驱动方式有:直流驱动,脉冲驱动和扫描驱动。(1)脉冲驱动所谓脉冲驱动方式,就是利用人眼的视觉暂留效应,以脉冲的方式对LED器件进行供电,使之间歇性地点亮。采用这种驱动方式需要对以下两个方面进行考虑脉冲电流的幅值和其重复颇率。首先,脉冲电流幅值的选择,当脉冲驱动的平均值与直流驱动的电流值相等时,我们人眼的感觉是相同的,也就是说两者的发光强度相当。由于人眼的视觉暂留现象不能低与24HZ每秒,故采用该驱动方法时,驱动频率不能小于24次每秒。(2)扫描驱动[6]扫描驱动是通过数字逻辑电路,使若干LED器件轮流导通,用以节省控制驱动电路。LED显示屏是将发光灯按行按列布置的,驱动时也就按行按列驱动。在扫描驱动方式下可以按行扫描,按列控制;也可以按列扫描,按行控制.所谓“扫描”的含义,就是指一行一行地循环接通整行的LED器件,而不问这一行的哪一列的LED器件是否应该点亮,某一列的LED器件是否应该点亮,由所谓的列控制电路来负责。[6](3)直流驱动。这是最简单的驱动方式,只要对LED直接通以直流电即可。3.1.3LED显示屏的优点LED显示与传统显示方式相比有如下几个优点:1.光效率高:光谱几乎全部集中于可见光频率,效率可以达到80%-90%。而光效差不多的白炽灯可见光效率仅为10%-20%。2品质高:由于光谱中没有紫外线和红外线,故没有热量,没有辐射,属于典型的绿色照明光源。3.能耗小:单体功率一般在0.05-1w,通过集群方式可以量体裁衣地满足不同的需要,浪费很少。以其作为光源,在同样亮度下耗电量仅为普通白炽灯的1/8-10。4.寿命长:光通量衰减到70%的标准寿命是10万小时。一个半导体照明灯具正常情况下可以使用长达50年。LED显示器与LCD显示器相比,LED在亮度、功耗、可视角度和屏幕更新速率等方面,都更具优势。LED与LCD的功耗比大约为10:1,而且更高的更新速率使得LED在影像方面有更好的性能表现,能提供宽达160°的视角,可以显示各种文字、数位、彩色图像及动画资讯,也可以播放电视、录影、VCD、DVD等彩色视频信号,多幅显示幕还可以进行联网播出。[7]而有机LED显示幕(OLED)的单个元素反应速度是LCD液晶屏的1000倍,在强光下也可以照看不误,并且适应零下40度的低温。利用LED技术,可以制造出比LCD更薄、更亮、更清晰的显示器,拥有更广泛的应用前景。[7]结合本设计实际应用,因为要用作公交车的报站显示,所以要求有高亮度,高寿命,更广的可视角度的特点,故本设计选用LED屏。3.2ARM处理器3.2.1ARM概述

90年代初ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器。现在很多行业的产品,像工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,可以说ARM技术正在逐步渗入到我们生活中。ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。目前,全世界有几十家大的半导体公司都使用ARM公司的授权,因此既使得ARM技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力[20]。到目前为止,ARM微处理器及技术的应用几乎已经深入到各个领域:

1、工业控制领域:作为32位的RISC架构,基于ARM核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,ARM微控制器的低功耗、高性价比,向传统的8位/16位微控制器提出了挑战。

2、无线通讯领域:目前已有超过85%的无线通讯设备采用了ARM技术,

ARM以其高性能和低成本,在该领域的地位日益巩固。

3、网络应用:随着宽带技术的推广,采用ARM技术的ADSL芯片正逐步获得竞争优势。此外,ARM在语音及视频处理上行了优化,并获得广泛支持,也对DSP的应用领域提出了挑战。

4、消费类电子产品:ARM技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。

5、成像和安全产品:现在流行的数码相机和打印机中绝大部分采用ARM技术。手机中的32位SIM智能卡也采用了ARM技术。

除此以外,ARM微处理器及技术还应用到许多不同的领域,并会在将来取得更加广泛的应用[14][15][16]。一般来说,对于小屏幕的LED显示屏的控制都是采用51系列单片机作为主控芯片。通常的解决方案是这样:单片机单片机总线驱动器行驱动电路LED点阵列驱动电路图2.1单片机对LED的控制显示示意图该解决方案的控制流程如下:首先由单片机发出要在LED显示屏上显示的文字数据信息以及相应的控制信息到总线驱动器。总线驱动器本身并不对上位机发过来的信号进行任何的改变,只是将这些信号传递到下一级,并对其提供足够的驱动电流。然后总线驱动器对传过来的驱动信号分两路,一路传到行驱动电路,一路传到列驱动电路,在常见的显示驱动电路设计中,列控制一般采用串入并带锁存的移位寄存器如74HC595,将数据打入锁存器中,使寄存器各引脚呈现与锁存器相同的状态来选中需要点亮的列。行控制一般采用译码器电路如4/16译码器74HC154,控制信号经译码后选中需要点亮的行。[8]当行、列驱动信号分别加载到LED点阵上时,就可将要显示的信息在LED屏上显示出来。[8]该方案的优点主要有:该方案结构简单,使用的器件常见且便宜,设计成本低廉;编程简单,调试方便。缺点主要有:硬件结构设计需要较多的控制信号线,占用单片机较多端口,从而造成端口资源的浪费;且该方案一般只能用于简单的文字和数字的显示,不能用于视频的显示。对与大屏幕的显示,由于大型LED屏幕的点阵规模极其庞大,所以采用低端单片机控制,用移位寄存器来实现数据的串行转并行的方法远不能满足需求。目前一般采用的方案是基于ARM的控制和基于CPLD的驱动的模式。基于这种方式的控制系统能很好的满足设计要求,如图2.2所示。上位机上位机PC串口通信ARM主控芯片扫描驱动电路LED显示屏图2.2系统原理图该方案的基本原理如下:该系统主要由三部分组成:PC机,显示控制电路和LED显示屏构成,PC机在控制中作为上位机,用于对下位机的控制和管理。系统的重点是显示控制电路,ARM和CPLD是显示控制电路的核心部分,共同完成数据的转换,控制信号的发送产生以及对LED显示屏的动态扫描控制,其中数据转换信号控制部分采用ARM实现,而LED显示屏的扫描驱动电路采用CPLD来完成。上位机与下位机之间的通信采用标准的RS232或RS485计算机数据串行通讯方式。LED显示屏在显示控制电路的作用下,主要完成以下功能:按照上位机设定的显示效果显示图像和文字。该方案的优点有:用可编程逻辑器件来完成电路功能,不仅能够满足LED大屏幕系统高速图像数据传输对速度的要求,改善了电路性能,而且增加了电路设计的灵活性,设计中可以根据实际应用的需求灵活修改相应硬件描述语言程序,而不需要修改电路硬件设计,缩短了设计周期,降低了成本。同时,采用基于ARM核的32位微处理器,解决了系统的运行速度、寻址能力和功耗等问题,可以支持更大可视区域的稳定显示,可以存储更多的显示内容。该系统不仅能显示文字信息,而且也能完美支持视频的显示。3.2.2STM32简介图3.1STM32F103引脚图STM32F103的特性如下:1、内核:ARM32位的ARM7Cortex™-M3CPU

最高36MHz工作频率,在存储器的0等待周期访问时可达1.25DMips/MHz(Dhrystone2.1)

单周期乘法和硬件除法

2、存储器

从256K至512K字节的闪存程序存储器

高达48K字节的SRAM

带4个片选的静态存储器控制器。支持CF卡、SRAM、PSRAM、NOR和NAND存储器

并行LCD接口,兼容8080/6800模式

3、时钟、复位和电源管理

2.0~3.6伏供电和I/O引脚

上电/断电复位(POR/PDR)、可编程电压监测器(PVD)4~16MHz晶体振荡器

内嵌经出厂调校的8MHz的RC振荡器

内嵌带校准的40kHz的RC振荡器

带校准功能的32kHzRTC振荡器

4、低功耗

睡眠、停机和待机模式

VBAT为RTC和后备寄存器供电

5、1个12位模数转换器,1μs转换时间(多达16个输入通道)

转换范围:0至3.6V

温度传感器

6、2通道12位D/A转换器

7、DMA:

12通道DMA控制器

支持的外设:定时器、ADC、DAC、I2S、SPI、I2C和USART

8、调试模式

串行单线调试(SWD)和JTAG接口

Cortex-M3内嵌跟踪模块(ETM)

9、多达112个快速I/O端口

51/80/112个多功能双向的I/O口,所有I/O口可以映像到16个外部中断;几乎所有端口均可容忍5V信号

10、多达9个定时器

多达4个16位定时器,每个定时器有多达4个用于输入捕获/输出比较/PWM或脉冲计数的通道

2个看门狗定时器(独立的和窗口型的)

系统时间定时器:24位自减型计数器

2个16位基本定时器用于驱动DAC

11、多达10个通信接口

多达2个I2C接口(支持SMBus/PMBus)

多达5个USART接口(支持ISO7816,LIN,IrDA接口和调制解调控制)

多达3个SPI接口(18M位/秒)

12、CRC计算单元,96位的芯片唯一代码3.2ARM最小系统设计STM32系列单片机由ST公司生产的专为要求高性能、低成本、低功耗的嵌入式应用设计的ARMCortex-M3内核。本系统采用的STM32属于互联型产品,具有以下标准功能:72MHZ主频,56k字节Flash,64字节SRAM,2个看门狗,多个16位定时器,80%的引脚可以作为通用I/O口,以及USART、SPI等通信外设,其外设完全满足本系统的功能要求。因此,本系统采用STM32F103作为总控制器,其最小系统如图2所示。本系统采用4线JTAG接口,即TMS(测试模式选择)、TCK(测试时钟)、TDI(测试数据输入)、TDO(测试数据输出),又采用常规的20pin接口方式,通过仿真器与PC机连接,可以实现在线仿真调试,方便可靠。系统采用8MHZ晶体振荡器,此时需要接负载电路。另外,复位电路的设计方式简洁,可以实现系统可靠复位。

3.2.1电源电路介绍单片机电源采用典型的电源设计方案,如图5所示。其中C9和C10是旁路电容,起到抑制干扰的作用,而C11和C12是电解电容,起到滤波的作用;一般大电容旁边并联一个小电容的目的是降低高频内阻,因为大的电解电容一般采用卷绕工艺制造,所以等效电感较大;小电容可以提供一个小内阻的高频通道,降低电源全频带内阻。这个电路在实际中比较常见。

图5电源部分电路而SIM900A模块电源采用VBAT为3.4V到4.5V的单电源供电,由于和单片机工作电压不同,由单独电源模块供电,如图6所示。VBAT端输出电压4.2V给GSM模块使用。

图6GSM模块的电源3.2.2复位电路由于ARM芯片的高速、低功耗和低工作电压导致其噪声容限低,对电源的纹波、瞬态响应性能、时钟源的稳定性和电源监控可靠性等诸多方面也提出了更高的要求。在图3.4中,信号nRST连接到STM32F103芯片的复位脚。当按下复位键时,nRST引脚立即输出复位信号,使STM32F103芯片复位。图3.4系统复位电路3.2.3JTAG调试电路采用ARM公司提出的标准20脚JTAG仿真调试接口。JTAG信号的定义及连接如图3.7所示。图中,JTAG接口上的信号nTRST连接到STM32F103芯片引脚,已达到控制STM32F103内部JTAG接口电路复位的目的(但不控制CPU复位)。图3.7JTAG接口电路根据STM32F103的应用使用说明,在RTCK引脚接一个4.7K欧姆的下拉电阻,使系统复位后STM32F103内部的JTAG接口使能,这样就可以直接进行JTAG仿真调试了。3.3短信接收模块GSM模块用芯讯通(SIMCOM)公司生产的SIM900A,是一款尺寸紧凑的GSM/GPRS模块,采用SMT封装,基于STE的单芯片案,采用ARM926EJ-S架构,性能强大,支持AT指令。

利用STM32的串口来控制GSMMODEM,单片机与GSM模块一般采用串行异步通信接口,通信速度可设定,通常为19200bps。GSMMODEM与单片机之间采用串口通信的方式,MODEM的TXD、RXD分别为发送、接收端,与单片机的PA10、PA9连接,组成串口通信。GSM模块通过把PWRKEY信号拉低一段时间然后释放来开机。当模块开机后就可以发送AT命令来控制模块,用户可以通过“AT+IPR=x”设置波特率并把参数保存。一旦配置为固定波特率,当模块开机时将会从串口收到字符“RDY”。这些字符在自动波特率激活的情况下无法显示。同样,可以通过把PWRKEY信号拉低一段时间然后释放来关机。或者使用AT命令“AT+CPOWD=1”关闭模块。该命令使模块从网络上注销,让软件进入安全状态,保存有用数据,让然后完全断开供电。在关机前,模块串口将自动发送下列字符串“NORMALPOWERDOWN”,这之后将不能执行AT命令。模块进入掉电模式,仅仅RTC处于激活状态。掉电模式可以通过STATUS引脚来检测,在掉电模式下此引脚输出为低电平。GSM主模块(包括SIM部分)如图3所示。

图3GSM主模块(包括SIM部分)3.3.1SIM900A概述SIM900A是一个2频的GSM/GPRS模块,工作频段为:EGSM900MHZ和DCS1800MHZ。SIM900A支持GPRSmulti-slotclass10/class8(可选)和GPRS编码格式CS-1,CS-2,CS-3andCS-4。SIM900A采用省电技术设计,在SLEEP模式下最低耗流只有1mA。此外,该模块内嵌TCP/IP协议,扩展的TCP/IP命令让用户能够很容易使用TCP/IP协议,这些在用户做数据传输方面的应用时非常有用。SIM900A尺寸较小,几乎可以满足所有用户应用中的对空间尺寸的要求。该模块与用户移动应用的物理接口为68个贴片焊盘,提供了模块和客户电路板的所有硬件接口:键盘和SPI显示接口;主串口和调试串口;一路音频接口,包含一个麦克风输入和一个扬声器输出;可编程通用输入输出接口。SIM900A模块主要特点:SMT封装:易于客户生产加工尺寸小:24*24*3mm功耗低:待机模式电流低于18mA、sleep模式低于2mA„供电范围宽:3.2~4.8V…支持频段:GSM/GPRS900/1800MHz†语音编码:支持半速率、全速率、增强型速率‡支持回声抑制算法,可以基于不同客户设备通过AT命令调节回音抑制消除。3.3.2SIM900A功能结构SIM900A模块功能结构图如下图所示(图3.8),从功能上看主要由4部分组成:GSM基带处理器、GSM射频部分、电源ASIC(ApplicationSpecificIntegratedcircuit)、Flasho。GSM基带处理器是整个模块的核心,它由一个C166CPU和一个DSP处理器内核控制着模块内各种信号的传输、转换、放大等处理过程。GSM射频部分是一个单片收发器SMARTi,它由一个外差式接收器、上变频调制环路发送器(upconversionmodulationlooptransmitter)、一个射频锁相环路和一个全集成中频合成器4个功能块组成,共同完成对射频信号的接收和发送等处理。GSM模块电流变化非常大,空闲时电流小于3.5mA,而在通话期间电流最大可达2.3A,这就对供电电路提出了较高的要求。GSM模块电源ASIC部分使用线性电压调节器把外部输入的电源电压Vbatt+进行稳压处理后供GSM基带处理器和GSM射频部分使用,此外它还输出一个2.9V/70mA的电压供模块外的其他电路使用。GSM射频部分的功率放大器对电源电压要求不高,所以直接使用外部的输入电压Vbatt十。Flash用来存储一些用户配置信息、电话本和其他信息。TC35i共有40个引脚,通过一个ZIF(ZeroInsertionForce)连接器引出.这40个引脚可以划分为5类,即电源、数据输入/输出、SIM卡、音频接口和控制。第1-14脚为电源部分,其中1-5为电源电压输入端VBATT+,6-10为电源地GND,11,12充电引脚,13对外输出电压(供外电路使用),14为ACCU_TEMP接负温度系数的热敏电阻:24-29为SIM卡引脚,分别为CCIN,CCRST,CCIO,CCCLK,CCVCC和CCGND;33-40为语音接口用来接电话手柄:15,30,31和32脚为控制部分,15为点火线IGT(Ignition),当TC35i通电后必须给IGT一个大于100ms低电平,模块才启动,30为RTCbackup31为Powerdown,32为SYNC;16-23位数据输入/输出分别为DSRO,RINGO,RxDO,TxDO,CTSO,RTSO,DTRO和DCDO[13][22]。图3.8TC35i功能模块结构3.3.3TC35i引脚功能TC35i有40个引脚,通过一个ZIF(ZeroInser-tionForce,零阻力插座)连接器引出。这40个引脚可以划分为5类,即电源、数据输入/输出、SIM卡、音频接口和控制。第1~14脚为电源部分:1~5为电源电压输入端Vbatt+,6~10为电源地GND,11、12为充电引脚,13为对外输出电压(共外电路使用),14为ACCU-TEMP接负温度系数的热敏电阻。第24~29脚为SIM卡引脚,分别为CCIN、CCRST、CCIO、CCCLK、CCVCC和CCGND。第33~40脚为语音接口,用来接电话手柄。15、30、31和32脚为控制部分:15为点火线IGT(Ignition),当TC35i通电后必须给IGT一个大于100ms低电平,模块才启动;30为RTCbackup,31Powerdown,32为SYNC。第16~23脚为数据输入/输出,分别为DSR0、RING0、RxD0、TxD0、CTS0、RTS0、DTR0和DCD0。TC35的数据输入/输出接口实际上是一个串行异步收发器,符合ITU-TRS232接口标准。它有固定的参数:8位数据位和1位停止位,无校验位,波特率在300bps~115kbps之间可选,硬件握手信号用RTS0/CTS0,软件流量控制用XON/XOFF,COMS电平,支持标准的AT命令集。其引脚图如3.9所示。图3.9TC35i引脚图3.3.4SIM900A外围电路设计SIM900A模块的正常运行需要相应的外围电路与其配合。SIM900A共有物理接口为个贴片焊盘。SIM900A硬件设计功能框图如图3.2所示。本电路设计之初,主要是为了实现SMS与TCP功能。外部功能模块主要分为串口、电源、SIM卡、以及单片机相应接口。图3.2硬件系统设计功能框图该电路系统设计的关键在于电源部分,由于GSM/GPRS模块电源部分为3.8v,SIM900A模块电源采用VBAT为3.4V到4.5V的单电源供电,由于和单片机工作电压不同,由单独电源模块供电,如图6所示。VBAT端输出电压4.2V给GSM模块使用。

图6GSM模块的电源由于GSM/GPRS模块为静电敏感器件,因此电路中需要加入静电防护措施。本系统中采用ESDA6V1W5,该器件专为静电敏感器件设计,可承受瞬间静电25KV,漏电流小于1uA。4短消息简介4.短消息简介4.1短消息概述短消息业务分为两种:一种是点对点短消息(SMS一PP),在用户之间传送信息;另一种是小区广播短消息(SMS一CB),类似于现在的寻呼,定期在一定的区域内重复广播交通流量、天气状况等信息。不同于寻呼机的是短消息是一种双向通信,GSM系统提供的短消息业务可以让网络端知道被叫方是否收到所发的消息;如果传送失败,被叫方没有回答确认消息,网络会保留所传的消息,一旦网络发现被叫方能够被叫通时,就可以重发消息以确保被叫方能够收到,而且主叫方还能够知道发送是否成功。短消息服务SMS(ShortMessageService)传递信息方便快速,价格低廉,实时性强,因此基于SMS的各种应用也迅速发展起来,如:可以将短消息应用于远程数据采集、监控/监测、报警/预警、车辆调度/安全/导航、企业数字化管理与信息发布等诸多领域,应用前景很广泛。由于这些特点,短消息业务获得了广大用户的青睐,同时也成为了现代个人通信中一种不可缺少的方式。短消息通信仅限于一个消息,换言之,一个消息的传输就构成了一次通信。因此,业务是非对称的,一般认为移动起始短消息传输与移动终接短报文传输是两回事。这并不阻碍实时对话,但系统认为不同的消息彼此独立,消息的传输总是由处于GSM外部的短消息服务中心(SMSC)进行中继,消息有目的地或起源地,但只与用户和SMSC有关,而与其他GSM基础设施无关。短消息提供了一种小数据量(不大于140个GSM短消息功能字节十六进制数)、低成本、高可靠性的方便快捷通信方式。它是利用GSM系统通信令信道的空闲带宽,在电话拨号的同时,把消息发送到GSM的基站,再由短信中心处理存储发送到接收方。发送方不须等待接收方准备就绪,只要和基站联络好即可发送短信,基站收到后会自动与发送方确认,再发送给接收方确认,发送短消息的费用很低。正常情况下完成一次短信的发送时间大约20秒,但短信中心在向下发送时如遇基站忙,将把短信推后发送,头一次是几分钟,越往后推迟时间越长,因此在利用GSM发信时,要考虑畅通率与移动网业务是否繁忙有关,不过在大多数情况下畅通率可达98%,短消息能否成功发送还与终端所在地信号场强有关。短消息是GSM(全球移动通信系统)中最简便的数据通信方式.随着短消息业务的日益完善,短消息已具备承载重要数据信息的能力。GSM通过话路在需要传输大量数据时十分适用,通过申请数据传输功能,可采用终端接GSM手机,中心可用普通电话机,一半是无线一半是有线的方式[5]。西安工业大学北方信息工程学院学士学位论文PAGE214.2短消息的格式由于中文短消息具有内容直观,传送距离远,用户无需建造信号中转站,成本相对低廉,因此在控制领域的应用日益广泛。的型通信模块在国内应用比较广泛,下面先介绍一下有关短消息的基础知识。短消息接收格式如下:SCAPDU-TypeOAPIDDCSSCTSUDLUD格式中英文缩写解释如下:SCA短消息服务中心地址,1一12位数字。PDU-Type协议数据单元类型,1位数字。OA发送方地址,即发送的手机号码。PID协议识别符,1位数字字。DCS数据译码方案,1位数字。SCTS服务中心收到短信时间。UDL用户数据长度,1位字数。UD用户数据(短信内容),1-140位字数。4.3短消息的控制方式TC35i模块采用贺氏指令,ARM处理器可通过正确的指令对模块进行初始化和短消息的接受和发送。对短消息的控制有三种方式模式:⒈基于Block模式⒉基于AT命令的Text文本模式⒊基于AT命令的PDU(Protocoldescriptionunit)模式使用Block模式需要手机生产厂家提供驱动支持,现在还没有发现哪个厂家公布支持这种短信发送模式。目前,PDU模式已取代Block模式,应用文Test本格式时,短消息内容以ASCⅡ码格式直接输入,操作比较简单,但缺点是只能发送英文短消息应用格式时,短消息内容以Unicode格式输入,可以发送任何文字,缺点是短消息内容需要转换成Unicode码,并且要把短消息按格式打包,操作比较复杂。由于本设计采用的是西门子公司的TC35i的模块,所以要掌握短消息的接收原理[19]。4.4AT指令AT指令集是专门用于控制Modem的一组命令,它是由美国Hayes公司所发展的数据传输通信接口,目前已成为全球通用的标准。AT指令集有各种控制Modem的命令,通过串行端口对Modem发出相应的AT命令,不仅可以调节音量,而且可以调整各种工作参数。Hayes公司的SmartModem系列产品是Modem事实上的标准,几乎所有应用于计算机通信的Modem均称与HayesSmartModem兼容,其他各厂家生产的Modem一般都兼容了最基本的HayesAT指令集。九十年代初,AT指令仅被用于Modem操作。由于当时没有控制移动电话文本消息的先例,因此开发了一种叫SMS块模式的协议,它通过终端设备(TE)或电脑来完全控制SMS。几年后,主要的移动电话生产厂商诺基亚、爱立信、摩托罗拉和HP共同为GSM研制了一整套AT指令,其中包含对SMS的控制。AT指令在此基础上演化并被加入GSM07.05标准,以及之后的GSM07.07标准[4]。如表4.1所示。AT指令功

述AT+OFF关机并重新启动AT+CSDH=0在TEXT模式下在返回值中不显示详细的头信息ATE0关闭回显AT+CMGF=1选择短信格式为TEXT模式AT+CMGS发送短信息AT+CMGR读取短信息AT+CMGD=0删除全部短信息表5.1AT指令4.5短消息编码PDU模式中,可以采用三种编码方式来编码要发送的内容,分别是7-bit编码、8-bit编码、16-bit编码。7-bit编码用于发送普通的ASCⅡ字符8-bit编码通常用于发送数据消息,比如图片和铃声等。而16-bit编码用于发送Unicode字符。在这三种编码方式下,可以发送的最大字符数分别是160、140、70。若要发送中文,必须采用PDU模式的Unicode编码方式。设需要发送短消息内容为“Hi”,使用的GSM字符集为7位编码。首先将字符转换为7位的二进制,然后,将后面字符的位调用到前面,补齐前面的差别。例如:H翻译成1001000,i翻译成1101001,显然的H二进制编码不足八位,那么就将i的最后一位补足到H的前面。那么就成了11001000,i剩下六位110100,前面再补两个0,变成0010100(34),于是“Hi”就变成了两个八进制数C834[27]。4.6Unicode编码Unicode(万国码)是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。随着计算机工作能力的增强,Unicode也在面世以来的十多年里得到普及。对于英文来说,ASCⅡ码0~127就足以代表所有字符,对于中文而言,则还须使用两个字节(byte)来代表一个字符,其第一个字节必须大于127(所以我们有许多程序判断中文都是以ASCⅡ码大于127作为条件)。以上用两个字节表示一个中文的方式,习惯上称双字节DBCS,而相对之下,英文的字符码就称为单字节SBCS。虽然双字节DBCS足以解决中英文字符混合使用情况,但对于不同字符系统而言,必须经过字符码转换,非常麻烦。例如中英文混合情况,日文,韩文等等。为解决这个问题,Apple,Xerox,Microsoft,IBM,Novell等很多公司联合制订了一套可以适用于全世界所有国家的字符码,就称为Unicode码。Unicode的特点是不管哪一国的字符码均以两个Byte表示,例如”A”在Unicode码中则是16进制41和00的组合,即4100,高位41转换为ASCⅡ码即是65=A)[20]。5.软件部分PAGE305.软件部分TC35i是一个有40个引脚的短信收发模块,引脚分为启动电路、I/O口、SIM卡口等,通过第18和19引脚和ARM处理器P2.2和P2.3相连进行数据传输。整个程序执行任务为:TC35i收到短信后先执行UART中断处理,然后由ARM对其通讯中断接收,将信息储存在ARM内部BUFFER中等待处理(接收到的内容全部是以PDU编码形式存在BUFFER中,本设计所用到的有用内容则以unicode形式包含在PDU中)。系统软件设计包括:AT指令设计、PDU编码设计、控制程序设计。其中控制程序的编写是基于ADS1.2开发环境,利用C进行编程。具体设计如下:5.1本设计功能介绍本设计功能:实现短信的接收功能。当TC35i接收到信息后,ARM发出指令对短信息提取,在提取过程中还要考虑短消息是否是接收完毕,AT指令是否匹配等因素。就本次设计而言,只考虑接收年月日时分,该字节数远远小于单次接收最大值,所以本次设计软件编译中仅仅考虑一次接受完的情况。接收到的信息又ARM处理器调用储存在缓存或寄存器中有待进一步的数据处理。5.2软件编译环境ADSADS1.2概述ARMADS全称为ARMDeveloperSuite。是ARM公司推出的新一代集成开发工具。现在ADS的最新版是1.2,它取代了ADS1.1和ADS1.0。它除了可以安装在WindowsNT4,Windows2000,Windows98和Windows95操作系统下,还支持Windowsxp和WindowsMe操作系统。ADS由命令行开发工具,ARM时实库,GUI开发环境(CodeWarrior和AXD),实用程序和支持软件组成。有了这些部件,我们就可以为ARM系列的RISC处理器编写和调试自己的开发应用程序了。本次设计的软件编译部分就在ADS1.2环境下进行,用C语言编译完成的。5.2.2ADS集成开发环境的组成ADS1.2由6个部分组成,如表6.1所示。其中用户一般直接操作的是CodeWarriorIDE集成开发环境和AXD调试器苏州大学硕士学位论文名称描述使用方式代码生成工具ARM汇编器,ARM的C、C++编译器,Thumb的C、C++编译器,ARM连接器由CodeWarriorIDE调用集成开发环境CodeWarriorIDE工程管理,编译连接调试器AXD,ADW/ADU,armsd仿真调试指令模拟器ARMulator由AXD调用ARM开发包一些底层的例程,实用程序(如fromELF)一些实用程序由CodeWarriorIDE调用ARM应用库C、C++函数库等用户程序使用表6.1ADS1.2的组成5.3流程图设计根据本次设计原理图可设计出本次毕业设计的流程图,即短信接收流程图,如图5.1所示。该流程图首先对各I/O口初始化,然后进行监听,采取处理器对其查询扫描方式监听短消息是否收到,当收到消息后按照原来的PDU格式储存到寄存器中,或者储存在缓存BUFFER中。在流程图5.1的基础上应用C语言对该流程度进行编写来实现短信接受。

图6.2程序设计流程图5.4程序设计该程序设计包括串口初始化程序设计、终端程序设计、串口信息接收设计,以及主程序构成。这些程序具体如下所示。5.4.1串口初始化程序设计以及头文件头文件的引用由于在整个程序中,需要用到中断功能、需要进行对GPIO的操作与控制、需要调用串口函数,因此,需要添加必要的头文件的引用,具体代码如下:#include"hw_memmap.h"#include"hw_types.h"#include"hw_ints.h"#include"src/gpio.h"#include"src/interrupt.h"#include"src/sysctl.h"#include"src/systick.h"#include"src/uart.h"#defineHWREG(x) (*((volatileunsignedlong*)(x)))输入输出的定义定义PA口的PA2口为中断信号的输入端口,具体定义的代码如下://///////////////////////////////////////////////////////定义地址#defineA1GPIO_PIN_0#defineA2GPIO_PIN_1#defineA3GPIO_PIN_2#defineA4GPIO_PIN_3#defineA5GPIO_PIN_4#defineA6GPIO_PIN_5#defineA7GPIO_PIN_6#defineA8GPIO_PIN_7#defineRECEIVED_SPACE0x40040000////////////////////初始存储地址5.4.2中断程序设计UART中断处理函数UART中断处理函数用以处理串口中断,当中断状态为串口接收中断,则调用串口接收中断处理程序进行中断处理,当中断状态为串口接收中断则调用串口接收中断处理程序进行中断处理,具体代码设计如下:voidUART0IntHandler(void){unsignedlongulStatus;ulStatus=UARTIntStatus(UART0_BASE,true);//获得中断状态。UARTIntClear(UART0_BASE,ulStatus);//清除等待响应的中断。if(ulStatus&UART_INT_RX)//检查是否有未响应的传输中断。{UART_RX();}}5.4.3串口接收函数设计串口接收函数//通讯中断接收程序voidUART_RX(void){unsignedlong*p;p=RECEIVED_SPACEif(RI==l){RI=0;g_ulCount=ulCount;g_pucBuffer=pucBuffer;if(g_ulCount!=0){p=pucBuffer;pucBuffer++;g_ulCount--;}}}5.4.4主程序设计主函数的功能有两个方面:(1)完成整个程序的初始化,包括:设置晶振为时钟源。设置GPIO的A1和A2为UART引脚,使能GPIOPB口并将其设置为输入,设置ALARM中断的触发方式为低电平触发,配置串口为9600的波特率、8位数据位、1位停止位。(2)等待中断的到来。主函数的部分核心代码如下:intmain(void){//使能GPIOPB口SysCtlClockSet(SYSCTL_SYSDIV_1|SYSCTL_USE_OSC|SYSCTL_OSC_MAIN|SYSCTL_XTAL_6MHZ);//设置晶振为时钟源。SysCtlPeripheralEnable(SYSCTL_PERIPH_UART0);SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);IntMasterEnable();GPIOPinTypeUART(GPIO_PORTA_BASE,GPIO_PIN_0|GPIO_PIN_1);//设置GPIO的A1和A2为UART引脚。(A1->RXD,A2->TXD)UARTConfigSet(UART0_BASE,9600,RT_CONFIG_WLEN_8|UART_CONFIG_STOP_ONE|UART_CONFIG_PAR_NONE));//配置UART为9600波特率,8-N-1模式接收数据。UARTIntRegister(UART0_BASE,UART0IntHandler);UARTIntEnable(UART0_BASE,UART_INT_RX);GPIOPinIntEnable(GPIO_PORTA_BASE,ALARM);//使能GPIOA口中断while(1);return0;}6.总结与说明6.总结与说明6.1总结本文设计了基于GSM的无线LED显示屏的短信接收模块设计过程。文中设计了利用GSM短消息

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论