地铁计价系统说明书.docx
《地铁计价系统说明书.docx》由会员分享,可在线阅读,更多相关《地铁计价系统说明书.docx(29页珍藏版)》请在冰豆网上搜索。
![地铁计价系统说明书.docx](https://file1.bdocx.com/fileroot1/2022-11/15/e6a496f2-e563-4a70-b675-f4f3fdf5b331/e6a496f2-e563-4a70-b675-f4f3fdf5b3311.gif)
地铁计价系统说明书
《单片机技术》课程设计说明书
地铁计价系统
学院:
电气与信息工程学院
学生姓名:
指导教师:
贾雅琼职称/学位副教授
专业:
电子信息工程
班级:
学号:
完成时间:
2016年10月
湖南工学院《单片机技术》课程设计课题任务书
学院:
电气与信息工程学院专业:
电子信息工程
指导教师
贾雅琼
学生姓名
课题名称
地铁计价系统
内容及任务
一、设计任务
设计一个单线地铁计价系统。
二、设计内容
1、地铁计价系统硬件部分
(1)、单片机最小系统模块
(2)、供电模块
(3)、显示模块
(4)、键盘模块
2、地铁计价系统软件部分
(1)、系统监控程序模块
(2)、显示程序模块
(3)、键盘程序模块
(4)、票价计算模块
三、设计要求
1、上电或按键复位后显示器件自动显示0,进入准备阶段。
2、共计两条地铁线A与B,每条线上有9个站点,其中5号站点为两条地铁线公共站点,任何跨线乘坐必须经过5号站点换乘。
3、每3站计价2元,不足3站按2元计价。
4、通过键盘选择乘坐起点和终点,确认及取消购买。
5、在显示器件上显示起点及终点线路及编号,以及总价。
主要参考资料
[1]李广弟.单片机基础[M].第3版.北京:
北京航空航天大学出版社,2003.6.
[2]李全利.单片机原理及应用(C51编程)[M].北京:
高等教育出版社,2012.12.
[3]马忠梅.单片机的C语言应用程序设计[M].第4版.北京:
北京航空航天大学出版社,2003.6.
[4]李光飞.单片机C程序设计指导[M].北京:
北京航空航天大学出版社,2003.01.
[5]李光飞.单片机课程设计实例指导[M].北京:
北京航空航天大学出版社,2004.9.
教研室
意见
教研室主任:
(签字)
年月日
摘要
伴随着城市交通道路的发展,城市人流量的不断增加造成的交通拥堵。
地铁为人们出行提供了另一种便捷。
然而时代的变化又给地铁提出了新的要求。
从而产生了地铁计价仪器,地铁计价系统就是用于地铁运营收费的计价仪器,它能准确、公正的计算出乘客的费用。
这次课程设计分模块进行,硬件主要分为六个模块:
主控模块、键盘模块、显示模块、晶振电路、电源电路、复位电路。
主控芯片为AT89S52芯片,采用C语言设计程序,通过4个键盘按键分别达到确定、右移、增加、减少的目的,然后在8位共阳数码管上显示起点及终点线路及编号,以及总价。
复位电路是单片机的初始化操作,除了正常的初始化外,当系统出现问题时,还可以通过复位电路重新开始。
晶振电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。
地铁计价系统是以单片机AT89S52为核心设计的一款地铁计价仪器,根据输入的地铁起点站点号码和终点站点号码计算出价格。
使乘客上下班以及出行变得更加方便。
关键词:
计价仪器;地铁计价系统;AT89S52芯片
1地铁计价系统任务、要求说明、总体方案及工作原理
1.1设计任务
设计一个单线地铁计价系统。
1.2设计要求
(1)上电或按键复位后显示器件自动显示0,进入准备阶段。
(2)共计两条地铁线A与B,每条线上有9个站点,其中5号站点为两条地铁线公共站点,任何跨线乘坐必须经过5号站点换乘。
(3)每3站计价2元,不足3站按2元计价。
(4)通过键盘选择乘坐起点和终点,确认及取消购买。
(5)在显示器件上显示起点及终点线路及编号,以及总价。
1.3地铁计价系统总体方案介绍及工作原理说明
1.3.1设计思路
计价器主要由主控电路、复位电路、晶振电路、电源电路、独立键盘电路、数码管显示电路。
地铁计价器的系统框图如图1所示:
图1地铁计价系统的总体方案框图
这次课程设计采用C语言编写程序,用键盘输入线路及编号,从数码管上输出价格,实现地铁计价器的功能。
1.3.2工作原理
地铁计价系统是根据乘客乘坐地铁的站点数的多少进行计价,并按照交叉站原理计算费用,结算一并从起点开始,终点结束显示费用。
从起步价开始,当地铁行驶未满3站点时,均按起步价计算。
共计4个键盘按键接到单片机P1.0-P1.3口线上,分别达到确定、右移、增加、减少的目的。
其中1键是开始输入和确认,2键是输入的数码管右移,3键是当前指向的数码管数增加,4键是当前指向的数码管数减少,通过键盘输入乘坐起点和终点的站点号码后,按照要求计算出总价。
并且在共阳数码管上显示起点及终点线路及编号,以及总价。
2地体计价系统硬件系统的设计
2.1单片机AT89S52
AT89S52单片机是Atmel公司制造的,其片内ROM全部采用Flash存储器,具有8KBROM存储空间,可以工作在3V的超低电压环境中,并且与MCS-51系列单片机完全兼容,它具备ISP在线编程技术,可以实现在设计中对修改后程序擦除与烧入。
设计采用的是双列直插式AT89S52单片机,并运用活扣锁紧座,方便对芯片进行拔插,以防止对芯片的机械损坏,方便设计使用。
AT89S52单片机共40个引脚,4个I/O口线,每个口线都有8位,同时具有3个定时器/计数器,2个数据指针,串行通信线路形式是全双工形式。
除此之外,单片机还有两种节电模式。
在空闲模式情况下,CPU是停止工作的,但是其内部模块仍然可以继续工作,如RAM、定时器/计数器、串口以及中断等都可以工作。
在使用掉电保护情况下,单片机会把RAM的内容保存好,振荡器将会停止工作,这就意味着单片机会停止所有工作,要想重新开始工作就要等到下一个中断或者硬件复位信号到来。
如图2为AT89S52单片机的引脚图。
图2AT89S52单片机的引脚图
2.2硬件系统电路
2.2.1数码管显示电路
数码管显示模块主要由一个四位一体数码管、74HC573驱动芯片和8个470Ω的电阻构成。
本课设采用的数码管使用的是动态显示,所谓动态显示,就是依次向每位位数码管同时送出字形码和相应的位选,位与位之间利用延时程序进行延时,当延时程序非常短时,由于发光管的余辉和人眼视觉暂留作用,此时我们的人眼就分辨不出位与位之间有延时存在,此时就感觉各位数码管同时都在显示。
动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。
数码管显示电路如图3所示:
图3数码管显示电路
2.2.2晶振电路
晶振的作用是为系统提供基本的时钟信号。
通常一个系统共用一个晶振,便于各部分保持同步。
AT89S52单片机芯片内部设有一个由反向放大器构成的振荡器,XT1和XT2分别为振荡电路的的输入端和输出端,时钟可有内部或外部生成,在XT1和XT2引脚上外接定时元件,内部振荡电路就会产生自激振荡。
系统采用的定时元件为石英晶体和电容组成的并联谐振回路。
时钟频率采用12MHZ,C3、C4的电容值取33pF,电容的大小起频率微测的作用。
晶振电路如4图所示:
图4晶振电路图
2.2.3键盘电路
设计中使用一共用到四个按键,四个按键S4、S5、S6、S7分别接到单片机P1.0-P1.3口线上,各个按键之间互不干扰。
第一个按键S4是开始输入和确认,第二个按键S5是输入数码管光标右移,第三个按键S6是数码管显示的数增加,第四个按键S7是数码管显示的数减少。
当没按键盘时,端口输入为高电平,当按下键盘时,端口输入为低电平。
上拉电阻保证按键释放时,输入检测线上有稳定的高电平。
键盘电路如图5所示:
图5独立式键盘原理图
2.2.4电源电路
单片机的输入电压为直流+5V,必须接通+5V的直流电源才能正常工作。
为了获得+5V电源电压,采用12V变压器将220V电压降压成所需要的12V交流电压,通过整流、滤波、稳压、给系统提供稳定的直流电压+5V。
整流桥选择2W10型号,承受电流的能力为2A,最大耐压能力为1000V。
通过计算,滤波电容C3取标称值470μF,C1取标称值2200μF减少纹波系数电容C4取0.1μF,稳压芯片选取LM7805,为了保护发光二极管不被烧坏,加上1K的保护电阻R1,才能输出稳定的+5V电压。
电源电路如图6所示:
图6电源电路图
2.2.5下载电路
这次万年历系统设计了一个下载口用于单片机系统的程序设计导入,也可作为补充电源使用,即与电脑USB接口相接或直接引入供电电源,因此可以实现程序的输入和供电。
设计的下载电路由单片机下载器、下载电缆及接口电路组成。
其中接口模块的1、4、5脚分别连接单片机的P1.5、P1.7、P1.6引脚,2脚悬空,3脚连接单片机的复位引脚,6、7、8、9脚接地,10脚接电源。
下载接口电路如图7所示。
图7下载接口电路
2.2.6复位电路
复位电路采用按键复位方式,当按下复位键时,单片机复位,恢复初始状态,各寄存器清零,各I/O端口为高阻态。
当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。
RST引脚是单片机复位信号的输入端,复位信号是低电平有效,其低电平持续时间大于最小脉冲宽度,使用其内部频率为12MHZ的晶振,则复位信号持续时间应超过2us才能完成复位操作。
复位电路如图8所示。
图8复位电路
2.3电路原理图
电路原理图见附录A。
2.4实物图
实物图见附录B。
2.5元器件清单
元器件清单见附录C。
3地铁计价软件系统的设计
使用C语言编写课题程序,软件系统包括监控模块,键盘模块和显示模块,同时给出各模块程序流程图。
各模块行驶各自的功能,然而又紧密联系,共同组成了地铁计价系统的软件系统。
3.1单片机资源使用
P0处I/O端口:
P0.0-P0.8的8个I/O端口用于连接6个数码管的段控端,起到点亮数码管上的LED灯的作用。
P1处I/O端口:
P1.0-P1.3的4个I/0端口用于连接4个控制按键,起到输入信号的作用。
P2处I/O端口:
P2.0-P2.8的8个I/O端口用于连接6个数码管的位控端,起到单位数码管的作用。
3.2软件系统模块的程序流程框图
3.2.1监控模块程序流程图
监控模块是软件系统的主体,实时监视按键的状态,判断按键是否被按下。
程序的成功与它密切相关。
如果监控模块出现错误的话,整个软件系统都进行不下去,不能实现需要实现的功能。
设计中先初始化地铁计价系统,然后调用键扫描,通过键扫,判断是否有键按下。
监控模块程序流程图如图9所示:
N
Y
图9监控模块程序流程图
3.2.2键盘模块程序流程图
在单片机应用中,人机交互对话最通用的方法就是通过键盘进行的。
操作者通过键盘向系统发送各种指令或置入必要的数据信息。
因此键盘模块设计的好坏,直接关系到系统的可靠性和稳定性。
键盘模块是程序的一个重要部分,判断有无按键按下,有则执行相应的键功能程序,没有的话就顺序执行主程序。
当有键按下时,判断是哪个键被按下,然后再执行按键对应的功能。
在显示过程中一直进行扫描,当有其它键按下,就执行相应按键的功能。
键盘模块程序流程图如图10所示:
图10键盘模块程序流程图
延时模块通过延时程序voiddelay_ms(unsignedcharms)进行延时,当需要延时时,就调用此函数。
3.2.3计算模块流程图
当站点输入完成后,根据程序中通过设计要求编写的公式计算出总价。