c语言报错e0028表达式必须含有常量值,Keil C51 软件使用方法(第八章)

本文详细介绍了Keil C51软件的使用方法,包括主窗口、调试窗口、命令窗口等多个功能,并着重讲解了如何处理c语言报错e0028,即表达式必须含有常量值的问题。同时,提供了dScope for Windows的基本操作,如观察变量、中断处理、性能分析等,以及命令文件的编制,帮助开发者更好地调试和优化代码。
摘要由CSDN通过智能技术生成

第一节概述

1. 主窗口(Mainframe Window)

可设置其它各种调试窗口,设置断点、观察点,修改地址空间,加载文件等等;

2. 调试窗口(DEBUG Window)

支持用户程序的各种显示方式,可连续运行,单步运行用户程序,并可在线 汇编;

3. 命令窗口(Command Window)

支持命令行的输入;

4. 观察窗口(Watch Window)

可设置所要观察的变量、表达式等;

5. 寄存器窗口(Registe Window)

显示内部寄存器的内容,程序运行次数等;

6. 串口窗口(SerICal Windows)

显示串口接收和发送的数据;

7. 性能分析窗口

显示所要观察的各程序段占用CPU的空间;

8. 内存窗口(Memory Window)

显示所选择的内存中的数据;

9. 符号浏览窗口(Symbol Browser Window)

显示各种符号名称,包括专有符号,用户自定义符号(函数名、变量、标号)等;

10. 调用线窗口(Call-Stack Window)

动态显示当前执行的程序段的函数调用关系;

11. 代码覆盖窗口

提供当前模块内各程序段中被执行代码的比率;。

12. 外围设备窗口(peripherals)

可显示I/O口,定时器,中断,串口等外围设备状态;

第二节dScope for Windows基本操作

1. 指定初始化文件

在uVision的Option菜单dScope Debugger中指定dScope的初始化文件,用uVision的RUN启动dScope将自动加载此初始化文件,自动执行其中命令;

下面是一个例子,可以看出调入一个调试代码的过程。Ds51.ini:

load 8051.dll

load test

slog>>test.log

xtal=11.0592

define button "go to main","g,main"

ws RevCounter

ws rm.r

g,main

PA RESET

PA serial

PA timer0

2. 观察变量

方法1:命令行

WS expression [, numberbase ] [ LINE ]

其中numberbase为显示数制,10对应10进制,16对应16进制,缺省为16进制。LINE为单行显示,缺省为多行显示。

方法2:setup->Watchpoints,在对话框中输入变量

3. 显示RAM的值

d i(x,d):起始地址,终止地址

d 变量名

4. 观察堆栈

View->Call-stack->Show inVOCation,可以跟踪调用过程;

5. 中断处理程序调试

在装入8051.dll后,在dScope的主菜单中将增加Peripherial,其有4个字菜单:

I/0 port:Pi端口状态

Interrupt:中断设置

Timer:定时器中断状态

Serial:串口中断状态

设置相应的中断请求标志位即可产生中断。

6. 性能分析(Performance Analyzer:PA)

PA用来分析一段代码执行占用CPU的百分比。定义:

命令行 PA func_name

第三节dScope for Windows命令文件的编制

dScope除了用命令行的方式进行调试以外,还可将各种调试命令汇集于一个调试文件中,然后调用该文件,就可达到自动测试用户源代码的目的。dScope的命令文件支持C/PL/M的格式,因而编制调试命令文件与编制C语言程序有些类似。

1. 地址空间及地址空间类型

(1) 地址空间分段

dScope提供的最大可用空间为16M,实际上我们只用以下三段:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值