单片机 > 单片机程序设计 > 详情

51单片机Keil C51的使用(C语言)

发布时间:2021-05-11 发布时间:
|
  • 实验目的:

初步掌握Keil(C51语言)和SUN ES59PA实验仪的操作和使用,能够输入和运行简单的程序。

  • 实验设备:

SUN ES59PA实验仪一套、具有一个RS232串行口并安装Keil C51的计算机一台。

  • 实验原理及环境:

1.在计算机上已安装Keil C51软件。这个软件既可以与硬件(SUN ES59PA实验仪)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。

2. 实验的硬件环境:

A3区:CPU总线、I/O接口 片选区

JP37,JP45:地址线A0..A7;

JP48、JP50:CPU的D0..D7,它只能作地址/数据总线使用,不能做I/O口使用;

JP32、JP94:CPU的P0口;

JP51、JP55:CPU的P1口;

JP59、JP95:CPU的P2,它可作I/O、地址线A8..A15使用;

JP61、JP64:CPU的P3口;

JP31:如果P0作地址/数据总线使用,请不要短接JP31;否则,请短接JP31。

片选区

片选

地址范围

片选

地址范围

CS1

0F000H~0FFFFH

CS5

0B000H~0BFFFH

CS2

0E000H~0EFFFH

CS6

0A000H~0AFFFH

CS3

0D000H~0DFFFH

CS7

09000H~09FFFH

CS4

0C000H~0CFFFH

CS8

08000H~08FFFH


F5区:发光二极管部分

发光二极管电路原理图

3.本实验硬件要求的硬件连接:

A3区:JP51

——

F5区:JP65

注意:引脚一一对应连接,即pin1接另一个的pin1,……

  • 实验内容:

1.掌握软件的开发过程:

1)建立一个工程项目选择芯片确定选项。

2)加入C 源程序文件或汇编源程序文件。

3)用项目管理器生成各种应用文件。

4)检查并修改源文件中的错误。

5)编译连接通过后进行软件模拟仿真。

6)编译连接通过后进行硬件仿真。

2.在本实验的硬件环境下,编程:实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。

  • 实验步骤和实验结果:

A、实现内容1的实验步骤和实验结果:

1. 在E盘根目录下新建一个工程目录sy101、运行Keil并新建一个工程项目:

①执行Project→New Project...命令。

②保证工程文件保存的文件夹为“E:sy101”,输入工程名sy101。

③点击保存按钮,保存工程文件。

弹出下一对话框。

①选CPU厂家(Atmel)→②选CPU型号(AT89C51), ③选好后确定

接着设置晶振频率及生成HEX 文件等选项。

①Project→②Options for Target ‘Target 1’… →③在Target选项页中→④更改CPU 晶振频率为12MHz→⑤在Output选项页中→⑥选择生成HEX 文件,其它采用缺省设置→⑦选好后点击确定。

2.建立C源程序文件

①执行File→New命令,弹出源文件编辑窗口。

输入以下C源程序:

#include "reg51.h"

main()

{

unsigned char i,j,k;

while(1)

{

P1^=0x01;

for(i=10;i>0;i--)

for(j=100;j>0;j--)

for(k=250;k>0;k--);

}

}

源程序编写完后,执行File→Save As...命令,将文件以“sy101.c”为文件名保存在“E:sy101 ”文件夹下,获得C语言源程序文件。

3.将源程序文件加入工程,并用项目管理器生成(构建得到)各种应用文件

①在工程窗口,点击Target 1 前之+ 号→出现②Source Group1→③点击Source Group1并按鼠标右键会生弹出下拉菜单,选择④Add Files to Group ‘ Source Group 1’ →⑤在打开的Add Files to Group ‘ Source Group 1’窗口中点击add向项目中添加sy101.c 源文件→⑥点击close关闭Add Files to Group ‘ Source Group 1’窗口→⑦在Source Group 1 前会出现一个+号→⑧点击+号,弹出sy101. c文件名,点击该文件名→⑨主编辑窗口中会出现该源程序文件的内容,执行Project→Build target 构建命令就会生成一系列文件,如OBJ 文件、LST 文件、HEX文件等。

4.检查并修改源文件中的错误

如果在源文件中存在错误,则在Output 窗口中会出现错误提示信息,可以在源程序中进行修改,然后存盘后重新构建。

5.编译连接通过后进行软件模拟仿真

Debug→Start/Stop Debug Session进入软件模拟的仿真窗口,可使用单步、设断点来进行调试和除错。

6.编译连接通过后进行硬件仿真


保证实验仪的仿真USB口与PC机USB口连接,用8针排线连接实验仪A3区的JP51和F5区的JP65(注意引脚一一对应),给实验仪通电,设置硬件实时仿真调试选项:单击工程窗口中的Target 1,执行Project→Options for Target ‘Targetl’ ...命令,在对话框的Debug页选中“Use”单选框,在其后面的下拉式文本框中选中“SUN ES59PA”,其它采用默认选项,点击确定按钮。


执行Debug→Start/Stop Debug Session命令进入硬件实时调试窗口,执行Debug→Go命令连续运行程序,观察LED发光管DS35的显示效果为:连接到P1.0的LED发光管DS35以1秒的周期闪烁。


另外进入硬件实时调试窗口后,还可打开各种观察窗口,进行设置断点、单步运行、运行到光标处、连续执行等调试操作。


B、实现内容2的实验步骤和实验结果:

1.运行Keil并新建一个工程项目:

①执行Project→New Project...命令。

②保证工程文件保存的文件夹为“E:sy101”,输入工程名sy102。

③点击保存按钮,保存工程文件。

弹出下一对话框。

①选CPU厂家(Atmel)→②选CPU型号(AT89C51), ③选好后确定

接着设置晶振频率及生成HEX 文件等选项。

①Project→②Options for Target ‘Target 1’… →③在Target选项页中→④更改CPU 晶振频率为12MHz→⑤在Output选项页中→⑥选择生成HEX 文件,其它采用缺省设置→⑦选好后点击确定。


2.建立C源程序文件

①执行File→New命令,弹出源文件编辑窗口。

输入以下C源程序:

#include "reg51.h"

main()

{

unsigned char i,j,k;

P1=0xfe;

while(1)

{

P1^=0x03;

for(i=10;i>0;i--)

for(j=100;j>0;j--)

for(k=250;k>0;k--);

}

}

源程序编写完后,执行File→Save As...命令,将文件以“sy102.c”为文件名保存在“E:sy101 ”文件夹下,获得C语言源程序文件。


3.将源程序文件加入工程,并用项目管理器生成(构建得到)各种应用文件

①在工程窗口,点击Target 1 前之+ 号→出现②Source Group1→③点击Source Group1并按鼠标右键会生弹出下拉菜单,选择④Add Files to Group ‘ Source Group 1’ →⑤在打开的Add Files to Group ‘ Source Group 1’窗口中点击add向项目中添加sy101.c 源文件→⑥点击close关闭Add Files to Group ‘ Source Group 1’窗口→⑦在Source Group 1 前会出现一个+号→⑧点击+号,弹出sy102. c文件名,点击该文件名→⑨主编辑窗口中会出现该源程序文件的内容,执行Project→Build target 构建命令就会生成一系列文件,如OBJ 文件、LST 文件、HEX文件等。


4.检查并修改源文件中的错误

如果在源文件中存在错误,则在Output 窗口中会出现错误提示信息,可以在源程序中进行修改,然后存盘后重新构建。


5.编译连接通过后进行软件模拟仿真

Debug→Start/St

op Debug Session进入软件模拟的仿真窗口,可使用单步、设断点来进行调试和除错。


6.编译连接通过后进行硬件仿真

保证实验仪的仿真USB口与PC机USB口连接,用8针排线连接实验仪A3区的JP51和F5区的JP65(注意引脚一一对应),给实验仪通电,设置硬件实时仿真调试选项:单击工程窗口中的Target 1,执行Project→Options for Target ‘Targetl’ ...命令,在对话框的Debug页选中“Use”单选框,在其后面的下拉式文本框中选中“SUN ES59PA”,其它采用默认选项,点击确定按钮。

执行Debug→Start/Stop Debug Session命令进入硬件实时调试窗口,执行Debug→Go命令连续运行程序,观察LED发光管DS35的显示效果为:连接到P1.0和P1.1的LED发光管DS35以1秒的周期闪烁。


另外进入硬件实时调试窗口后,还可打开各种观察窗口,进行设置断点、单步运行、运行到光标处、连续执行等调试操作。




『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
PIC单片机基础知识之二