课程设计(论文)-基于PIC18F4550的GSM防盗报警系统设计.doc_第1页
课程设计(论文)-基于PIC18F4550的GSM防盗报警系统设计.doc_第2页
课程设计(论文)-基于PIC18F4550的GSM防盗报警系统设计.doc_第3页
课程设计(论文)-基于PIC18F4550的GSM防盗报警系统设计.doc_第4页
课程设计(论文)-基于PIC18F4550的GSM防盗报警系统设计.doc_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

基于pic18f4550的gsm防盗报警系统设计学生姓名所 在 系专业名称班 级学 号指导教师基于pic18f4550的gsm防盗报警系统设计内容提要:随着电子、计算机和通信等技术的发展,各种智能小区、数字家园和报警系统不断出现。本文介绍了一种基于gsm的sms业务的智能防盗报警系统,该系统充分利用最成熟的gsm移动通信网络,可实时将警情以短消息的形式发送给用户、监控中心或公安部门。该系统以其设置和控制灵活、功能可扩展、经济、便捷、及时和可普及等优点具有很大发展潜力和实用价值。本文结合pic18f4550单片机、热释电红外、gsm等多种技术,实现了家居远程防盗报警系统。 本文从pic18f4550单片机开始,阐述了pic18f4550单片机、热释电红外、gsm的基本原理、所采用的相关技术,进而交代了gsm远程报警系统的实现方法,重点阐述了gsm在 pdu模式下短信收发的实现。 该设计经过测试,实现了家居远程防盗报警,达到预期的设计效果。关键词:gsm防盗报警系统、tc35i、pic18f4550guard against theft to report to the police a system designaccording to the gsm of the pic18 f4550abstract:along with the technical developments, such as electronics,calculator and correspondence.etc., various area with small intelligence,numerical home with report to the police system to appear continuously.this text introduce a kind of guard against theft to report to the police system according to the intelligence of the gsm sms business, that system makes use of the most mature net of gsm mobile communication, can actually the hour send out alert with the form of the sms to the customer,the supervision center or public security officials section.its constitution and the control is vivid,the function can expand,economy,conveniently and in time with can make widely available etc. the advantage have to develop the potential and practical value very greatly.this text combines a single slice of the pic18 f4550 machine,heat to release to give or get an electric shock a red outside,gsm etc. various techniques, carrying out a house to reside long range to guard against theft to report to the police system. this text is from the pic18 f4550 single slice machine beginning, elaborated the pic18 f4550 a single slice machine,heat to release basic principle of give or get an electric shock the red outside,gsm,the related technique adopt, then gave an account the gsm long range to report to the police system to carry out a method, the point elaborated gsm the realization that the message receive and dispatch under the pdu mode. that design carried out a house to reside long range to guard against theft to report to the police through test, attain expectation of design result.keyword: the gsm guards against theft to report to the police system目 录一、引言2(一)、项目背景2(二)、项目的目的和意义2二、方案设计与论证4三、硬件设计6(一)、pic18f4550单片机基本电路设计6(二)、lcd12864液晶显示器电路设计7(三)、ds1302电路设计8(四)、4个独立按键电路设计10(五)、热释电红外re200b电路设计10(六)、蜂鸣器电路设计11(七)、串口电路设计11四、软件设计13(一)、ds1302驱动程序13(二)、串口驱动程序18(三)、lcd12864液晶显示器驱动程序20(四)、蜂鸣器驱动程序30(五)、4个独立按键驱动程序30(六)、pic18f4550内部定时器tmr0驱动程序32(七)、tc35i驱动程序32(八)、4个独立按键的按键处理流程44(九)、主程序流程45(十)、中断服务程序流程47六、测试报告48七、总结48附录48参考文献49一、引 言(一)本课题的背景移动通信是达到通信最终目的的有效手段,它在商业市场上所具有的巨大潜力已经越来越多地被人们所认识。移动通信并不是一项很新的技术,但它在最近几十年得到了飞速发展。移动通信终端设备在20世纪80年代末得到飞速发展。最初只有车载设备,20世纪80年代中期出现了只有几公斤重的便携式设备,手机大约在1988年出现,发展至今,已经出现了重量只有100-200g重的手机。在重量和体积减小的同时,其价格也迅速下降到大多数人可以接受的水平。近年来,我国移动通信以空前的速度发展,截至2001年7月底,我国蜂窝移动通信用户已超过1亿,居世界第一。随着中国手机用户的增加,两大运营商竞争越来越激烈,市场得到全面的细分,短信业务正是在这种背景下发展起来的,越来越多的手机用户开始接受短消息服务,尤其是时尚年轻一族,更是短信市场的生力军,短信正以其经济,便捷的沟通方式,得到众多手机用户的青睐。当前,单片机和pc机通过串行接口构成的多微机系统已经广泛应用于工业控制、环境监测等场合,这些系统大多采用rs-232或是有线modem的通信方式,虽然很经济适用,但是有线数据传输方式很大程度上限制了其使用的场合,使得在偏远的山区和架设通信线路比较困难的地区无法应用。针对这种情况,国内外的很多开发者在传统的单片机系统中利用支持语音、短消息(sms)、数据通信、传真等业务的gsm引擎模块,结合已有的单片机系统通过rs-232接口连接gsm模块,从而利用gsm网络实现数据的无线传输,这种方法实现起来很容易并且已有的系统硬件部分不需要做大的改动,关键是做软件部分的修改。gsm系统是目前基于时分多址技术的移动通信体制中最成熟、最完善、应用最广的一种系统。gsm的短消息业务,由于其方便、快捷、廉价等特点而受到用户的青睐,它作为gsm网络的一种基本业务,已得到越来越多的系统运营商和系统开发商的重视。目前,很多网络公司就是靠短消息业务生存和发展。随着短消息业务的不断发展,它在移动终端上的应用也越来越广,最典型的就是车载监控系统。gsm模块是继gsm手机外又一种非常重要的gsm移动通信系统的终端设备。gsm模块在短信息方面的应用最具优势,具有永远在线、不需拨号、价格便宜、覆盖范围广等特点,特别适用于需频繁传送小流量数据的应用,实现无线数据的双向传送、无线远程检测和控制等。sms (short message service)短信息服务是gsm (global system for mobile communication)系统中提供的一种gsm终端手机)之间,通过服务中心(service center)进行文本信息收发的应用服务,其中服务中心完成信息的存储和转发功能。gsm模块是传统调制解调器与gsm无线移动通信系统相结合的一种数据终端设备,因此也叫无线调制解调器。它的出现给gsm的发展注入了新的活力,改变了传统的以话音为主的通信手段,打开了gsm网络数据通信及其应用的大门。所以在应用上,凡是使用调制解调器的地方大多数可以用gsm模块代替。随着gsm移动通信网络的迅速普及和竟争的日益激烈,gsm模块作为一种主要的gsm网络接入设备,己得到越来越多的系统制造商和系统开发商的重视,基于它的各种应用也蓬勃发展起来。(二)本设计的目的和意义采用先进的gsm技术的无线通信系统,能够实现对无线分布式系统的实时监控管理,解决了传统控制中自己构建通讯系统成本高、抗干扰性差的缺点,将运行维护人员从大量繁琐的工作中解放出来,提高了无线通信系统的运行质量,增强无线通信系统的可靠性和可控性,能及时发现定位无线系统故障,大大减少了系统停用带来的不良影响。并且随着现代信息技术的发展,以及知识经济时代的来临,人们越来越意识到现代企业人力资源成本占运营成本的比重逐渐增大,传统产业中的许多人员密集型的数据采集、有人值守工作将被现代化的电子信息监控系统所代替,实现监控现场无人值守,监控中心集中监控、集中管理、集中维护的现代化无线通信系统。我国目前已建成了覆盖全国的gsm数字蜂窝移动通信网,是我国公众陆地移动通信网的主要方式。gsm的短消息业务sms(short message service)与话音传输及传真一样,为gsm数字蜂窝移动通信网络提供的主要电信业务,它通过无线控制信道进行传输,是gsm通信网所特有的。短消息业务不需拨号建立连接,利用短消息业务中心的存储和转发功能,直接把要发的信息加上目的地址发送到短消息中心,由短消息中心再发送给最终的信宿,这种方式非常适合于将每次采集到的数据随时发送到上位机。短消息业务可以使网络端知道被叫方是否已经收到短消息,如果传送失败,被叫方没有回答确切消息,网络一侧会保留所发的消息,一旦网络发现被叫方能被叫通时,消息重发以确保被叫方能收到。由此可见,短消息业务作为gsm网络的一种主要的电信业务,它的传递是可靠的。因此,选用gsm的短消息业务来实现远程无线数据传输是可行的。在短消息业务快速发展的背景下,短消息在无线监控与数据采集方面的应用作为毕业设计的研究课题就有着极为重要的现实意义和实际价值。本设计的目的是:基于pic18f4550单片机,利用tc35i模块及热释电红外,设计一个gsm防盗报警系统,将其安装在家居的门窗等地方检测这些地方的人流情况,实现家居防盗报警。二、总体方案设计由于有线 modem的通信方式的局限性,以及随着gsm移动通信网络的迅速普及,利用gsm模块实现基于短消息的数据传输成为重要的远程数据传输解决方案。目前实现短消息的发送主要有以下几种方法:1、通过移动网关发送短消息,使用该方法不需要附加的硬件,但是需要到电信部门申请网关,成本高,软件复杂,比较适合于一些大型的网络通信公司进行开发;2、通过网站上提供的短信发送功能来实现,比如新浪、网易都提供这方面的服务,这种方法是这4种方法中实现起来最简单,所需资源最少的,但是对于网站的依赖性太强,对网络的依赖同样无法避免,不适用于项目开发;3、在相关的系统中使用手机模块代替手机来实现与短消息中心的联系,从而实现短消息的发送与接受。使用手机模块利于系统集成,成本较低,而使用手机虽然也可以实现相应功能,但是需要外加数据线,成本相当高。4、在电脑上通过gsmm odem向手机发送中文短消息,这是目前比较适合于小项目开发的一种方法,所需硬件包括一款手机,提供gsmmodem以及相应的数据线或是红外线适配器。该方法编码简单,只需对at指令和串口编程比较熟悉就可以实现,而且对硬件需求不高,并能自动收发短消息,但是该方法对短消息收发的控制较弱,通用性不强;但对于自动采集数据后发送检测数据的智能系统来说该方法最为简单实用。本设计选用microchip公司的pic18f4550单片机和siemens公司的最新一代gsm模块tc35i,实现了一款具有短信收发功能的gsm modem原型。利用此modem原型,可以在应用系统之间以此modem和gsm网络为纽带,可以实现远地数据的传输。如图21所示。鉴于gsm模块开发对单片机的flash及ram的容量要求较大本设计选用microchip公司的pic18f4550单片机作为主控mcu,pic18f4550单片机的硬件资源非常丰富,包含35个io,io端口为端口a、b、c、d、e;具有多个中断源和1个中断优先级选择,4个定时器,32 kb程序闪存,256字节eep-rom数据存储器,2 048字节数据随机存储器,完全足够gsm模块的开发。本设计选用tc35i作为gsm开发模块。tc35i通信模块具备gsm无线通信的全部功能,并提供标准的uart串行接口,支持gsm 07.05 所定义的at命令集的指令。因此,mcu能够非常方便地通过uart接口与gsm模块连接,并直接使用at命令就可以方便简洁地实现短信息的收发、查寻和管理。本系统的系统总体结构框图如下:pic18f4550单片机蜂鸣器手机lcd128644个独立按键ds1302tc35i模块gsm网络发送端接收端图1 系统总体结构框图三、硬件部分设计(一)pic18f4550单片机基本电路设计1、pic18f4550简介pic18f4550是microchip公司采用纳瓦技术生产的的带全速usb接口的8位高档单片机,芯片为4044脚封装。该单片机除了具有pic单片机所特有的精简指令集(risc)、数据总线和指令总线相互独立的哈佛(harvard)结构等特点外,还配备了自编程闪存存储器以及纳瓦节能技术,工作频率达48 mhz,数据传输速率高达12 mbps。另外,还具有microchip先进pmos电可擦除单元(peec)闪存技术,耐擦写次数可高达100万次,而数据保存期能超过40年。因而该芯片有很强的控制能力和灵活的工作方式。 pic18f4550的硬件资源非常丰富,包含35个io,io端口为端口a、b、c、d、e;具有多个中断源和1个中断优先级选择,4个定时器,32 kb程序闪存,256字节eep-rom数据存储器,2 048字节数据随机存储器以及88硬件乘法器;集成了13通道的10位ad转换器,2个ccp(比较捕捉pwm)模块,1个增强型ccp模块和1个看门狗;具有省电功能的休眠模式;1个usart不仅支持异步与同步的串行通信,而且支持lin总线;2个模拟比较器,支持i2c和spi通信的主控同步串行端口,可编程欠压复位及低电压检测电路等。 pic18f4550单片机的一个关键特性在于它配备了32 kb自编程增强型闪存,使得设计人员可以通过usb端口对最终应用进行现场升级。结合新器件配备的一系列片上外设和纳瓦技术(nanowatt)的功耗管理功能,使其非常适用于多种嵌入式应用,包括工业、医疗、汽车、电池供电和消费类产品等。本系统采用pic18f4550作为主控mcu,并采用44脚的tqfp封装。2、电源电路设计图2 电源电路3、pic18f4550单片机基本电路设计图3 pic18f4550单片机基本电路(二)、lcd12864液晶显示器电路设计1、fm12864m-12l概述fm12864m-12l是12864点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16x16点阵)、128个字符(8x16点阵)及64x256点阵显示ram(gdram)。可与cpu直接接口,提供两种界面来连接微处理机:8-位并行及串行两种连接方式。具有多种功能:光标显示、画面移位、睡眠模式等。表1 128x64 引脚说明引脚名称方向说明引脚名称方向说明1vss-gnd(0v)11db4i数据42vdd-supply voltage for logic (+5v)12db5i数据53vo-supply voltage for lcd (悬空)13db6i数据64rs (cs)oh: data l: instruction code14db7i数据75r/w (sid)oh: read l: write15psboh: parallel model: serial mode6e (sclk)oenable signal16nc-空脚7db0i数据017/rstoreset signal 低电平有效8db1i数据118nc-空脚9db2i数据219leda-背光源正极(led+5v)10db3i数据320ledk-背光源负极(led-ov)表2 外形尺寸itemnominal dimenunit模块体积937812.5mm视域70.738.8mm行列点阵数12864dots点距离0.520.52mm点大小0.480.48mm2、lcd12864液晶显示器电路设计图4 lcd12864液晶显示器电路(三)ds1302电路设计1、ds1302概述ds1302是dallas公司推出的涓流充电时钟芯片,内含一个实时时钟/日历和31字节静态ram,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、星期、月、年的信息,每月天和闰年的天数可自动调整,时钟操作可通过am/pm指示决定采用24或12小时格式。ds1302与单片机之间能简单的采用同步串行的方式进行通信,仅需用三个口线:(1)res(复位),(2)i/o(数据线),(3)sclk(串行时钟)。时钟/ram的读/写数据以一个字节或多达31个字节的字符组方式通信。ds1302工作时功耗很低,保持数据和时钟信息时功耗小于1mw。图5 ds1302引脚分布图x1,x2 :接32.768khz晶振vcc1:电源正极gnd:电源地 rst:ds1302复位端i/o:数据i/o口(数据一位一位的输入/输出)sclk:串行时钟输入端vcc2:接蓄电池(当断开电源vcc1时蓄电池为ds1302供电)2、ds1302电路设计图6 ds1302电路(四)4个独立按键电路设计图7 4个独立按键电路(五)热释电红外re200b电路设计本系统采用biss0001红外信号传感处理器处理热释电红外传感器re200的信号。1、 biss0001简介biss0001采用16脚的dip封装,工作电压为+3v+5v。其引脚排列如下:图8 biss0001引脚分布图2、热释电红外re200电路图9热释电红外re200电路(六)蜂鸣器电路设计图10蜂鸣器电路(七)串口电路设计1、tc35i模块简介 tc35是siemeils公司推出的新-代无线通信gsm模块。自带rs232通讯接口,可以方便地与pc机、单片机连机通讯。可以快速、安全、可靠地实现系统方案中的数据、语音传输、短消息服务(short message service)和传真。tc35模块的工作电压为3.35.5v,可以工作在900mhz和1800mhz两个频段,所在频段功耗分别为2w(900m)和1w(1800m)。 模块有at命令集接口,支持文本和pdu模式的短消息、第三组的二类传真、以及2.4k,4.8k,9.6k的非透明模式。此外,该模块还具有电话簿功能、多方通话,漫游检测功能,常用工作模式有省电模式、idle、talk等模式。通过独特的40引脚的zif连接器,实现电源连接、指令、数据、语音信号、及控制信号的双向传输。通过zif连接器及50天线连接器,可分别连接sim卡支架和天线。 tc35模块主要由gsm基带处理器、gsm射频模块、供电模块(asic)、闪存、zif连接器、天线接口六部分组成。作为tc35的核心,基带处理器主要处理gsm终端内的语音、数据信号,并涵盖了蜂窝射频设备中的所有的模拟和数字功能。在不需要额外硬件电路的前提下,可支持fr、hr和efr语音信道编码。其它功能介绍可参见有关资料!单片机控制tc35的方法:硬件连接:电路见下图只需设计一个ttl转rs232电平电路,连接到mcu的uart口,另一端直接连接到tc35,通过单片机串口向tc35发送at命令即可操作tc35模块。图10 tc35控制电路2、串口电路设计图11 串口电路四、软件设计本系统共有5个模块,系统软件体系结构如下:pic18f4550单片机蜂鸣器lcd128644个独立按键ds1302tc35i模块输入输出(一)、ds1302驱动程序1、 ds1302内部寄存器ch: 时钟停止位寄存器2的第7位:12/24小时标志ch=0 振荡器工作允许bit7=1,12小时模式ch=1振荡器停止bit7=0,24小时模式wp:写保护位寄存器2的第5位:am/pm定义wp=0 寄存器数据能够写入ap=1 下午模式 wp=1 寄存器数据不能写入ap=0 上午模式 tcs:涓流充电选择ds:二极管选择tcs=1010使能涓流充电ds=01选择一个二极管 tcs=其他 禁止涓流充电 ds=10选择两个二极管 ds=00或11,即使tcs=1010, 涓流充电也被禁止ds1302的控制方式=命令(1个字节)+数据(1个字节)位7位6位5位4位3位2位1位01ram/ck操作的寄存器r/w位7:1:写使能0:写禁止位6:1:操作ram0:操作ck位0:1:读数据(在命令字节后加下降沿)0:写数据(在命令字节后加上升沿)2、 ds1302初始化流程将a口设为数字端口ds1302时钟控制端,数据方向控制端,数据读写控制端均设为输出ds1302写使能使能ds1302涓流充电ds1302写禁止3、向ds1302的地址addressess处写入数据data,其流程如下:ds1302时钟端送低电平,复位端送高电平变量i赋初值1将address的位0送入ds1302数据口变量i自增1地址变量address右移1位i小于或等于8?是否向ds1302时钟端送低电平向ds1302时钟端送高电平变量i赋初值1将待写入数据data的位0送入ds1302数据口变量i自增1待写入数据data右移1位i小于或等于8?ds1302复位端送低电平是否向ds1302时钟端送低电平向ds1302时钟端送高电平系统执行1个空操作,等待数据写入完成4、从ds1302的地址addressess处读取数据,返回读取到的数据,其流程如下:变量i赋初值1向ds1302时钟端送高电平向ds1302时钟端送低电平否是i小于或等于8?地址变量address右移1位变量i自增1将address的位0送入ds1302数据口1302输出数据=1?temp的位7清0是否是否temp的位7置1系统执行1个空操作向ds1302时钟端送高电平向ds1302时钟端送低电平temp右移1位变量i自增11302数据口设为输入ds1302复位端送低电平i小于或等于8?变量i赋初值11302数据口设为输出ds1302复位端送低电平变量temp赋初值0ds1302复位端送高电平5、读取ds1302的当前时间到数组time7中,格式为: 秒 分 时 日 月 星期 年,其流程如下:地址变量address赋初值0x81变量i赋初值0读取ds1302内部地址address处的值存入数组元素timei中变量i自增1地址变量address自增2i7?结束是否6、通过数组time7设置ds1302的当前时间,格式为: 秒 分 时 日 月 星期 年,其流程如下:地址变量address赋初值0x80变量i赋初值0将timei写入ds1302内部地址address处变量i自增1地址变量address自增2i7?结束是否ds1302写使能(二)、串口驱动程序1、串口初始化流程如下:rxd设为输入,txd设为输出使能串口发送,选择高速波特率,使能串口工作,连续接收发送标志位txif清0,发送中断禁止,接收标志位rcif清0,接收中断禁止,接收中断设为高优先级中断设置串口波特率2、设置串口波特率,其流程如下:定义系统频率fosc为4mhzdouble型变量temp赋初值0temp=fosc/16/baud-1将temp的整数部分赋给串口波特率寄存器spbrg3、用串口发送字节数据data,其流程如下:将待发送数据data送入串口发送数据寄存器txreg中发送标志位txif=0??前一数据发送完毕,发送缓冲区为空,此时txif为1,将txif清0是否4、用串口发送len个字节的字符串str,其流程如下:变量i赋初值0用串口发送数据stri变量i自增1ilen?结束是否(三)、lcd12864液晶显示器驱动程序1、lcd12864液晶显示器相关操作简介具体指令:清除显示code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lllllllllh功能:清除显示屏幕,把ddram位址计数器调整为“00h”位址归位code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llllllllhx功能:把ddram位址计数器调整为“00h”,游标回原点,该功能不影响显示ddram位址归位code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lllllllhi/ds功能:把ddram位址计数器调整为“00h”,游标回原点,该功能不影响显示ddram功能:执行该命令后,所设置的行将显示在屏幕的第一行。显示起始行是由z地址计数器控制的,该命令自动将a0-a5位地址送入z地址计数器,起始地址可以是0-63范围内任意一行。z地址计数器具有循环计数功能,用于显示行扫描同步,当扫描完一行后自动加一。显示状态 开/关code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llllllhdcb功能: d=1;整体显示on c=1;游标on b=1;游标位置on游标或显示移位控制code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lllllhs/cr/lxx功能:设定游标的移动与显示的移位控制位:这个指令并不改变ddram的内容功能设定code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llllhdlx0 rexx功能:dl=1(必须设为1) re=1;扩充指令集动作 re=0:基本指令集动作设定cgram位址code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lllhac5ac4ac3ac2ac1ac0功能:设定cgram位址到位址计数器(ac)设定ddram位址code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llhac6ac5ac4ac3ac2ac1ac0功能:设定ddram位址到位址计数器(ac)读取忙碌状态(bf)和位址code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lhbfac6ac5ac4ac3ac2ac1ac0功能:读取忙碌状态(bf)可以确认内部动作是否完成,同时可以读出位址计数器(ac)的值写资料到ramcode: rw rs db7 db6 db5 db4 db3 db2 db1 db0hld7d6d5d4d3d2d1d0功能:写入资料到内部的ram(ddram/cgram/tram/gdram)读出ram的值code: rw rs db7 db6 db5 db4 db3 db2 db1 db0hhd7d6d5d4d3d2d1d0功能:从内部ram读取资料(ddram/cgram/tram/gdram)待命模式(12h)code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lllllllllh功能:进入待命模式,执行其他命令都可终止待命模式卷动位址或iram位址选择(13h)code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llllllllhsr功能:sr=1;允许输入卷动位址 sr=0;允许输入iram位址反白选择(14h)code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lllllllhr1r0功能:选择4行中的任一行作反白显示,并可决定反白的与否睡眠模式(015h)code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llllllhslxx功能:sl=1;脱离睡眠模式 sl=0;进入睡眠模式扩充功能设定(016h)code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llllhhx1 regl功能:re=1;扩充指令集动作 re=0;基本指令集动作 g=1;绘图显示on g=0;绘图显示off设定iram位址或卷动位址(017h)code: rw rs db7 db6 db5 db4 db3 db2 db1 db0lllhac5ac4ac3ac2ac1ac0功能:sr=1;ac5ac0为垂直卷动位址 sr=0;ac3ac0写iconram位址设定绘图ram位址(018h)code: rw rs db7 db6 db5 db4 db3 db2 db1 db0llhac6ac5ac4ac3ac2ac1ac0功能:设定gdram位址到位址计数器(ac)汉字显示坐标:x坐标line180h81h82h83h84h85h86h87hline290h91h92h93h94h95h96h97hline388h89h8ah8bh8ch8dh8eh8fhline498h99h9ah9bh9ch9dh9eh9fhfm12864m -12的8位并行连接时序图mpu写资料到模块mpu从模块读出资料显示步骤:显示资料ram(ddram)显示资料ram提供642个位元组的空间,最多可以控制4行16字(64个字)的中文字型显示,当写入显示资料ram时,可以分别显示cgrom、hcgrom与cgram的字型;st7920a可以显示三种字型 ,分别是半宽的hcgrom字型、cgram字型及中文cgrom字型 ,三种字型的选择,由在ddram中写入的编码选择,在0000h0006h的编码中将自动的结合下一个位元组,组成两个位元组的编码达成中文字型 的编码(a140d75f),各种字型详细编码如下:1、 显示半宽字型 :将8位元资料写入ddram中,范围为02h7fh的编码。2、 显示cgram字型:将16位元资料写入ddram中,总共有0000h,0002h,0004h,0006h四种编码。3、 显示中文字形:将16位元资料写入ddramk ,范围为a1a1hf7feh的编码。2、 lcd12864初始化,其流程如下:将ra,re口设为数字i/o口将ra,rd,re均设为输出,并送低电平,同时lcd12864复位控制端送高电平,禁止复位软件延时1mslcd12864复位控制端送低电平,lcd12864复位软件延时1mslcd12864复位控制端送高电平,lcd12864复位禁止软件延时1ms开始将lcd12864设置为采用基本指令操作软件延时1mslcd12864清屏软件延时1ms11设置lcd12864为:开显示,关光标,不闪烁,指定在数据写入或读取时,光标右移结束3、 向lcd12864写入字节数据data,其流程如下:lcd12864忙信号检测lcd12864数据/指令控制端设置为数据, 数据读写控制端设置为写将字节数据data送入lcd12864的数据端 lcd12864使能端使能系统执行2个空操作,等待数据写入完成lcd12864使能端禁止4、 在第row行第col列显示len个字符,其流程如下:要显示的最后一个字符是否超出一行?否是将lcd12864的光标定位于row行的起始位置从当前位置起写入col个空格继续写入待写入的len个字符结束5、 lcd12864忙信号检测,其流程如下:lcd12864数据端rd口方向设为输入lcd12864数据/指令控制端设置为指令, 数据读写控制端设置为读lcd12864使能端使能系统执行2个空操作,等待数据写入完成系统执行3个空操作,等待数据写入完成rd口数据寄存器protd的位7=0?否是系统执行1个空操作lcd12864使能端禁止lcd12864使能端禁止系统执行1个空操作将lcd12864数据端rd口设为输出6、 向lcd12864写入命令字节command,其流程如下:lcd12864忙信号检测lcd12864数据/指令控制端设置为指令, 数据读写控制端设置为写将命令字节command送入lcd12864的数据端 lcd12864使能端使能系统执行1个空操作lcd12864使能端禁止系统执行1个空操作7、向lcd12864写入len个字节的字符串,若写入的字符数超过一屏,则屏幕刷新间隔约为screenintervalnms个毫秒,其流程如下:变量j赋初值0jlen?是否需要换行吗?是否需要刷新屏幕吗?是否软件延时screenintervalnms个毫秒lcd12864清屏lcd12864换行结束strj不是换行符且不是回车符?是否向lcd12864当前位置写入数据strj8、在row行右移显示字符串str的len个字节,右移时间间隔约为moveintervalnms个毫秒,其流程如下:待写入的字符数len是否超出一行?否是记录当前应显示的空格数的变量spacenum赋初值0记录右移次数的变量movecount赋初值0结束待显示的字符串是否已经移动到行尾?否是记录当前要显示的字符的总长度的变量totallen=spacenum+len当前要显示的字符的总长度超出一行?否是lcd12864清除第row行将光标重新定位于第row行的起始位置处1继续写入len个待写入的字符从当前位置开始写入spacenum个空格1空格数spacenum自增22空格数spacenum清0软件延时约moveintervalnms个ms2结束9、清除第row行将光标重新定位于第row行的起始位置处变量j赋初值0j16?是否结束向当前位置处写入0x00变量j自增1(四)、蜂鸣器驱动程序1、蜂鸣器蜂鸣,其流程如下:ra,re均设为数字i/o口蜂鸣器控制端设置为输出蜂鸣器控制端输出高电平,蜂鸣器蜂鸣2、蜂鸣器禁止蜂鸣,其流程如下:ra,re均设为数字i/o口蜂鸣器控制端设置为输出蜂鸣器控制端输出低电平,蜂鸣器禁止蜂鸣(五)、4个独立按键驱动程序1、4个独立按键键扫描,若有键按下返回按键号(14),否则返回0,其流程如下:ra,re均设为数字i/o口将rb口的rb1,rb2,rb3,rb4口设为输入软件延时约30个msrb1按下否?是否rb1按下否?是否返回键号1软件延时约30个msrb2按下否?是否rb2按下否?是否返回键号21软件延时约30个msrb3按下否?是否rb3按下否?是否返回键号3软件延时约30个msrb4按下否?是否rb4按下否?是否返回键号41返回0(六)、pic18f4550内部定时器tmr0驱动程序1、tmr0定时约65ms初始化流程如下:关闭定时器0设定tmr0工作于16位定时器方式,内部时钟,不分频,关闭tmr0中断,tmr0中断为高优先级中断清除tmr0中断标志t0if,使能中断优先级向tmr0写入定时初值0,定时约65个ms2、tmr0由初值n(int型整数)开始定时,其流程如下:清除tmr0中断标志t0if截取n的高位字节存入tmr0高位字节寄存器tmr0h中截取n的低位字节存入tmr0低位字节寄存器tmr0l中启动tmr0(七)、tc35i驱动程序1、短消息简介:(1)、短消息概述 所谓短消息就是通过gsm网络传输的有限长度的文本数字或文字)信息。而短消息业务是gsm系统提供给手机用户的一种特殊服务。短消息也称作短信。通过gsm网,并设有短消息

温馨提示

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

评论

0/150

提交评论