使用C语言访问51单片机中存储器的核心代码怎么写(c语言,开发技术)

时间:2024-05-08 21:59:58 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    %E4%BD%BF%E7%94%A8C%E8%AF%AD%E8%A8%80%E8%AE%BF%E9%97%AE51%E5%8D%95%E7%89%87%E6%9C%BA%E4%B8%AD%E5%AD%98%E5%82%A8%E5%99%A8%E7%9A%84%E6%A0%B8%E5%BF%83%E4%BB%A3%E7%A0%81%E6%80%8E%E4%B9%88%E5%86%99

在Keil C51工程中 #include <absacc.h> ,可以直接使用CBYTE, XBYTE, DBYTE, PBYTE

absacc.h 的部分内容如下:

code data pdata xdata 均为存储器类型,下节将详叙,此处用T替代:

unsigned char volatile T * 为指向存储器T中无符号整型数的指针类型
((unsigned char volatile T * ) 0) 对0做强制类型转换

code data pdata xdata均为存储器类型

code:用于存储常数和函数,使用16位地址访问,可位于片内或片外

ROMdata:用于存储变量,使用8位地址,位于片内RAMp

data:用于存储变量,使用8位地址,位于片外RAMx

data:用于存储变量,使用16位地址,位于片外RAM

3.CBYTE、DBYTE、PBYTE和XBYTE的区别

注意:以下存储地址范围均指理论上可访问的最大范围,具体操作时需根据存储器大小调整
从存储器类型的区别中可以得出本节四者的区别:

CBYTE

CBYTE 是用于访问代码存储器的,即ROM部分。

其中代码存储器地址(adress)范围是 0X0000--0xFFFF ,大小为16K。

DBYTE

DBYTE 是用于访问片内数据存储器的,即片内RAM部分,

其中片内存储器地址(adress)范围是 0x00--0xFF ,大小为256byte。

XBYTE

XBYTE 是用于访问片外数据存储器的,即片外RAM部分,但是XBYTE只能读数据不能写数据到片外RAM。

片外数据存储器的写可以使用下面这条语句:

地址范围为 0x0000--0xFFFF,大小为16K。

PBYTE

PBYTE也用来访问扩展ram,但只能访问开始的256字节。

上节所述四者为单字节访问,对应双字节访问使用CWORD、DWORD、XWORD和PWORD。

本文:使用C语言访问51单片机中存储器的核心代码怎么写的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:C语言的基本编写规范是什么下一篇:

11 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18