基于8051单片机与1601LCD的计算器设计

**单片机设计介绍,1665基于8051单片机与1601LCD的计算器设计

文章目录

一 概要

基于8051单片机和1601LCD的计算器设计是一种简单的嵌入式系统应用,其设计过程包括以下几个步骤:

  1. 硬件设计:

    • 选择合适的单片机型号并配备所需的外部硬件,如1601LCD、键盘矩阵及其它的被动元件。
    • 通过键盘矩阵来检测用户输入的数字和运算符,并将其转换为数字或运算符代码,并将其存储在单片机的内部存储器中。
    • 将控制信号由单片机的I/O口输出给1601 LCD,以显示数字和结果。
    • 按钮防抖和键盘扫描技术可以提高键盘的稳定性和可靠性。
  2. 软件设计:

    • 根据硬件需求编写单片机的程序代码,处理用户输入的数字和运算符,并将结果存储在单片机的内部存储器中。
    • 将结果和其他信息显示在连接到单片机的1601 LCD上。
    • 同时执行运算、清空、删除、撤销等功能。
    • 可以通过LCD菜单,允许用户选择其它功能和配置选项。
  3. 调试和测试:

    • 通过逐步测试硬件和软件的功能,确保计算器在不同的情况下能正常工作。
    • 程序的优化和调整,以提高代码的效率和可维护性,进而提高计算器的响应速度和计算精度。
    • 进行实际测试,验证计算器的性能和准确性。

需要注意的是,在进行电路的设计和编程时,要参考并遵守相关的安全规范和技术要求。而且,在设计中应该考虑到用户界面设计、错误处理等用户体验方面的问题。

二、功能设计

总体设计

根据功能和指标要求,本系统选用MCS-51系列单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计如下:

(1)由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LCD显示数据和结果

(2)另外键盘包括数字键(0~9)、符号键(+、、×、→)、清除键和等号键,故只需要16个接键即可,设计中采用集成的计算键盘

(3)执行过程:开机显宗零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储

并等待再次键入数值,当再键入数值后将显宗键入的数值,按等号就会在LCD上输出运算结果

设计思路

设计思路

文献研究法:搜集整理相关单片机系统相关研究资料,认真阅读文献,为研究做准备;

调查研究法:通过调查、分析、具体试用等方法,发现单片机系统的现状、存在问题和解决办法;

比较分析法:比较不同系统的具体原理,以及同一类传感器性能的区别,分析系统的研究现状与发展前景;

软硬件设计法:通过软硬件设计实现具体硬件实物,最后测试各项功能是否满足要求。

三、 软件设计

本系统原理图设计采用Altium Designer19,具体如图。在本科单片机设计中,设计电路使用的软件一般是Altium Designer或proteus,由于Altium Designer功能强大,可以设计硬件电路的原理图、PCB图,且界面简单,易操作,上手快。Altium Designer19是一款专业的整的端到端电子印刷电路板设计环境,用于电子印刷电路板设计。它结合了原理图设计、PCB设计、多种管理及仿真技术,能够很好的满足本次设计需求。


仿真实现

本设计利用protues8.7软件实现仿真设计,具体如图。

Protues也是在单片机仿真设计中常用的设计软件之一,通过设计出硬件电路图,及写入驱动程序,就能在不实现硬件的情况进行电路调试。另外,protues还能实现PCB的设计,在仿真中也可以与KEIL实现联调,便于程序的调试,且支持多种平台,使用简单便捷。


原理图

五、 程序

本设计利用KEIL5软件实现程序设计,具体如图。作为本科期间学习的第一门编程语言,C语言是我们最熟悉的编程语言之一。当然,由于其功能强大,C语言是当前世界上使用最广泛、最受欢迎的编程语言。在单片机设计中,C语言已经逐步完全取代汇编语言,因为相比于汇编语言,C语言编译与运行、调试十分方便,且可移植性高,可读性好,便于烧录与写入硬件系统,因此C语言被广泛应用在单片机设计中。keil软件由于其兼容单片机的设计,能够实现快速调试,并生成烧录文件,被广泛应用于C语言的编写和单片机的设计。


六、 文章目录

目 录

摘 要 I

Abstract II

引 言 1

1 控制系统设计 2

1.1 主控系统方案设计 2

1.2 传感器方案设计 3

1.3 系统工作原理 5

2 硬件设计 6

2.1 主电路 6

2.1.1 单片机的选择 6

2.2 驱动电路 8

2.2.1 比较器的介绍 8

2.3放大电路 8

2.4最小系统 11

3 软件设计 13

3.1编程语言的选择 13

4 系统调试 16

4.1 系统硬件调试 16

4.2 系统软件调试 16

结 论 17

参考文献 18

附录1 总体原理图设计 20

附录2 源程序清单 21

致 谢 25

相关推荐
qq_459730032 小时前
4-3 MCU中ARM存储器的作用
arm开发·单片机·嵌入式硬件
重生之我是数学王子5 小时前
点亮核心板小灯 STM32U575
stm32·单片机·嵌入式硬件
end_SJ5 小时前
初学stm32 --- 定时器中断
stm32·单片机·嵌入式硬件
南城花随雪。5 小时前
单片机:实现数码管动态显示(0~99999999)74hc138驱动(附带源码)
单片机·嵌入式硬件
南城花随雪。8 小时前
单片机:实现信号发生器(附带源码)
单片机·嵌入式硬件
灵槐梦9 小时前
【速成51单片机】2.点亮LED
c语言·开发语言·经验分享·笔记·单片机·51单片机
三月七(爱看动漫的程序员)10 小时前
HiQA: A Hierarchical Contextual Augmentation RAG for Multi-Documents QA---附录
人工智能·单片机·嵌入式硬件·物联网·机器学习·语言模型·自然语言处理
新晨单片机设计10 小时前
【087】基于51单片机智能宠物喂食器【Proteus仿真+Keil程序+报告+原理图】
嵌入式硬件·51单片机·proteus·宠物·ad原理图
大风起兮1211 小时前
STM32HAL库中RTC闹钟设置时分秒,年月日
stm32·嵌入式硬件
超能力MAX12 小时前
IIC驱动EEPROM
单片机·嵌入式硬件·fpga开发