正在加载图片...
Kei软件实例教程(四) NEXT MOV RO.#55H JMP LOOP NEXT: MOV RO#OAAH JMP LOOP END 该程序从P1口获得数据,如果P1口的值是0,那么就让R0的值为0AAH,否则让R0 的值为55H。输入源程序并建立工程,进入调试后,在观察窗口加入RO,然后全速运行程 序,注意确保View-> Periodic Window Updata处于选中状态,然后在 Command后输入 PORT1=0回车后可以发现观察窗口中的R0的值变成了0AAH,然后再输入PORT1=1或其 它非零值,则R0的值会变为55H 同样的道理,可以用poro、port2、port3分别向端口0、2、3输入信号 3、直接更改内存值 在程序运行中,另一种输入数据的方法是直接更改相应的内存单元的值,例如,某数据 采集程序,使用30H和3H作为存储单元,采入的数据由这两个单元保存,那么我们更改 了30H和31H单元的值就相当于这个数据采集程序采集到了数据,这可以在内存窗口中直 接修改(参考上一讲),也可以通过命令进行修改,命令的形式是: WBYTE(地址数据), 其中地址是指待写入内存单元的地址,而数据则是待写入该地址的数据。例如 WBYTE(0x30,11)会将值11写入内存地址十六进制30H单元中Keil 软件实例教程(四) JZ NEXT MOV R0,#55H JMP LOOP NEXT: MOV R0,#0AAH JMP LOOP END 该程序从 P1 口获得数据,如果 P1 口的值是 0,那么就让 R0 的值为 0AAH,否则让 R0 的值为 55H。输入源程序并建立工程,进入调试后,在观察窗口加入 R0,然后全速运行程 序,注意确保 View->Periodic Window Updata 处于选中状态,然后在 Command 后输入 PORT1=0 回车后可以发现观察窗口中的 R0 的值变成了 0AAH,然后再输入 PORT1=1 或其 它非零值,则 R0 的值会变为 55H。 同样的道理,可以用 port0、port2、port3 分别向端口 0、2、3 输入信号。 3、直接更改内存值 在程序运行中,另一种输入数据的方法是直接更改相应的内存单元的值,例如,某数据 采集程序,使用 30H 和 31H 作为存储单元,采入的数据由这两个单元保存,那么我们更改 了 30H 和 31H 单元的值就相当于这个数据采集程序采集到了数据,这可以在内存窗口中直 接修改(参考上一讲),也可以通过命令进行修改,命令的形式是: _WBYTE (地址,数据), 其中地址是指待写入内存单元的地址,而数据则是待写入该地址的数据。例如 _WBYTE(0x30,11)会将值 11 写入内存地址十六进制 30H 单元中
<<向上翻页
©2008-现在 cucdc.com 高等教育资讯网 版权所有