基于单片机的出租车计价器设计毕业设计论文(编辑修改稿)内容摘要:

示模块特别是点阵图形液晶模块,可以显示数字、字符、汉字和图形,可适用与各种场合。 下面介绍本次设计用到的 1602LCD 液晶显示模块。 无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 29 页 /共 66 页 1602 液晶也叫 1602 字符型液晶,它是一种专门用来显示字母、数字、符号等的 点阵 型液晶模块 , 能够同时显示 16x02 即 32个字符。 它由若干个 5X7 或者无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 30 页 /共 66 页 5X11 等 点阵 字符位组成,每个点阵字符位都可以显示一个字符,每 位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。 液晶 1602引脚图如图 35 所示: 图 35 液晶 1602 引脚图 第 1 脚: VSS 为地电源。 第 2 脚: VDD 接 5V正电源。 第 3 脚: VL 为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生 “ 鬼影 ” ,使用时可以通过一个 10K 的电位器调整对比度。 第 4 脚: RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。 第 5 脚: R/W 为读写信号线,高电平时进行读操作,低电平时进行写操作。 当 RS和 R/W 共同为低电平时可以写入指令或者显示地址,当 RS 为低电平 R/W 为高电平时可以读忙信号,当 RS为高电平 R/W 为低电平时可以写入数据。 第 6 脚: E端为使能端,当 E端由高电平跳变成低电平时,液晶模块执行命令。 第 7~ 14 脚: D0~ D7 为 8位双向数据线。 第 15 脚:背光源正极。 第 16 脚:背光源负极。 字符型液晶 1602 主要技术参数如表 33所示: 无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 31 页 /共 66 页 表 33 字符型液晶 1602 主要技术参数 显示容量: 16*2 个字符 芯片工作电压: — 工作电流: () 模块最佳工作电压: 字符尺寸: *( W*H) mm 接口信号说明如表 34所示: 表 34 1602 接口信号说明 编号 符号 引脚说明 编号 符号 引脚说明 1 Vss 电源地 9 D2 DataI/O 2 VDD 电源正极 10 D3 DataI/O 3 VL 液晶显示偏压信号 11 D4 DataI/O 4 Rs 数据 /命令选择端( H/L) 12 D5 DataI/O 5 R/W 读 /写选择端( H/L) 13 D6 DataI/O 6 E 使能信号 14 D7 DataI/O 7 D0 DataI/O 15 BLA 背光源正极 8 D1 DataI/O 16 BLK 背光源负极 控制器接口说明( HD44780 及兼容芯片) 基本操作时序 a 读状态:输入: Rs=L, Rw=H, E=H 输出: D0— D7=状态字 b 写指令:输入: Rs=L, Rw=L, D0— D7=指令码 输出:无 E=高脉冲 C 读数据:输入: Rs=H, Rw=L, E=H 输出: D0— D7=数据 d 写数据:输入: Rs=H, Rw=L, D0— D7=数据 输出:无 E=高脉冲 状态字说明如表 35 所示: 表 35 状态字说明( a) STA7 D7 STA6 D6 STA5 D5 STA4 D4 STA3 D3 STA2 D2 STA1 D1 STA0 D0 无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 32 页 /共 66 页 表 35 状态字说明( b) STA06 当前数据地址指针的数值 STA7 读写操作使能 1:禁止 0:允许 注:对控制器进行读写操作之前,都必须进行读写检测,确保 STA7 为 0 控制器内部带有 80*8 位的 RAM 缓冲区,对应关系如下图 36所示: 表 36 RAM 地址映射图 LCD16 字 *2 行 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0 A 0 B 0 C 0 D 0 E 0 F 1 0 „ 2 7 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 A 4 B 4 C 4 D 4 E 4 F 5 0 „ 6 7 显示模式设置如表 37所示: 表 37 显示模式设置 指令码 功能 0 0 1 1 1 0 0 0 设置 16*2 显示, 5*7 点阵, 8 位数据接口 显示开关及光标设置如表 38所示 : 表 38 开关及光标设置 指令码 功能 0 0 0 0 1 D C B D=1 开显示; D=0 关显示 C=1 显示光标; C=0 不显示光标 B=1 光标闪烁; B=0 光标不显示 0 0 0 0 0 1 N S N=1 当读或写一个字符后地址指针加一,且光标加一 N=0 当读或写一个字后地址指针减一,且光标减一 S=1 当写一个字符后,整屏显示左移(N=1)或右移( N=0) ,以得到光标不移动而屏幕移动的效果 S=0 当写一个字符,整屏显示不移动 无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 33 页 /共 66 页 系统组成及功能框图 此出租车计价器以 AT89C52 单片机为核心,利用单片机配合液晶显示器等硬件,实现出租车计价器的基本计价功能及一些简单的附加功能。 出租车计价器系统框图如图 36 所示: 图 36 出租车计价器系统框图 电源电路 一般而言,出租车上使用的电源是 12V,而芯片所需供电电压是 5V,所以我们选择 LM7805 的经典电路电源电路完成 12V 转 5V 的目的。 电源电路如图 37所示: 三端稳压集成电路 LM7805。 三端指的是这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端、输出端。 图 37 电源电路AT89C52 电源电路 按键电路 振荡电路 显示电路 掉电存储电路 复位电路 无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 34 页 /共 66 页 振荡电路 单片机内部有一个高增益、反相放大器,其输入端为芯片引脚 XTAL1,其输出端为引脚 XTAL2。 通过这两个引脚在芯片外并接石英晶体振荡器和两只电容(电容和一般取 30pF 左右 )。 这样就构成一个稳定的自激振荡器。 振荡电路脉冲经过二分频后作为系统的时钟信号,再在二分频的基础上三分频产生 ALE 信号,此时得到的信号时机器周期信号。 振荡电路如图 38 所示: 图 38 振荡电路 复位电路 复位操作有两种基本形式:一种是上电复位,另一种是按键复位。 按键复位具有上电复位功能外,若要复位,只要按图中的 RESET 键,电源 VCC 经电阻 RR2 分压,在 RESET 端产生一个复位高电平。 上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。 上电瞬间 RESET 引脚获得高电平,随着电容的充电, RERST 引脚的高电平将逐渐下降。 RERST 引脚的高电平只要能保持足够的时间( 2 个机器周期),单片机就可以进行复位操作。 按键复位电路图如图 39所示。 图 39 复位 电路无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 35 页 /共 66 页 掉电存储电路 AT24C02 可解决掉电数据保存问题,存储当前设定的总金额,等待时间,运行里程以及单价等信息。 由于 AT24C02 的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线 SCL(移位脉冲)和 SDA(数据 /地址)与单片机传送数据。 每当设定一次单价,系统就自动调用存储程序,将单价信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使用。 因为在 proteus 中没有 AT24C02,我们用24C02C 代替。 掉电存储电路如图 310 所示: 图 310 掉电存储电路 按键电路 按键电路采用独立按键,每个按键占用一根 I/O 口线,相互独立。 I/O 口通过按键与地相连, I/O 口有上拉电阻,无键按下时,引脚端为高电平,有键按下时,引脚电平被拉低。 I/O 口内部有上拉电阻时,外部可不接上拉电阻。 键盘接口电路如图 311 所示: 无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 36 页 /共 66 页 其中依次有 S S S S S S6 这 6 个按键,功能分别是白天 /夜晚切换键、单价增、单价减、开始 /等待键、里程增加、重新开始键。 图 311 键盘接口电路 显示电路 我们 采用液晶 LCD 显示,液晶又分字符型和点阵型,我们使用的液晶是字符型液晶,并且带字符库的,不需要查找代码。 英文字符就可。 液晶电路使用时,如果发现液晶不亮可以调节连接液晶的点位器,改变液晶的亮度。 显示电路如图312 所示:无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 37 页 /共 66 页 图 312 液晶显示电路 路程测量电路 出租车中需要一个能准确获得车轮转动即路量信号的装置 ,以得到标准的脉冲信号送入单片机的定时 / 计数器 T1 即 P3. 5 引脚 ,利用单片机的 T1 的计数功能完成 100 次的计数后产生一中断来完成路程的测量。 (设车轮周长为 1 m ,则 每产生 100 个脉冲便表示车已行程 0. 1 km ,为了演示方便本设计中采用按键了模拟增加里程。 每按一个按键增加。 如果按两次就是 1 千米,以此类推不断的增加来模拟车的不断前进。 无 锡 职 业 技 术 学 院 毕 业 设 计(论 文) 说 明 书 第 38 页 /共 66 页 第 4 章 软件设计 软件设计程序可分为:主程序控制程序、 AT24C02 掉电存储程序、键盘控制程序、显示程序等。 在本次设计中像电路键盘用到了 P1 口,其中 到 口作为键盘的输入,直流电机电路的控制线用了 P2 口线, 、 、 分别为 LED 信号控制脚。 显示电路用到了 P0 和 P2 口, P0 口为液晶的数据口。 主程序 在主程序里,需要对各芯片 的初始化、各中断的初始化 ,另外,在主程序里还需要设置启动 /清除标志寄存器、里程寄存器、价格寄存器,并 对它们进行初始化。 然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。 当空车信号灯打下时,表示有乘客上车,并启动计价,将根据里程寄存器中的内容计算和判断出行驶里程是否已超过起价公里数。 若已超过,则根据里程值、每公里的单价和起价来计算出当前的累计价格,并将结果存于价格寄存器中,然后将当前时间和累计价格送到 LCD 显示电路显示出来。 当中途塞车 (等待或低速行驶 )时,在一定时间内没有检测到传感器的脉冲信号就启动T0 定时器进行计时,当超过规定的等待时间后,计价器就根据等待价格进行当前金额的累加与显示,并在计 价器上显示等待时间;当到达目的地的时候,由于霍尔开关没有送来脉冲信号,就停止计价,显示当前所应该付的金额和对应的单价,到下次启动计价时,系统自动对显示清零,并重新进行。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。