思享国logo
  • 点赞

    6

  • 宝推

    0

  • 10

  • 回复

  • 下载附件

    1

返回顶部

点赞数

6

回复数

2

被浏览

628

基于8254片外定时器和STC89C52RC的直流电机调速控制设计(附源代码、原理图等)

2017-12-22 15:59更新
  • 干货下载
  • 方案剖析
  • L298N集成H桥电机驱动
  • 输入端INB脉宽调制
  • 8254直流电机调速

这次分享的是基于8254片外定时器和STC89C52RC的直流电机调速控制设计。学习过单片机的朋友对于计数/定时器想必都不陌生,当其记录相应的事件触发时,就是计数器;当记录时钟脉冲信号时,就是定时器。在实际工程使用相当普遍,而且根据其不同的性质和功能应用,演化出多种类型的定时器。


关于8254 定时计数器?

8254是可编程计数器计时器芯片,其内部集成了三个相互独立的16位计数器(其计数速度可达到10MHZ),以及一个具有三态双向的位数据总线缓冲器。通过读写逻辑的控制,接收来自系统总线的命令和数据, 并将的状态字送上系统总线。控制寄存器接收来自数据总线缓冲器中关于命令的数据, 并暂存这些数据。可以基本解决了任何一个微处理器或单片机系统中最普遍的一个问题——在软件的控制下如何产生精确的定时以及准确计数。

微信图片_20171222152429

8254定时计数器,每个计数器都有6种工作方式。三个计数器的时钟端被同时连接到一个时钟源上, 提供每个计数器的时钟并可保证它们之间的同步工作;而当其达到各自预设的计数值(预设计数值≤定时周期设定值),OUT1、OUT2出现低电平,直至下一个由OUT0触发GATE1和GATE2后,恢复高电平,如此往复循环,产生了相应占空比的PWM波。


STC89C52RC主控芯片?

STC89C52RC是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K字节系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但是做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

微信图片_20171222153321

因为设计的主要目的是完成直流电机的调速功能,以STC89C52RC单片机为作为主控芯片;电机驱动采用集成H桥芯片L298N,采用单极性控制方式,即通过一个I/O来对输入端INA进行高低电平控制,实现电机转向控制,再通过一个 PWM调制信号对输入端INB进行脉宽调制控制,实现电机转速控制;L298N与单片机以及8254定时器之间的信号采用光耦 PC817来隔离;通过外加一些按键以及拨码开关来实现相关启动、停止、加速、减速、转向设置功能;对于8254定时器而言,在这里的外部时钟采用4MHZ的有源晶振输入。


软件设计?

程序主要分作以下三大块,8254定时计数器的初始化、按键扫描循环、速度(占空比)换算以及重置加载。

微信图片_20171222153746

完成对8254定时器的初始化工作后,就是对外部输入独立按键的扫描部分,由按键以及拨码开关的输入来换算转速的参数。若是每一次扫描都对8254定时器采取设置操作,就会扰乱8254定时器正常的输出,所以在这里每次扫描时检测参数是否变化,只有当参数变化时才对8254定时器设置并装载计数器值,这样能使输出波形稳定。


实物展示和资料?

1.关于实物:

微信图片_20171222154447


2.关于资料

基于8254片外定时器和STC89C52RC的直流电机调速控制设计资料可在附件中下载,包括原理图、源代码、数据手册等。


您尚未登录, 登入  或  注册  后可查看全部