keil软件使用和数据区传送

2023-12-28 13:05:49

一、实验目的:

1、掌握keil软件下编写、编译、调试C51程序的方法;

2、掌握片内RAM和片外RAM的数据传送操作

二、实验内容??

在keil中编写C51程序,在外部数据存储器从地址100H单元开始存入10条字节型随机数据,再传输到内部数据存储器从地址30H开始的10个存储单元中。

要求:采用两种方法。

提示:一种方法是使用XBYTE、DBYTE等宏指令;另一种方式是使用关键字? _at_?。?

三、要求,按照以下步骤,逐一介绍

1、新建一个文件夹,同一个项目的所有文件都存储在这一个文件夹内。

2、打开keil uv4软件,new一个project,为该project取一个有意义的名字,并存储于上述文件夹中。

3、选择目标cpu为at89c51

4、新建一个文件,在编辑区编写C51代码,存储为.c格式的文件。

5、将该.c添加进刚才的project里。

6、编译,并查看编译提示信息,根据提示信息调试程序,直至没有error信息。

7、在“target options”的output标签里,勾选“creat HEX file”,使得编译输出.hex文件。

8、调试运行:以单步方式运行程序,在memory里查看各存储单元值的变化情况。(输入地址的格式为:存储器符号:?地址,如d:30h,x:0100h,c:0100h等,其中d、x、c分别是内部数据存储器、外部数据存储器、程序存储器的符号。)

#define uint unsigned int
xdata char ss[10] _at_ 0x100;
data char dd[10] _at_ 0x30;
xdata char ss[10]={1,3,5,7,9,0,2,4,6,8};
void main()
{
uint n;
for(n=0;n<10;n++)
dd[n]=ss[n];
}

私信可获得完整项目?

文章来源:https://blog.csdn.net/weixin_65544554/article/details/135266077
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。