1、第五章 参考文献及附录 16第一章 绪论1.1背景庆八十华诞,展学子风采。随着人们生活水平的提高,到饭店就餐的人日益增多,为了简化点菜过程,提高酒店运作效率,作者结合生活体验,学以致用,制作了一个有西电特色的点菜终端显示器,献礼校庆。此点菜系统由51最小系统板,12864液晶显示屏,DS1302芯片,DS18B20芯片等组成,简单实用,兼具日历与温度计的功能.同时一个个西电标志也在诉说着关于西电的故事,让这个点菜系统更加生动有趣。这个点菜终端显示系统点菜方便,经济实用,非常适合小饭店小餐厅使用,同时它又不是一个简单的点菜器,它还具有日历与温度计的功能,日历是基于DS1302芯片实现的,可以调节
2、时间,能正确处理闰年问题,方便使用。温度计基于DS18B20芯片实现,精确到小数点后一位,也可以测量零下温度。同时还有六张西电美丽的风景嵌入其中,让其更加生动有趣呦。1.2内容安排第一章介绍了作品的研发背景及内容安排。第二章具体介绍系统的各部分模块,各模块的作用。第三章介绍了在proteus软件中的模拟情况。第四章为总结与展望。第二章 单元模块设计2.1 STC89C58单片机模块2.1.1 STC89C58 RD+1单片机概述 STC89C58单片机是51单片机家族中的一员,不同的是它可以支持32K的程序代码,由于本系统选用的为无字库液晶,所需代码较大,故采用了STC89C58 RD+1单片
3、机。STC89C58RD+系列单片机是宏晶科技推出的新一代超强抗干扰,高速,低功耗的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可任意选择。它具有以下特点:1. 增强型6时钟/机器周期,12时钟/机器周期 8051 CPU(Central Process Unit,中央处理器)。2. 工作电压:5.5V - 3.4V(5V单片机)3. 工作频率范围:0 - 40 MHz,相当于普通8051的 080MHz.实际工作频率可达48MHz.4. 用户应用程序空间32K字节5. 片上集成 1280 字节RAM(Random Access Memory,随机存储器)。
4、6. 通用I/O口32个,复位后为: P1/P2/P3是准双向口/弱上拉(普通8051传统I/O口),P0口是开漏输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器/ 仿真器 可通过串口(P3.0/P3.1)直接下载用户程序,8K程序3秒即可完成一片8. EEPROM 功能9. 看门狗10.共3个16位定时器/计数器,其中定时器0还可以当成2个8位定时器使用11.外部中断4路,下降沿中断或低电平触发中断,Power Down模式可由外部中断低电平触发中断方式唤醒12. 通用UART(Universal A
5、synchronous Receiver/Transmitter ,通用串行接口),还可用定时器软件实现多个UART14.工作温度范围: 0 - 75 / -40 - +8515.封装: PDIP-40,PLCC-44,PQFP-44使用这种单片机做开发板,最大的优势就在于它支持ISP,这样不用购买昂贵的编程器/ 仿真器,直接通过串口线就能实现在线编程。而且内部集成了看门狗和Flash,简化了PCB板的制作。指令代码与51单片机兼容,这样可以用常用的51单片机软件开发工具开发驱动程序。2.1.2 STC89C58引脚介绍2图2-1 stc89c58引脚图 图2-1为STC89C58的引脚图,下
6、面让我们来一一认识它们的作用与用法。(1)电源引脚VCC 40 电源端GND 20 接地端工作电压为5V。 (2)外接晶振引脚 如图2-2所示。图2-2 外接晶振引脚XTAL1 是片内振荡器的反相放大器输入端,XTAL2 则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2 悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在1MHz-24MHz内选择。电容取30PF 左右。(3) 复位 RST 9在振荡器运行时,有两个机器周期(24 个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51
7、芯片便循环复位。复位后P0P3 口均置1 引脚表现为高电平,程序计数器和特殊功能寄存器SFR 全部清零。当复位脚由高电平变为低电平时,芯片为ROM 的00H 处开始运行程序。常用的复位电路如图2-3所示。图2-3 常用复位电路(4) 输入输出引脚1) P0 端口P0.0-P0.7 P0 是一个8 位漏极开路型双向I/O 端口,端口置1(对端口写1)时作高阻抗输入端。作为输出口时能驱动8 个TTL。对内部Flash 程序存储器编程时,接收指令字节;校验程序时输出指令字节,要求外接上拉电阻。在访问外部程序和外部数据存储器时,P0 口是分时转换的地址(低8 位)/数据总线,访问期间内部的上拉电阻起作
8、用。2) P1 端口P1.0P1.7 P1 是一个带有内部上拉电阻的8 位双向I/0 端口。输出时可驱动4 个TTL。端口置1 时,内部上拉电阻将端口拉到高电平,作输入用。对内部 Flash 程序存储器编程时,接收低8 位地址信息。3) P2 端口P2.0P2.7 P2 是一个带有内部上拉电阻的8 位双向I/0 端口。对内部Flash 程序存储器编程时,接收高8 位地址和控制信息。在访问外部程序和 16 位外部数据存储器时,P2 口送出高8 位地址。而在访问8位地址的外部数据存储器时其引脚上的内容在此期间不会改变。4) P3 端口P3.0P3.7 P2 是一个带有内部上拉电阻的8 位双向I/0
9、 端口。对内部 Flash 程序存储器编程时,接控制信息。2.2 HS12864D模块32.2.1基本简介(1)HS12864D使用KS0108作为控制器,适配M6800系列时序,具有8位标准数据总线。可显示各种数据及图形。每个KS0108拥有6464位的显示RAM,HS12864D显示屏上的6464点,显示RAM中的数据直接作为显示驱动信号。HS12864D具有操作指令简单,低功耗的特点。如图2-4所示。图2-4 HS12864D实物图 (2)HS12864D一共有20个管脚,每个管脚的用法与功能如下图所示。图2-5 12864管脚功能2.2.2 基本指令图2-6 12864基本指令HS12
10、864D共有7个指令,下面分别加以说明:显示开关 :0x3e 关;0x3f开(R/W=0,RS=0)。显示起始行:0xc0+I , i取值0至63(R/W=0,RS=0)。设置DDRAM页地址(X地址):0xb8+i,i取值0至7(R/W=0,RS=0),设置Y地址:0x40+i,i取值0至63(R/W=0,RS=0)。写数据命令:将数据线上的数据DB7-DB0写到RAM 。Y地址指针自动加1(R/W=0,RS=1/0)。读数据命令:将RAM中的数据读入1数据线DB7-DB0 。Y地址指针自动加1 (R/W=1,RS=1/0。)图2-7 RAM地址表2.3 DS18B20模块42.3.1 DS
11、18B20基本简介如图2-8所示。采用数字式温度传感器DS18B20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用P0.7与DS18B20的I/O口连接加一个上拉电阻,Vcc接电源,Vss接地。图2-8 DS18B20温度采集2.3.2 DS18B20原理简介(1) 各引脚定义:I/O为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。(2)配置寄存器的8位从高到低依次为:TM R1 R0 1 1 1 1 1 ,在这8位中低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在
12、测试模式。在DS18B20出厂时该位被设置为0,用 户不要去改动。R1和R0用来设置分辨率,如下表所示:(DS18B20出厂时被设置为12位)。(3)高速暂存器:高速暂存存储器由9个字节组成,其分配如表2-1所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表1所示。对应的温度计算: 当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。第九个字节是 冗余检验字节。表2-1 高速暂存器地址分布字节地址12345678寄存器内容温度低位温度
13、高位高温限值低温配置寄存器保留CRC校检位根据DS18B20的通讯协议,主机(单片机)控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行 复位操作,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后 释放,当DS18B20收到信号后等待1660微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。(4)ROM指令介绍:主要有5条指令,如下表2-2所示:表2-2 ROM指令表指 令约定代码 功能读ROM33H读DS1820的ROM中的编码(即64位地址)符
14、合ROM55H发出此命令之后,接着发出 64 位 ROM 编码,访问单总线上与该编码相对应的 DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。搜索ROM0F0H用于确定挂接在同一总线上 DS1820 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。跳过ROM0CCH忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。适用于单片工作。警告搜索命令0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。(5)RAM指令:主要有4条指令,涉及到温度的转换到存储的一个简单过程。 表2-3 RAM指令表温度变换44H启动DS1820温度转换,结果存入
15、9字节RAM中。读暂存器0BEH读内部RAM中9字节的内容。写暂存器4EH发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存器48H将RAM中第3 、4字节的内容复制到EEPROM中。重调EEPRM0B8H将EEPROM中内容恢复到RAM中的第3 、4字节。读供电方式0B4H寄生供电DS1820发送“ 0 ”,外接电源供电DS1820发送“ 1 ”。2.4 DS1302模块2.4.1 DS1302基本简介DS1302是DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行计时,且具有闰年补偿功能,
16、工作电压为2.55.5V。DS1302采用三线接口,与CPU进行同步通信,并可采用突发方式一次传送多个字节的时间数据或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM存储器。2.4.2 DS1302芯片说明(1)DS1302的引脚功能如图2-9所示。图2-9 DS1302引脚分布(2)控制字格式控制字格式如表2-4所示。控制字最高位必须是1,如果它为0,则不能把数据写入到DS1302中,位6如果为0则表示存取日历时钟数据,为1表示存取RAM数据;位51指示操作单元的地址;最低位为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。表2-4 DS1302的控
17、制字格式(3) 复位和时钟控制DS1302通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供了终止单字节或多字节数据的传送手段。当RST为高电平时,所有数据传送被初始化,允许对DS1302进行操作。如果在传送过程中置RST为低电平,则会终止此数据传送,并且I/O引脚变为高阻状态。上电运行时,在VCC2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。(4)DS1302的寄存器:DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式
18、,其日历、时间寄存器见表2-5。表2-5 DS1302的日历、时间寄存器W_regR_RegBit7Bit6Bit5Bit4Bit3Bit2Bit1Bit080H81HCH 10秒 秒82H83H 10分 分84H85H12/ 24 10时 时86H87H 10日 日88H89H10月 月8AH8BH 星期8CH8DH 10年 年8EH8FHWP2.5 键盘控制及图形取模模块2.5.1数字键盘本系统采用的键盘为数字键盘,如图2-10所示。左一列的按键功能为“上”“确定”“下”“日历”,其他部分为风景按键,键盘操作简单,布局合理。图2-10 键盘图 2.5.2字模提取软件 由于采用的液晶为不带字
19、库的HS12864D,显示汉字图形等就要用到字模提取软件,如图2-11所示,为软件运行时的界面。图2-11 字模提取软件界面第三章 proteus仿真测试3.1Proteus ISIS简介Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。该软件的特点是:全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2 C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚
20、拟仪器,如示波器、逻辑分析仪、信号发生器等。目前支持的单片机类型有:ARM7系列、68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。支持大量的存储器和外围芯片。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真ARM、51、AVR、PIC。3.2 Proteus运行流程Proteus ISIS的工作界面是一种标准的Windows界面,如图所示。包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编
21、辑窗口。运行Proteus程序后,进入软件的主界面。通过左侧工具栏中的P(从库中选择元件命令)命令,在Pick Devices 左侧窗口中选择所需元件的关键字,然后放置元件并调整方向和位置以及参数设置,最后进行连线。3.3部分仿真界面图3-1为电路正常运行时的仿真图,图3-2至3-5为点菜系统的基本界面,图3-6为日历与温度计功能界面,图3-7至3-13为几张关于西电的风景图画,使这个点菜系统更加生动有趣。图3-1 仿真电路图 图3-2 图3-3 图3-4 图3-5 图3-6 图3-7 图3-8 图3-9 图3-11 图3-12 图3-13 第四章 总结与展望4.1全文总结从暑假就开始准备星火
22、杯,一直到前几天作品的完成,这近一个半月的时间里确实学到了很多东西,从买芯片到焊电路,从看程序到写程序,从刚开始学习C语言到keil软件的运用,以及Proteus仿真软件的学习与使用,我们两个为了一个目标共同努力着,虽然有些累,但是很高兴,因为在做自己喜欢的事情。在制作作品的过程深刻的感受到了“科技是第一生产力” 的意义,从课本知识到动手实践,从遇到问题到解决问题,这个过程不仅仅是学习能力的提高,更重要的是培养了我们严谨的科研态度,锻炼了我们的意志,从而坚定信心,学好本领,更好地为实现祖国的现代化而奋斗。4.2研究展望虽然基本实现了功能,但是要看到仍有许多可供拓展的功能,如实现无线点菜,以及广告显示等问题,接下来我们要学习的还有很多很多,这个点菜系统增值空间很大,还可以设计出来人机交互界面,实现主机与无线客户端的完美结合 ,还可以编写网站点菜,拓宽业务等等。第五章 参考文献及附录参考文献1 李肇庆.串行端口技术M.北京:国防工业出版社,2004.2 明浩.51单片机入门教程(磁动力工作室)OL.,2003.3 佚名.HS12864D液晶显示模块使用说明书OL.,2007.4 黄佳玉.基于AT89C51多功能电子万年历的设计D.山西:大同大学,2010.5刘建清,寻立波,陈培军.从零开始学单片机C语言M .北京:国防工业出版社,2006.附录部分程序清单
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1