51单片机的语音计算器的设计与实现
摘 要近半个世纪以来,伴随着科学技术的飞速发展,单片机技术也日渐成熟并且应用也愈加广泛,现如今,单片机不仅效力于高科技领域,同时也广泛地应用于常见的家用电器上。电子计算器是人们日常生活中比较常见的电子产品之一,并为人们广泛使用。随着技术的发展与应用,电子计算器的功能也日趋的完善与强大。本次设计是将红外遥控装置与51系列单片机相结合,设计成的一种带有语音播报功能的简易电子计算器。系统主要由STC89C52单片机、OLED12864显示屏、WT-588D语音播报芯片以及红外无线遥控器构成。数据的输入方式使用红外遥控器,实现了近距离的无线数据输入。系统在进行运算时也同时控制OLED12864显示屏和语音播报芯片WT-588D进行实时的运算式与运算结果的显示与播报。设计能够通过单片机实现简单的加减乘除四则运算。系统的最大数字输入输出区间为±9999.99。计算结果可以精确到小数点后2位。
目 录
1、绪论 1
1.1 课题研究的背景和意义 1
1.2 课题的总体设计方案与目标 1
1.3 论文章节安排 1
2、系统的硬件设计 2
2.1 系统硬件设计概述 2
2.2 单片机最小系统设计 2
2.2.1 单片机简介 2
2.2.2 最小系统硬件设计 2
2.2.2 STC89C52单片机引脚功能简述 3
2.2.3 STC89C52 编程语言简述 4
2.3 语音芯片的硬件设计 4
2.3.1 WT588D语音芯片概述 4
2.3.2 WT588D控制电路的设计 5
2.4 红外通信的硬件设计 6
2.4.1 红外通信技术简介 6
2.4.2 红外接收电路的设计 6
2.5 显示屏的硬件设计 7
2.5.1 OLED显示屏简述 7
2.5.2 OLED显示屏的电路设计 7
2.6 电源电路的硬件设计 8
3、系统软件设计 9
3.1 系统软件设计概述 9
3.2 语音电路的软件设计 10
3.3 红外接收电路的软件
*好棒文|www.hbsrm.com +Q: *351916072*
设计 11
3.3.1 数据解码软件设计 11
3.3.2 数据处理软件设计 13
3.4 OLED显示模块的软件设计 14
3.4.1 SPI通信软件设计 14
3.4.2 屏幕初始化软件设计 15
3.5 计算器软件的设计 17
4、系统调试 21
4.1 系统模块调试 21
4.2 系统综合调试 22
4.3 误差分析 22
5、总结与展望 24
5.1 研究工作的总结 24
5.2 展望 24
参考文献 26
附录 27
附录一 总体硬件电路图 27
附录二 部分系统程序 28
致谢 35
1、绪论
1.1 课题研究的背景和意义
随着社会的发展,电子技术也有了日新月异的变化,在各类产品中的应用也越来越广泛。计算器作为一种能够代替人进行数学运算的手持机器,也越来越受到人们的青睐。现在的电子计算器都由集成电路芯片构成,其结构简单,功能较弱,但由于其使用方便、操作便捷、价格低廉,因而广泛运用于日常生活中,也日渐成为日常生活必备的办公用品之一,在人们的学习、工作生活中都发挥着重要的作用。如何使计算器功能更加的完善,在充分利用已有的软件和硬件条件下,设计出更出色的计算器,使其更好的为各个行业服务,成了如今电子领域重要的研究课题。因此,设计一款简单实用的计算器具有很大的实际意义。
1.2 课题的总体设计方案与目标
本设计是基于51系列单片机的简易计算器的设计,设计内容包括软件设计及硬件设计。硬件电路设计包括单片机最小系统、红外接收电路、语音模块WT588D电路和OLED12864显示电路。软件设计部分涉及计算器算法的实现、单片机外部中断、定时器中断、人机交互模块通信等。系统单片机采用STC89C52,在系统正常工作时单片机通过串行通信方式控制OLED12864显示屏和语音模块WT588D进行数据的实时显示与播报。输入的红外信号通过红外一体接收头HX1838进行红外数据的接收与处理,处理后的信号送入单片机的外部中断口后,单片机进行信号识别与数据处理,并通过算法实现简易计算器的功能。
本设计的基本功能是实现加减乘除四则运算,计算结果最大输出范围为±9999.99,在进行小数的运算时,计算结果可以精确到小数点后2位。计算器还具有实时的清零和复位的功能,可以任意时刻清除当前输入,以便进行下一次的运算操作。
1.3 论文章节安排
第一章:绪论,主要介绍了本设计的设计背景和设计内容。
第二章:系统硬件设计,主要介绍了各模块的硬件电路设计,并结合原理图进行了详细说明。
第三章:系统软件设计,主要分析系统各模块的软件设计,结合流程图对软件设计思路进行了阐述。
第四章:系统调试,介绍了本设计的调试过程,主要是对整个设计进行综合性的调试。
第五章:总结与展望,总结本设计,并提出存在的不足及以后改进的方向。2、系统的硬件设计
2.1 系统硬件设计概述
硬件部分是整个设计的基础,所以本设计首先要考虑的就是设计的硬件电路,先设计好硬件电路,然后再考虑软件中的程序调试问题,因此设计好硬件部分是很关键的。整个硬件电路以单片机ST89C52为主体,包括红外遥控电路、语音播报电路以及OLED液晶显示电路。硬件电路的系统框图如下图21所示。
图21 硬件系统框图
2.2 单片机最小系统设计
2.2.1 单片机简介
单片机是指由中央处理单元(CPU)、存储器(RAM、ROM)、并行I/O、串行I/O、定时器/计数器、中断系统、系统时钟电路及系统总线的微型计算机。因为其具有微型计算机的属性,因而被称为单片微型计算机,简称单片机。
2.2.2 最小系统硬件设计
STC89C52单片机的最小系统由电源、地、时钟电路、复位电路组成,如图22所示。图中引脚RST所接电路是复位电路,复位电路可以在程序运行出错或操作错误使系统处于死锁状态时手动复位单片机。在复位后,单片机内存以及各寄存器的值变为初始值。按键手动电平复位是通过RESET端经电阻与电源VCC接通来实现。单片机使用内部时钟时,时钟引脚XTAL1和XTAL2,外接石英晶体和微调电容,构成了一个稳定的自激振荡电路,电路中的电容C1和C2的典型值通常选择为15~33pF,该电容的大小会影响振荡器频率的高低。晶体震荡频率的范围通常是在1.2—40MHz。晶体的频率越高,单片机的处理速度也就越快。在硬件电路的设计时,晶体和电容尽可能与单片机芯片靠近,以减少寄生电容,可以保证振荡器更稳定、可靠的工作。
目 录
1、绪论 1
1.1 课题研究的背景和意义 1
1.2 课题的总体设计方案与目标 1
1.3 论文章节安排 1
2、系统的硬件设计 2
2.1 系统硬件设计概述 2
2.2 单片机最小系统设计 2
2.2.1 单片机简介 2
2.2.2 最小系统硬件设计 2
2.2.2 STC89C52单片机引脚功能简述 3
2.2.3 STC89C52 编程语言简述 4
2.3 语音芯片的硬件设计 4
2.3.1 WT588D语音芯片概述 4
2.3.2 WT588D控制电路的设计 5
2.4 红外通信的硬件设计 6
2.4.1 红外通信技术简介 6
2.4.2 红外接收电路的设计 6
2.5 显示屏的硬件设计 7
2.5.1 OLED显示屏简述 7
2.5.2 OLED显示屏的电路设计 7
2.6 电源电路的硬件设计 8
3、系统软件设计 9
3.1 系统软件设计概述 9
3.2 语音电路的软件设计 10
3.3 红外接收电路的软件
*好棒文|www.hbsrm.com +Q: *351916072*
设计 11
3.3.1 数据解码软件设计 11
3.3.2 数据处理软件设计 13
3.4 OLED显示模块的软件设计 14
3.4.1 SPI通信软件设计 14
3.4.2 屏幕初始化软件设计 15
3.5 计算器软件的设计 17
4、系统调试 21
4.1 系统模块调试 21
4.2 系统综合调试 22
4.3 误差分析 22
5、总结与展望 24
5.1 研究工作的总结 24
5.2 展望 24
参考文献 26
附录 27
附录一 总体硬件电路图 27
附录二 部分系统程序 28
致谢 35
1、绪论
1.1 课题研究的背景和意义
随着社会的发展,电子技术也有了日新月异的变化,在各类产品中的应用也越来越广泛。计算器作为一种能够代替人进行数学运算的手持机器,也越来越受到人们的青睐。现在的电子计算器都由集成电路芯片构成,其结构简单,功能较弱,但由于其使用方便、操作便捷、价格低廉,因而广泛运用于日常生活中,也日渐成为日常生活必备的办公用品之一,在人们的学习、工作生活中都发挥着重要的作用。如何使计算器功能更加的完善,在充分利用已有的软件和硬件条件下,设计出更出色的计算器,使其更好的为各个行业服务,成了如今电子领域重要的研究课题。因此,设计一款简单实用的计算器具有很大的实际意义。
1.2 课题的总体设计方案与目标
本设计是基于51系列单片机的简易计算器的设计,设计内容包括软件设计及硬件设计。硬件电路设计包括单片机最小系统、红外接收电路、语音模块WT588D电路和OLED12864显示电路。软件设计部分涉及计算器算法的实现、单片机外部中断、定时器中断、人机交互模块通信等。系统单片机采用STC89C52,在系统正常工作时单片机通过串行通信方式控制OLED12864显示屏和语音模块WT588D进行数据的实时显示与播报。输入的红外信号通过红外一体接收头HX1838进行红外数据的接收与处理,处理后的信号送入单片机的外部中断口后,单片机进行信号识别与数据处理,并通过算法实现简易计算器的功能。
本设计的基本功能是实现加减乘除四则运算,计算结果最大输出范围为±9999.99,在进行小数的运算时,计算结果可以精确到小数点后2位。计算器还具有实时的清零和复位的功能,可以任意时刻清除当前输入,以便进行下一次的运算操作。
1.3 论文章节安排
第一章:绪论,主要介绍了本设计的设计背景和设计内容。
第二章:系统硬件设计,主要介绍了各模块的硬件电路设计,并结合原理图进行了详细说明。
第三章:系统软件设计,主要分析系统各模块的软件设计,结合流程图对软件设计思路进行了阐述。
第四章:系统调试,介绍了本设计的调试过程,主要是对整个设计进行综合性的调试。
第五章:总结与展望,总结本设计,并提出存在的不足及以后改进的方向。2、系统的硬件设计
2.1 系统硬件设计概述
硬件部分是整个设计的基础,所以本设计首先要考虑的就是设计的硬件电路,先设计好硬件电路,然后再考虑软件中的程序调试问题,因此设计好硬件部分是很关键的。整个硬件电路以单片机ST89C52为主体,包括红外遥控电路、语音播报电路以及OLED液晶显示电路。硬件电路的系统框图如下图21所示。
图21 硬件系统框图
2.2 单片机最小系统设计
2.2.1 单片机简介
单片机是指由中央处理单元(CPU)、存储器(RAM、ROM)、并行I/O、串行I/O、定时器/计数器、中断系统、系统时钟电路及系统总线的微型计算机。因为其具有微型计算机的属性,因而被称为单片微型计算机,简称单片机。
2.2.2 最小系统硬件设计
STC89C52单片机的最小系统由电源、地、时钟电路、复位电路组成,如图22所示。图中引脚RST所接电路是复位电路,复位电路可以在程序运行出错或操作错误使系统处于死锁状态时手动复位单片机。在复位后,单片机内存以及各寄存器的值变为初始值。按键手动电平复位是通过RESET端经电阻与电源VCC接通来实现。单片机使用内部时钟时,时钟引脚XTAL1和XTAL2,外接石英晶体和微调电容,构成了一个稳定的自激振荡电路,电路中的电容C1和C2的典型值通常选择为15~33pF,该电容的大小会影响振荡器频率的高低。晶体震荡频率的范围通常是在1.2—40MHz。晶体的频率越高,单片机的处理速度也就越快。在硬件电路的设计时,晶体和电容尽可能与单片机芯片靠近,以减少寄生电容,可以保证振荡器更稳定、可靠的工作。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/3122.html