基于GSM短消息的LED点阵广告屏设计.doc

上传人:laozhun 文档编号:4136008 上传时间:2023-04-07 格式:DOC 页数:71 大小:1.57MB
返回 下载 相关 举报
基于GSM短消息的LED点阵广告屏设计.doc_第1页
第1页 / 共71页
基于GSM短消息的LED点阵广告屏设计.doc_第2页
第2页 / 共71页
基于GSM短消息的LED点阵广告屏设计.doc_第3页
第3页 / 共71页
基于GSM短消息的LED点阵广告屏设计.doc_第4页
第4页 / 共71页
基于GSM短消息的LED点阵广告屏设计.doc_第5页
第5页 / 共71页
点击查看更多>>
资源描述

《基于GSM短消息的LED点阵广告屏设计.doc》由会员分享,可在线阅读,更多相关《基于GSM短消息的LED点阵广告屏设计.doc(71页珍藏版)》请在三一办公上搜索。

1、梧 州 学 院毕 业 论 文论文题目 基于GSM短消息的LED 点阵广告屏设计 系 别 电子信息工程系 专 业 电子科学与技术班 级 08电科1班学 号 200800610101学生姓名 黄桂才指导教师(签名) 完成时间 2011 年 12 月摘要本文介绍了一种基于GSM通信模块及STC89C52单片机设计的LED广告屏的设计过程。该设计是由单片机主控芯片STC89C52、TC35i-GSM模块、88LED点阵、GT21L16S2Y字库芯片、AMS1117、8位移位锁存器74HC595、4-16位译码器74HC154等单元电路组成。该设计的主要工作原理是通过GSM模块接收短信息,经单片机进行解

2、码,最终显示到LED点阵屏上。研究表明该设计使用广泛、方便、安全、实用,具有可靠性高、使用寿命长、性能价格比高、使用成本低、环境适应能力强等特点,广泛应用于金融市场、医院、体育场馆、机场、码头、车站、高速公路等公共场所的信息显示和广告宣传。关键词:STC89C52;LED点阵屏;GSM模块;GT21L16S2Y Based on GSM short message LED advertising screenAbstractThis passage introduces a design ,It designed from STC89S52 microcontroller LED advert

3、ising screen base on GSM design. The design is made up of the master microcontroller chip STC89C52, TC35i-GSM modularized circuit, 8 x 8 LED lattice, GT21L16S2Y word stock chip, AMS1117, eight bit shift latch 74HC595, 4-16code translator 74HC154. This designs principle of work is receive short messa

4、ge through the GSM, recoding the code by MCU, and final display to the LED lattice screen. Research shows that this design is widely used, convenient, safe, practical. It has high reliability, long service life, high cost performance, the use of low cost, strong ability to adapt the environment etc,

5、 Widely used in the financial market, hospitals, sports venues, airports, docks, stations, the expressway and other public information display and advertising.Key word : MCU(Micro Controller Unit);STC89C52;LED lattice;GSM; GT21L16S2Y 第一章 引 言11.1课题背景与来源11.2课题意义11.3课题设计内容和方案2第二章 系统概述22.1系统组成22.2系统的功能介

6、绍及操作说明3第三章 硬件组成与设计43.1整体电路图43.2电源电路53.2.1单片机电源53.2.2 LED点阵屏电源63.2.3 字库芯片电源63.3主控芯片单片机73.4单片机最小系统83.5LED点阵显示屏103.5.1 88LED点阵块103.5.2 74HC595引脚及其功能介绍113.5.3 74HC154译码器简介123.6 点阵屏组成方案133.7 字符显示方案153.7.1 Unicode码简介153.7.2 GB2312汉字内码简介153.7.3 GT21L16S2Y字库芯片简介163.7.4 AMS1117173.7.5 电平匹配方法173.8 GSM模块18第四章

7、软件设计194.1开发环境194.2 AT指令194.2.1 简介194.2.3 用法204.2.4 常用与GSM相关的AT指令204.3总的程序流程图214.4 LED扫描显示程序流程图22第五章 设计的测试与分析235.1设计的过程235.2单个模块的调试235.3系统测试达到的技术指标25结束语26参考文献27致谢28附录(一)29附录(二)30第一章 引 言1.1课题背景与来源 现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。大到导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安

8、全保障系统,录像机、摄像机、全自动洗衣机的控制,小到程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机以其强大的易用性,可编程性获得了极大的应用。而本设计就是采用型号为STC89C52的单片机。传统电子显示屏的内容由电脑通过数据线发送,信息只能在固定的电脑上发送,只能固定地显示所连接电脑一次发送的信息,且只能在短距离内使用,一般只有数十米,所以它在实际使用中暴露出一定的问题及弊端。如脱机屏的方式,有信息管理不方便,更新信息需换芯片等问题,从而浪费大量的人力和财力。用连机屏方式的话,虽说可以实时监控与管理,但如果信息显示屏

9、离上位机很远的话(如在高速公路上的显示屏) ,仅仅通信线的费用就很大,这是个迫切需要解决的工程问题。短消息是GSM (全球移动通信系统)中最简便的数据通信方式之一。随着短消息业务的日益完善,短消息已具备承载重要数据信息的能力。而运用短信来远程控制LED显示屏内容大大降低了成本,在实际工作中起到了事半功倍的作用,更具有科研性。1.2课题意义 步入信息化快速发展时代,各种宣传手段日益多元化,设计一种方便实用的广告显示屏是非常有意义的而且可行的。该设计主要包括单片机主控模块、LED点阵模块、TC35i-GSM通信模块、字库模块等。这个设计大大地为人类提高了办事效率,简化了屏幕信息的更新方式,大大降低

10、了显示成本,节省许多人力物力,显示方式灵活多变,更新手段安全可靠。1.3课题设计内容和方案主体功能:设计一个基于GSM短信显示的LED点阵屏,包含以下主要功能:1. 上电后,单片机对GSM等各模块进行初始化,等待短信息的到来。2.GSM收到短信息后,通知单片机,单片机对GSM发出读取短信的命令并读出GSM的短信,分离提取短信息中表示短信内容的Unicode码。3. 单片机利用读到的Unicode码,通过访问字库芯片,将Unicode码转换成为计算机系统中常用的标准汉字内码(GB2312),并存储。4.在无短信息状态时,单片机利用汉字内码,不断访问字库芯片,将上一条短信内容的内码转换成可在LED

11、点阵上显示的字模,依次显示到屏幕上。5.若字数超过屏幕可显示的最大容量,则以移屏的方式依次显示短信内容。6.单片机通过对74HC154和74HC595两块芯片配合控制,以快速扫描的方式实现汉字和字符的显示。7.单片机系统板上配有蜂鸣器,每接收到一条短信就发出“嘀”的一声短鸣以表示短信更新。第二章 系统概述2.1系统组成本次设计主要包括单片机主控模块、GSM通信模块、字库模块、LED点阵显示模块四个部分。单片机STC89C52芯片主要控制电路功能框图如图2-1电源提示LEDSTC89C52 IO口外接插口RS232串行接口蜂鸣器USB电源接口图2-1 设计的电路控制模块框图LED点阵模块其框图如

12、图2-2所示,该模块的基本单元是88LED点阵显示块,由于比较清楚地显示一个汉字一般需要1616个点,故将88LED点阵拼接起来组成能够显示汉字的点阵屏。在本设计中,设计1664的点阵,使用74HC154和74HC595联合驱动控制。1664点阵 74HC15474HC595图2-2 LED点阵屏主控制电路模块框图2.2系统的功能介绍及操作说明本系统的特点和可实现的功能以及具体的操作说明主要有: 1.通电之前,先将SIM卡放入GSM模块中,打开GSM模块,并长按数秒启动键,直到GSM指示灯稳定闪烁,表示GSM模块已经稳定工作。2.接上电源并打开电路开关后,电源显示灯亮,LED点阵屏显示状态信息

13、。3.开始给插入GSM模块中的SIM卡的号码发送短信。4.当GSM接收到短信息后,蜂鸣器发出短鸣,LED屏上显示短信内容。5.若短信内容长度大于四个汉字,则LED屏以移屏的形式显示。第三章 硬件组成与设计硬件设计是本系统的基础,硬件设计的可靠性直接影响系统的稳定性。在叙述上,先介绍了整体的设计,再分模块逐次细致的介绍,其中穿插一些芯片的介绍。3.1整体电路图 整体电路分成三块板,分别为STC89C52的系统板、LED点阵屏驱动控制板及TC35i-GSM模块,STC89C52系统板电路包括单片机STC89C52芯片、IO口外接插口、RS232串行接口、蜂鸣器、USB电源接口。其电路如下图图3-1

14、-1所示。图3-1-1 STC89C52主控制电路图LED点阵屏电路板主要包括16个88拼接成的1664点阵屏幕,以及用于控制LED显示的两块74HC595和四块74HC154。另外,出于节约空间的考虑,我还将电路不是很复杂的用于取字模的字库芯片GT21L16S2Y一并做到该电路板上。因GT21L16S2Y芯片所需的供电电压为3.3V,所以电路中加入了5V-3.3V的稳压模块AMS1117以提供GT21L16S2Y芯片正常工作的电压。其电路原理图如图3-1-2所示图3-1-2 LED点阵屏模块电路图由于GSM模块对电路设计及制作要求相当严格,一般手工制板的方式容易导致模块工作不稳定,而且市场上

15、GSM模块应用十分成熟而广泛,性价比较高,因此本设计使用成品的TC35i模块。3.2电源电路 本次电源设计中主要的问题是不同的电路模块需要的电压伏值不同。如何让各个电源模块独立正常的工作尤为重要。因此对于不同的电压值,分别设计不同的电源模块,给单片机最小系统板电路、LED点阵屏电路、GSM模块提供稳定的电压。包括如何实现3.3v和5v的SPI通信设计。3.2.1单片机电源因为单片机工作电压为直流+5V,正负5% 。电路功耗不高。因此该部分对电源的要求不是很高。通常的电源设计利用的是7805稳压管做一个输出为正5V的直流稳压电源电路,而本设计采用应用广泛的USB接口,使用普通的手机充电器即可供电

16、,方便实用。其电路设计如图3-2-1: 3-2-1单片机电源电路图3.2.2 LED点阵屏电源本设计的LED点阵屏所使用的电压亦是5V,故同样用接口供电。3.2.3 字库芯片电源GT21L16S2Y字库芯片需要3.3V的电源,故在LED点阵屏的5V电源下,加上一块5V-3.3V的稳压芯片AMS1117获取所需电压值。单片机控制继电器电路如下图3-2-2: 3-2-3GT21L16S2Y字库芯片供电电源电路3.3主控芯片单片机STC89系列单片机是MCS-51系列单片机的派生产品。它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容,DIP40封装系列与8051为pin-to-pin

17、兼容。STC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,2个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口。另外 STC89X52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口

18、、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。 3.4单片机最小系统单片机最小系统是能使单片机工作起来的最简单的外围电路。一个单片机最小系统一般主要有时钟电路和复位电路以及另外一些辅助部分。3.4.1复位电路设计复位电路图如图3-4-1所示。复位电路一般有2种复位操作方式:上电位复位方式和手动复位,两种复位的操作电路形式不同。本设计采用上电复位和手动复位并联的方式,既可一上电就复位,又可以手动来复位。上电自动复位:通过电容充电来实现的,VCC的上升时间不超过1ms,就可以实现上电位复位

19、。手动开关复位:手动开关复位在系统出现操作错误或程序运行出错时使用。在单片机系统运行过程中,按下复位键,单片机被强制执行复位操作,系统可以退出错误运行状态,恢复正常工作。 图3-4-1复位电路图 3.4.2 时钟电路时钟是一切微处理器、微控制器内部电路工作的基础。单片机内部有一个自激振荡电路,它是定时控制部件中的一部分,可以通过内部自激振荡或外部提供振荡源这两种方式,驱动内部时钟电路产生系统时钟信号。内部方式:在XTAL1、XTAL2跨接定时元件和两个电容就构成了自激振荡器,C1、C2取5-30PF,起微调和稳定作用。晶振频率:f=1.2-12MHZ,常用频率为6、12、11、0592MHZ。

20、外部方式:外部振荡脉冲信号直接由XALT1端输入,此时,XALT2端悬浮。这种方式常用于多片单片机系统,以使相互的时钟信号保持同步。晶振周期:为振荡器输出的时钟脉冲频率的倒数。是单片机中最小、最基本的时间单位。状态周期:也叫时钟周期,是振荡频率经2分频后获得的信号周期,称S,显然,S为晶振周期的2倍。机器周期:12个晶振周期为一个机器周期,对应计算机执行一个基本操作所需的时间。指令周期:执行一条指令所需的时间,至少包含一个机器周期。指令字节:指令占用存储空间的字节数,有单字节、双字节、三字节三类。当时钟频率为12MHZ和6MHZ时,晶振周期分别为1/12s和1/16s,机器周期分别为1s和2s

21、。由于系统中要使用串行通信,为了便于计算波特率,这里使用22.1184MHZ晶振和两个电容就构成的自激振荡器。如图3-4-2: 图3-4-2时钟电路3.5LED点阵显示屏本设计为一块可同时显示4个汉字的1664点的点阵屏,该屏由16块88点阵拼成。点阵屏由两块74HC595和四块74HC154共同控制,同时每列点阵用一个8550三极管驱动以保证LED的亮度。具体设计如下。3.5.1 88LED点阵块点阵内部结构及外形如下,8X8点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电

22、平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮。如图3-5-1图3-5-1 88点阵显示块内部原理图3.5.2 74HC595引脚及其功能介绍 74HC595芯片是一种串入并出的芯片,在电子显示屏制作当中有广泛的应用。它是8位串行输入/输出或者并行输出移位寄存器,具有高阻、关、断状态三种状态。移位寄存器和存储器是分别的时钟。数据在SCHcp的上升沿输入,在STcp的上升沿进入的

23、存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。 移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。芯片引脚图如图3-5-2所示图3-5-2 74HC595引脚图其各个引脚功能如下:115:三态输出管脚8:电源地9:串行数据输出管脚10:移位寄存器清零端11:数据输入时钟线12:输出存储器锁存时钟线13:输出使能14:数据线15:电源端74595的控制端说明:/SRCLR(10脚): 低点平时将移位寄存器的数据清零。本设计中我将

24、它接Vcc。SRCK(11脚):上升沿时数据寄存器的数据移位。QA-QB-QC-.-QH;下降沿移位寄存器数据不变。RCK(12脚):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。当移位结束后,在RCK端产生一个正脉冲,更新显示数据。/G(13脚): 高电平时禁止输出(高阻态)。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。3.5.3 74HC154译码器简介74HC154是一款高速CMOS器件,74HC154引脚兼容低功耗肖特基TTL(LSTTL)系列。它可接受4位高有效二进制地址输入,并提供16个互斥的低有

25、效输出。74HC154的两个输入使能门电路可用于译码器选通,以消除输出端上的通常译码“假信号”,也可用于译码器扩展。该使能门电路包含两个“逻辑与”输入,必须置为低以便使能输出端。任选一个使能输入端作为数据输入,74HC154可充当一个1-16的多路分配器。当其余的使能输入端置低时,地址输出将会跟随应用的状态。其引脚如图3-5-3所示。 图3-5-374HC154的引脚功能:Y0 Y15:输出(Active LOW)低电平G1, G2:使能输入(低电平)AD:地址输入GND:接地VCC:电源正其真值表如下:INPUTS 输入SELECTED OUTPUT 选定输出(L)G1G2DCBALLLLL

26、LY0LLLLLHY1LLLLHLY2LLLLHHY3LLLHLLY4LLLHLHY5LLLHHLY6LLLHHHY7LLHLLLY8LLHLLHY9LLHLHLY10LLHLHHY11LLHHLLY12LLHHLHY13LLHHHLY14LLHHHHY15XHXXXXNONEHXXXXXNONE3.6 点阵屏组成方案本设计的点阵屏有1664点,即由16行,64列组成,因此采用行和列分别控制的方案。用两个74HC595级联起来控制16行(图3-6-1),用四个74HC154级联起来控制列(图3-6-2)。单片机分别同时控制这六块芯片即可实现对点阵屏上任一个点的控制,再通过快速扫描即可显示图案。

27、根据有关资料,当每个LED的扫描频率达到50Hz时,人的肉眼就无法分辨其扫描状态,换句话说,此时眼睛看到的便是一幅“静止”的图案。图3-6-1 图3-6-2注:在此四片154使用了两个反相器来实现类似于存储器扩展的方法,使得单片机控制154只需要6根线,即6根线控制64个口。3.7 字符显示方案上述方法实现了点阵中任一点的控制后,如何显示一个字符或汉字便成了关键。汉字在液晶上的显示其实就是一些点的显示与不显示,这就相当于我们的笔一样,有笔经过的地方就画出来,没经过的地方就不画。每一个汉字或字符实际上就是一个图案,只不过这些“图案”的大小是规定好的。而在本设计中按常规要求使用1616个点的点阵描

28、述一个“图案”,因此一个汉字需要32个字节的编码来“描绘”。中国的汉字成千上万,再加上标点符号,小小的单片机是放不下的。事实上汉字在计算机中的存储也并不是每个都存放这样的点阵数据,而是使用内码,GB2312就是其中一种。把汉字的点阵数据编成一个字库,每个字有自己的“地址”,用这种方法,存储的时候只需要存储汉字的内码(一个汉字内码为两个字节),显示的时候再按这个字的内码去查询字库即可。在本设计中也是使用这样的方法,但字库相对单片机来说是个非常大的数据库,想要存放在单片机的内存或Flash中显示是不可能的。幸运的是,人类使用语言已经几千年了,早在很久以前已经有人把字库编好,GB2312就是一种可以

29、表示几千个简体汉字的字库,并且市场上有专门存放这些字库的芯片,我们只要使用汉字的GB2312内码去查询芯片即可获得所需要显示的汉字点阵码。3.7.1 Unicode码简介虽然GB2312可代表数千种汉字,但世界上并不是只有汉语一种语言,当然就不仅仅有汉字一种字符。为了能尽可能地表示所有字符,一般GSM模块返回的信息是以另一种编码表示的,这就是Unicode码。Unicode 是基于通用字符集(Universal Character Set)的标准来发展,定义了大到足以代表人类所有可读字符的字符集。所幸本设计中我使用的字库芯片中带有由Unicode码到GB2312的对应表。3.7.2 GB231

30、2汉字内码简介GB2312码是中华人民共和国国家汉字信息交换用编码,全称信息交换用汉字编码字符集基本集,由国家标准总局发布,1981年5月1日实施,通行于大陆。新加坡等地也使用此编码。GB2312标准共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时,GB 2312收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个全角字符。3.7.3 GT21L16S2Y字库芯片简介GT21L16S2Y是一款内含11X12点阵和15X16点阵的汉字库芯片,支持GB2312国标简体汉字(含有国家信标委合法授权)、ASCII字符及GB2312与Unicode编码

31、互转表。排列格式为竖置横排。用户通过字符内码,可计算出该字符点阵在芯片中的地址,可从该地址连续读出字符点阵信息。以下图3-7-1是该芯片的引脚图 图3-7-1 GT21L16S2Y的引脚图图3-7-2是该芯片的引脚描述图3-7-2 GT21L16S2Y的引脚图引脚描述:串行数据输出( SO ):该信号用来把数据从芯片串行输出,数据在时钟的下降沿移出。 串行数据输入( SI ):该信号用来把数据从串行输入芯片,数据在时钟的上升沿移入。 串行时钟输入( SCLK ):数据在时钟上升沿移入,在下降沿移出。 片选输入( CS# ):所有串行数据传输开始于CE#下降沿,CE#在传输期间必须保持为低电平,

32、在两条指令之间保持为高电平。 总线挂起输入( HOLD# ): 该信号用于片选信号有效期间暂停数据传输,在总线挂起期间,串行数据输出信号处于高阻态,芯片不对串行数据输入信号和串行时钟信号进行响应。 当HOLD#信号变为低并且串行时钟信号(SCLK)处于低电平时,进入总线挂起状态。 当HOLD#信号变为高并时串行时钟信号(SCLK)处于低电平时,结束总线挂起状态。 3.7.4 AMS1117AMS1117是一种低压降压稳压器。AMS1117有两个版本固定输出版本和可调版本固定输出电压为1.5V、1.8V、2.5V、2.85V、3.0V、3.3V、5.0V,具有1%的精度;固定输出电压为1.2的精

33、度为2%。AMS1117内部集成过热保护和限流电路,是电池供电和便携式计算机的最佳选择。本设计中使用的是固定3.3V的型号。 3.7.5 电平匹配方法单片机芯片使用的是5V的TTL电平,而GT21L16S2Y芯片电平为3.3V左右,因此需要将单片机的工作电平与GT21L16S2Y的电平相匹配。STC89C52的IO口中,P0口属于开漏输出,将单片机与GT21L16S2Y控制引脚电平匹配的方法如图3-7-3所示:图3-7-33.8 GSM模块本设计采用的GSM模块是TC35i。TC35i新版西门子工业GSM模块是一个支持中文短信息的工业级GSM模块,工作在EGSM900和GSM1800双频段,电

34、源范围为直流3.34.8V ,电流消耗休眠状态为3.5mA,空闲状态为25mA,发射状态为300mA(平均),2.5A峰值;可传输语音和数据信号, 功耗在EGSM900(4类)和GSM1800(1类)分别为2W和1W ,通过接口连接器和天线连接器分别连接SIM卡读卡器和天线。SIM电压为3V/1.8V,TC35i的数据接口(CMOS电平)通过AT命令可双向传输指令和数据,可选波特率为300b/s115kb/s , 自动波特率为1.2kb/s115kb/s。它支持Text和PDU格式的SMS(Short Message Service,短消息),可通过AT命令或关断信号实现重启和故障恢复. 3.

35、9 LED驱动电路本设计点阵屏的LED比较多,而数字芯片的驱动能力有限,要保证足够的亮度,就要加驱动电路。本设计的LED功耗不算太高,因此简单地使用8550三极管即可。具体电路图如图3-9-1所示:图3-9-1第四章 软件设计软件设计全部采用C语言编写,具有移植性强,可读性高的优点。本设计的软件程序包括主程序、定时器中断子程序、串口中断服务子程序、LED扫描程序、短信读取程序、字模处理程序等等。 4.1开发环境C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微

36、型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。本次编程软件采用keil C。Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个

37、集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。4.2 AT指令4.2.1 简介AT 即Attention,AT指令一般应用于终端设备与PC应用之间的连接与通信。AT指令集是从终端设备(Terminal Equipment,TE)或数据终端设备(Data Terminal Equipment,DTE)向终端适配器(Terminal Adapter,TA)或数据电路

38、终端设备(Data Circuit Terminal Equipment,DCE)发送的。其对所传输的数据包大小有定义:即对于AT指令的发送,除AT两个字符外,最多可以接收1056个字符的长度(包括最后的空字符)。每个AT命令行中只能包含一条AT指令;对于由终端设备主动向PC端报告的URC指示或者response响应,也要求一行最多有一个,不允许上报的一行中有多条指示或者响应。AT指令以回车作为结尾,响应或上报以回车换行为结尾。单片机与GSM模块通信是通过串行口用AT指令来实现的。4.2.3 用法AT指令是以AT作首,字符结束的字符串,AT指令的响应数据包在 中。每个指令执行成功与否都有相应的

39、返回。其他的一些非预期的信息(如有人拨号进来、线路无信号等),模块将有对应的一些信息提示,接收端可做相应的处理。4.2.4 常用与GSM相关的AT指令AT+CMGCSend an SMS command(发出一条短消息命令)AT+CMGDDelete SMS message(删除SIM卡内存的短消息)AT+CMGFSelect SMS message formate(选择短消息信息格式:0-PDU;1-文本)AT+CMGLList SMS message from preferred store(列出SIM卡中的短消息PDU/text: 0/“REC UNREAD”-未读,1/“REC REA

40、D”-已读,2/“STO UNSENT”-待发,3/“STO SENT”-已发,4/“ALL”-全部的) AT+CMGRRead SMS message(读短消息)AT+CMGSSend SMS message(发送短消息)AT+CMGWWrite SMS message to memory(向SIM内存中写入待发的短消息)AT+CMSSSend SMS message from storage(从SIN|M内存中发送短消息)AT+CNMINew SMS message indications(显示新收到的短消息)AT+CPMSPreferred SMS message storage(选择短

41、消息内存)AT+CSCASMS service center address(短消息中心地址)AT+CSCBSelect cell broadcast messages(选择蜂窝广播消息)AT+CSMPSet SMS text mode parameters(设置短消息文本模式参数)AT+CSMSSelect Message Service(选择短消息服务)对短消息的控制共有三种模式:Block Mode、基于AT命令的PDU Mode、基于AT命令的Text Mode 4.3总的程序流程图总的程序主要完成设计参数的初始化、键值处理、温度采样、电路加热、声光报警等,其主程序流程图如图图4-1开

42、始初始化GSM模块、定时器、串口等,标志位flag=0否是否有短信否是flag=1是截取短信里面的UNICODE码将unicode码发给字库芯片转换成GB2312码将GB2312码发给字库芯片,得到点阵二进制数据循环扫面显示点阵数据标志位置为flag=1图4-1 主程序流4.4 LED扫描显示程序流程图LED扫描显示程序的流程图如图4-2:开始读取当前列指针,根据列指针从显示缓存区中找出列数据。将列数据写入74HC595,并显示列指针自增列指针大于或等于64列指针清零结束本次扫描是否 图4-2报警电路流程图第五章 设计的测试与分析 5.1设计的过程 刚拿到设计题目的时候,首先要做的就是有一个总

43、体的设计方案,然后对整个设计做一个计划,把时间和工作都合理的安排好。最后再考虑分析解决具体的袭击问题。这次毕业设计让我更加熟悉了从理论到实践的跨越。从当初的查阅图书,到现在的电路板调试运行成功,这中间有很多值得回味的地方。逐渐了解到了一些主要芯片的技术资料和用法。这次的设计,从选题到实现,几乎都是自己独立完成的。第一步使用电路制图软件Protel DXP来设计原理图,然后制作成电路板,最后使用keil C调试软件的运行。其中有很多细节要考虑周到,比如在通常条件下,所有的元件均应布置在印制电路的同一面上,只有在顶层元件过密时,才能将一些高度有限并且发热量小 的器件,如贴片电阻、贴片电容、贴IC等

44、放在底层。在保证电气性能的前提下,元件应放置在栅格上且相互平行或垂直排列,以求整齐、美观,一般情况下不允许元件重叠;元件排列要紧凑,输入和输出元件尽量远离。某元器件或导线之间可能存在较高的电位差,应加大它们的距离,以免因放电、击穿而引起意外短路。大部分都是关于PCB布线方面要注意的问题。在软件调试部分,如何考虑串口和定时器的终端优先级,字库芯片资料中的地址说明,最重要的是int和char的长度,经常在很细小的地方出错,导致程序运行不正常。在整个设计过程中,通过自己学习、探讨、而从中学习了很多关于单片机和相关程序等各方面的知识,通过对电路的设计、布局、在这过程中还出现了很多问 题。自己不懂的就要虚心向别人学习,取人之长,补己之短,一步一个脚印,这样的学习过程,使自己受益匪浅,得到很好的锻炼。 5.2单个模块的调试 制作好硬件之后,就进行软件编程,把两者结合起来对每一个模块进行调试。各个模块包括LED点阵屏的控制,单片机与GSM模块的通信,短信信息的辨认和解译,汉字字库的转换和读取,LED亮度的调试,LED扫描速度的调试。LED点阵的控制实际上就是对74HC154和74HC595这两种芯片的控制。其中154是译码器,电路中采用级联的方式,将点阵屏的64列编码成地

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号