浅析单片机计数器系统设计

2020-11-26 12:41赵嘉鑫
西部论丛 2020年3期
关键词:编程单片机

赵嘉鑫

摘 要:单片机是一种可编程控制的芯片,其可以根据使用者编程逻辑对某个物体进行控制,起到指令传输的作用,因此单片机经常被使用到各种系统设计中,其中就包括了计数器系统。对此本文将对单片机计数器系统设计方法进行研究,主采用keil、Proleus软件进行设计,设计中所使用的单片机为AT89C51单片机。

关键词:单片机;编程;计数器系统

0.引言

计数器系统是一种常见于自动化控制系统中的子系统,其功能虽然简单,但通用性很强,是实现自动化控制逻辑的重要组成部分,如利用计数器系统对数字进行记录,其所记录的数字代表了时间,当计数器系统所记录数字达到指定值后,就会触发其他子系统功能,由此来实现控制目的。而计数器系统的计数功能就来源于单片机,可见单片机是计数器系统的基础,良好的单片机计数器系统设计能够对我们的生活、工作不断发展,对此进行研究具有一定的现实意义。

1.单片机相关理论分析

1.1单片机原理

本质上单片机是一种集成芯片,使用者可以通过编程对芯片的各个引脚进行控制,使不同引脚在不同时刻输出的不同类电平,即低电平与高电平,这样就能对单片机引脚外围电路进行控制。单片机外围电路的运作能够起到驱动作用,促使受控目标发生运动,这既为单片机运作原理。

1.2单片机编程与仿真

单片机需要在使用者做好编程工作后才能依照对应逻辑进行运作,因此做好编程工作是使用单片机的基础,同时在一些相对复杂的单片机工作中,如单片机相关系统设计,使用者并不能保障通过单次编程就能让单片机完全符合运作要求,对此就有必要在每次编程之后进行仿真测试,再根据仿真测试结果对编程进行调整,这样才能保障单片机相关系统逐渐完善,这一点在单片机计数器系统中也是一样。这一条件下,面对单片机编程与仿真需求,建议使用相关软件来开展相关工作,而这些软件中较具代表性的就是keil、Proleus软件,因此本文也将选择两者来进行单片机计数器系统设计。

2.单片机计数器系统设计

单片机计数器系统设计涉及到单片机编程、计数器电路与自动化控制逻辑,因此其设计方案大体可以分为三个步骤,分别为硬件设计、软件设计与电路设计,其中硬件设计主要负责提供基础支撑、软件设计负责实现计数功能、电路设计负责实现控制逻辑,对此下文将对各步骤设计方法进行分析,并提出系统仿真测试方案,用于检测系统可行性。

2.1硬件设计

单片机计数器系统硬件设计分为两个步骤,即最小系统设计、电路设计,各步骤具体内容如下。

(1)最小系统设计

在AT89C51单片机基础上,除单片机本身以外,其最小系统由时钟电路、复位电路。①时钟电路:借助单片机内的反相放大器XTAL1、XTAL2两端分别作为输入端、输出端,在两者之间安装振荡器,该振荡器由石英晶振、两个微调电容组成,用跨接方式安装,由此实现时钟电路设计,该电路主要负责向单片机输出时钟信号;②复位电路:采用赋值方法来实现复位电路,即在单片机内安装复位按钮与相关电路,这样当系统计数运作时单片机的相关引脚将处于低电平状态,数值随计数数字变化,而当使用者按下复位按钮,则单片机相关引脚将处于高电平状态,电路赋值为0000H。

(2)电路设计

电路设计主要是对电路运作逻辑进行构建,具体方法上首先利用Proleus软件找到AT89C51单片机,通过BUTTON功能按键展示电容CAP、电解电容CAP-ELEC、发光二极管晶体震荡管CRYSTAL、电阻RES等相关电器元件。其次将元件依照功能放置在AT89C51单片机相关引脚上,如在P1口的八个引脚上放置八个发光二极管阴极元件,这样可以对二极管灯开闭进行控制。最后将带有电子元件的单片机引脚与时钟电路、复位电路连接,借助两个电路来进行指令输出,并实现單片机自动控制逻辑。

2.2软件设计

软件设计是实现单片机计数器系统计数功能的主要步骤,本文主要采用C语言来进行编程设计。首先打开keil软件进行编辑,输入计数功能程序,并对C51源程序进行调试,由此生成HEX文件,其次针对单片机计数器系统中的主程序、子程序进行逻辑设置,即主程序逻辑为:开始→变量展示→计数器启动→停滞;子程序逻辑为:timer0→左移一位→Oxff?→重置LED或返回终端。

2.3仿真测试方案

在Proleus软件所设计的电路基础上,将电路与系统架构导入keil软件中,并在keil软件中找到hex文件,将其加载至电路内单片机处,随后开始仿真。对仿真过程进行观察,如果本系统能够在自动运作中进行左移一位运作(每左移一位就代表计数增长一位),就代表系统具备自动计数功能;如果本系统在达到计数最高位后会自动归零,就代表系统能自动复位;如果通过复位按键能够让计数随时复位,则说明系统可控。

3.仿真测试结果

根据以上(2.3仿真测试方案)中提出的三个测试方向,通过观察与记录得到了仿真结果:(1)系统在自动运行过程中会根据“秒速”频率不断左移,说明系统具备自动计数功能;(2)设置“10”为最大计数,系统在计数达到“10”之后会恢复到“0”,电路赋值为0000H,说明系统可自动复位;(3)在最大计数基础上,待单片机计数系统计数到“7”时按下了复位按钮,系统技术第一时间恢复到“0”,电路赋值为0000H,说明系统计数功能可控。由此可知,本系统计数功能良好,运作具有自动化表现,同时人工可以随时介入计数过程,系统可控性优秀。

4.结语

综上,本文对单片机计数器系统设计进行了分析,阐述了单片机相关理论、单片机计数器系统设计方案,并借助仿真测试方案验证了系统可行性。分析结果显示,文中设计方法可以成功实现单片机计数器系统,且该系统自动性、可控性良好,在实际应用中可起到准确、可控计数的作用。

参考文献

[1] 浅析单片机计数器系统设计[J].贾政宇,刘蓟南,张英哲.南方农机.2019(05)

[2] 简介51单片机的定时器/计数器[J].张幼麟.内江科技.2018(12)

[3] 基于单片机的投票计数器的设计[J].张福军,刘羽楠,刘坤.科技咨询导报.2007(28)

猜你喜欢
编程单片机
玩游戏学编程,Blockly Games上手玩
纺织机上诞生的编程
88元抢5节直播编程课,轻松入门超越同龄人
单片机在智能控制中的应用
编程屋完成数百元万天使轮融资
游戏机教出编程小达人
学编程,先画画
C8051F020与80C51单片机的异同点
单片机I/O口模拟串行通讯的C51实现方法
单片机调试方法的探讨