51单片机关于片内片外存储器的操作方法总结

一、

char addr,i;
addr=0x30; //起始地址
for(i=0;i<16;i++)
{
         *((char idata*)addr++)=i; //从起始地动址开始赋值
}
addr=0x30;

 

具体意思是:
首先addr自加一,因为++在变量后面,所以该表达式使用自加之前的值,比如第一次循环,表达式使用的addr是0x30.

第二步,将0x30强制转换为char idata类型指针。

第三步,解引用该指针,将i的值赋给该指针指向的地址

 

二、

char addr1,i;
addr = 0x2000;
addr1 = 0x30;  //片内,片外存储区首地址分别为30H、2000H
for(i=0;i<16;i++)  
{
      *((char xdata*)addr++) = i;   //给片外存储地址赋值

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 51单片机是一种常用的单片机,具有广泛的应用领域。了解51单片机的基础知识对于程序设计和硬件开发都非常重要。以下是一些常用的51单片机基础知识的汇总: 首先是51单片机的基本介绍。51单片机是一种8位微控制器,由Intel公司开发,采用哈佛结构,具有较低的功耗和成本。它具有存储器、输入输出端口、定时器和串口等功能。 其次是51单片机的主要特征。51单片机具有兼容性好、易于编程、存储地址空间较大、中断处理能力强和低功耗等特点。它还支持多种编程语言,如C语言和汇编语言。 然后是51单片机的基本组成。51单片机包括中央处理器、存储器、输入输出端口和定时器等基本部件。其中,中央处理器是控制和执行指令的核心部分,存储器用于存储数据和程序,输入输出端口用于与外部设备进行数据交互,定时器用于产生精确定时信号。 接下来是51单片机的编程方式。51单片机可以通过汇编语言或高级语言编程,如C语言。汇编语言编程可以直接控制硬件,但编写复杂,难以维护。而C语言编程相对简单,屏蔽了底层硬件细节,提高了代码的可读性和可维护性。 最后是51单片机的应用领域。由于51单片机具有成本低、功耗低和易于编程等特点,它被广泛应用于各种嵌入式系统中,如家电控制、工业控制、自动化设备和智能传感器等。 以上是51单片机常用基础知识的简要汇总,希望对您有所帮助。如果想了解更多详细内容,可以参考CSDN等相关技术论坛和教程。 ### 回答2: 51单片机是一种经典的典型的8位单片机,常用于嵌入式系统中。它的引脚多,功能丰富,易于学习和使用。以下是51单片机的一些基础知识汇总: 1. 架构和特点:51单片机采用哈佛结构,具有51个通用I/O引脚,具备外部中断、定时器/计数器、串行通信等多种功能。 2. 存储器:51单片机有4KB的片内RAM64KB的片内ROM,可以根据需求选择具体型号。 3. 编程语言:51单片机可以使用汇编语言进行编程,也支持C语言编程。C语言编程相比汇编语言更容易上手、快速开发。 4. 编程工具:有很多编程工具可供选择,如Keil C51、SDCC等。 5. 系统时钟:51单片机一般采用外部晶振提供时钟信号,也可以使用内部振荡器。时钟频率可以根据实际需求进行配置。 6. IO口功能:51单片机的I/O口具有多种功能,可作为通用输入输出口、定时器输入、中断触发等。 7. 中断控制:51单片机具有多级中断优先级控制功能,可以在需要时触发中断,并进行相应的中断服务程序的处理。 8. 定时器/计数器:51单片机具有2个16位定时器/计数器,可以用于产生精确的时间延迟、脉冲计数等功能。 9. 串口通信:51单片机内置UART,支持串行通信协议,如RS232、SPI、I2C等。 10. 程序存储方式:51单片机可以从片内ROM或者片外存储器中读取程序,也可以通过串口下载程序。 总的来说,51单片机作为一种经典的8位单片机,具有丰富的功能和强大的扩展性,学习和掌握这些基础知识对于嵌入式系统开发非常重要。 ### 回答3: CSND是一个知名的IT技术论坛,其中提供了关于51单片机常用基础知识的详细汇总。以下是一些常用的基础知识: 首先,51单片机是指英特尔公司推出的一种8位微控制器,其指令系统兼容Intel MCS-51系列。它具有低功耗、高集成度和强大的性能特点。 51单片机的常用编程语言是汇编语言和C语言。通过编程,可以实现对单片机的控制和管理。在编程语言的基础上,还需要了解单片机的指令系统、寄存器的使用方法和中断的处理等内容。 对于51单片机的IO口操作也是非常重要的基础知识。IO口包括输入和输出两种模式,可以通过设置和读取IO口的电平状态来实现与外部设备的通信。通过IO口操作,可以实现对LED灯、按键、液晶显示屏等外围设备的控制。 此外,了解定时器和计数器的使用也是51单片机常用的基础知识之一。定时器和计数器可以用于产生精确的时间延时、频率计数、脉冲计数等功能。它们可以被用来控制和监测系统中的各种事件。 对于中断的处理也是不可忽视的基础知识。中断是指在程序运行过程中,由硬件或软件发出的一种请求,要求CPU立即转去执行特定的处理程序。学习如何处理中断可以提高系统的实时性和可靠性。 除了以上几方面的基础知识外,还需要了解51单片机存储器结构、串行通信接口、蜂鸣器的使用、温度传感器的应用等。 在学习这些基础知识的过程中,不仅需要理解原理和概念,更重要的是通过实践来提高编程能力和解决问题的能力。希望上述的基础知识汇总能够帮助您在学习51单片机方面有所收获。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值