51单片机电机控制模拟(1)环境搭建

我们将使用Keli μVersion和Proteus 8来搭建模拟开发环境。

Keli是由Arm公司开发一款嵌入式开发编译工具,支持C和C++,可以在这个网址下载:

https://www.keil.com/download/product

图片

点击C51, 需要提供一些公司的信息。

Proteus是由Lab Center Electronics公司推出的电子设计自动化(EDA)软件。除具有其它EDA软件的仿真功能,还能仿真单片机及其外围器件。下面的网址可以下载试用版:

https://www.labcenter.com/free-trial

首先在Keli中新建一个项目Project –> New μVersion Project

图片

选择AT89C51单片机:

图片

选择No当提示是否需要将startup.a51文件添加到项目。

图片

点击新建文件并输入以下代码并保存为c文件:

#include <reg51.h>
sbit motp=P1^0;
sbit motn=P1^1;

void main()
{
  unsigned int i;
  motp=motn=0;
  while(1)
  {
    motp=1;
    motn=0;
    for(i=0;i<60000;i++);
    
    motp=0;
    motn=1;
    for(i=0;i<60000;i++);
  }
}

点击右侧项目树添加现有文件,将该c文件添加到项目文件目录。

图片

添加后的项目目录如下,reg51.h是头文件,预定义了单片机寄存器的地址。

图片

点击目标设置,将芯片时钟设为11.0592MHz(系统默认12MHz)。

图片

在输出栏中点选创建Hex文件,用来后续写入单片机。

图片

编译程序,成功生成hex文件在Objects文件夹。

图片

切换到Proteus软件,选择新项目然后安装默认设置。

图片

点击P来选择电子元件:

图片

在弹出对话框里输入AT89C51并选择。

图片

输入DC motor并选择如下电机:

图片

点选单片机,然后点击中间的空白区域放置零件,第一步为选择位置,第二步为确定。

图片
图片

同样选取马达放置在空白区域内单片机旁边:

图片

对马达进行连线,一端连P1.0,另一端连P1.1,跟之前C文件里的端口一致:

图片

双击AT89C1单片机,选择之前编译好的hex文件,然后将系统时钟设为11.0592兆赫。

图片

点击左下角的运行按钮,可以看到马达开始旋转,并且在顺时针和逆时针方向切换。

图片