欣欣学习网,老工程师带你学习单片机技术,欢迎来坐坐。
首  页 | 学习NIOSII | 学习C51 | 学习CPLD | 51+CPLD实验板 | | | MY-RTOS

本栏目的实验需在 WinXp 上操作。建议在 Virtual Box 虚机上安装WinXp系统,使用更方便。

 学习板概述
 安装keil C51软件
 在线烧写程序
 keil C51使用入门
 使用keil C51仿真调试
 使用标准输入输出设备
 点灯程序
 跑马灯程序
 LED数码管扫描显示程序
 键盘扫描程序
 键盘数码管联合扫描
 计时秒表程序
 蜂鸣器发声程序
 产生音阶程序
 字符LCD控制程序
 Flash读写程序
 使用ADC检测模拟量程序
 相关软件与文档


单片机/C51学习板

使用keil C51仿真调试


本次实验以 keil C51使用入门 为基础,在阅读本实验之前,请先行阅读该实验。

1.

启动 ISP 软件,将 D:\mon51 下的 mon51.hex 文件烧写到实验板上,关闭 ISP 软件。mon51.hex 是调试代理程序,它的作用是监控用户程序执行,以实现仿真、调试功能。ISP 软件使用后要退出,以释放被其占用的串口,其使用方法见:在线烧写程序

2.

启动 Keil uVision2 软件,在 Project 菜单下,点击 Open Project 命令,打开 D:\mon51 下的 demo.uv2 工程。

3.

在项目管理窗口的 Files 页上,选中 Target1 组,点击右键。在弹出菜单上,点击 Select Device for Target 'Target 1' 命令。在弹出对话框上,将 Data base 改为 Generic 组中的 8032,点击“确认”按钮。

4.

在项目管理窗口的 Files 页上,选中 Target1 组,点击右键。在弹出菜单上,点击 Options for Target 'Target 1' 命令。在弹出对话框的 Target 页上,设置 Xtal 为 11.0592MHz,设置 Eprom 的 Start 值为 0x2000,设置 Eprom 的 Size 值为 0x5f00,设置 Ram 的 Start 值为 0x0000,设置 Ram 的 Size 值为 0x2000。

5.

切换到 C51 页,设置 Interrupt vector 起始地址为 0x2000。

6.

切换到 Debug 页,调节器试工具选择 Keil Monitor-51 Driver 。点击右侧的“Settings”按钮,选择连接实板的串口号,设置 Baudrate 为 9600。选中 Restore Debug Session Settings 栏目中的各个选项。点击“确认”按钮。

7.

在项目管理窗口的 Files 页中,选中 Target 1 下的 Source Group 1,点击右键。在弹出菜单上,点击 Add Files to Group 'Source Group 1' 命令,将 D:\mon51 下的 STARTUP.A51 文件加入到该组中。

8.

在项目管理窗口的 Files 页中,选中 Target 1 ,点击右键。在弹出菜单上,点击 Rebuild Target 命令,重新编译该工程。

9.

按一下实验板上的 Reset 按钮,使其复位。在 Debug 菜单下,点击 Start/Stop Debug Session 命令,进入调试界面。

10.

在命令行窗口输入 pc = 0x2000 命令,调整 pc 使其指向用户程序入口。

11.

打开 demo.c 文件,将光标移到第 46 行(TMOD |= 0x01; 这一行),点击右键。在弹出菜单中,点击 Insert/Remove Breakpoint 命令,在这一行加上断点。

12.

使用同样的方法,分别在第 55 行、第 62 行加上断点。

13.

按 F5 键,程序开始执行,并停到第 46 行。

14.

再按 F5 键,程序执行,并停到第 55 行。连续按 F5 键,光标在第 55 行和第 62 行之间跳跃,从实验板的数码管上可以看到执行效果。

F11 键是 step 功能键,F10 键是 step over 功能键,可以尝试其效果。各个变量也可加入到 Watch 窗口里,观察其值的变化。更多的仿真、调试功能,参见 keil C51使用手册




管理员信箱: stonewayqi@hotmail.com

欣 欣 学 习 网

粤ICP备2023138008号