瑞萨32位芯片开发预备知识

嵌入式单片机工作基本原理:

        系统工作原理CPU要进行指令执行、数据处理、外设控制,首先要做的就是从Code Flash中取出指令,然后执行指令,如果指令的执行有中间变量,就要在RAM中保存,执行完后要去控制外设来完成特定的功能。

系统启动流程:

        1)电源上电/复位脚复位

        2.1)从地址0x0000 0000处取出堆栈指针MSP的初始值(初始值是栈顶地址)

        2.2)从地址0x0000 0004处取出程序计数器指针PC的初始值(初始值是复位向量)

        3)设置堆栈大小

        4)初始化中断向量表(_Vector 定义)

        5)调用初始化函数(非必须,例如systeminit)

        6)调用__main.C文件[__main()文件里面有main()函数]

注1:不同芯片厂会将0x0000 0000和0x0000 0004地址映射到不同地址上,根据映射地址的来源可分为不同启动模式(启动模式又称为自举模式)

注2:0x0000 0000和0x0000 0004相差4个字节,是由ECU同时处理的位所决定,32位单片机最多处理32位,即4个字节。

堆栈简介:

       栈(Stack) 编译器自动分配和释放,存放函数参数、局部变量

       堆(Heap) 程序员分配和释放,如malloc、calloc、ralloer等(若不使用这些函数,则可以不分配)

内存大小与地址的对应关系以及计算方法

        参见https://blog.csdn.net/ace_shiyuan/article/details/78203805

        特别注意:

               1) 在计算机中,一个地址,代表一个字节(1Byte)

                2)我们常说的8位机、16位机、32位机、64位机,指的是地址的长度。

Memory map type

        1).text  

                代码段(code segment/text segment)通常是指用来存放程序执行代码的一块内存区域。这部分区域的大小在程序运行前就已经确定,并且内存区域通常属于只读(某些架构也允许代码段为可写,即允许修改程序)。

                注:在代码段中,也有可能包含一些只读的常数变量,例如字符串常量等。

        2).bss

                bss是英文Block Started by Symbol的简称,通常是指用来存放程序中未初始化的全局变量未初始化的静态变量内存区域。

          bss段属于静态内存分配。       

        3)  .const

                常量,它用来存放常量(const)。

                const段属于静态内存分配。  

        4)  .data

                数据段(data segment)通常是指用来存放程序中已初始化的全局变量已初始化静态变量(static)的一块内存区域。

              数据段属于静态内存分配。 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
瑞萨RH850系列是一种高性能的汽车电子控制器微控制器单元(MCU),广泛应用于汽车领域的电子控制系统中。RH850的驱动代码是指用于控制和驱动外设的软件代码。 瑞萨RH850的驱动代码包括了各种外设的操作函数和驱动库。这些外设包括但不限于GPIO(通用输入输出)、CAN(控制器局域网络)、SPI(串行外设接口)、UART(通用异步收发传输器)、ADC(模数转换器)等。 开发者可以根据具体的应用需求,使用瑞萨提供的开发工具和驱动代码进行开发开发者可以根据自己所需的外设功能和性能要求,在驱动代码中调用相应的API函数来控制外设。 瑞萨RH850的驱动代码遵循标准的嵌入式系统开发流程,包括配置、初始化、操作和关闭等步骤。开发者可以根据实际需求对驱动代码进行配置和初始化,然后使用相应的API函数进行操作和控制外设,最后可以关闭相关外设以释放资源。 瑞萨RH850的驱动代码具有良好的可移植性和可扩展性,可以在不同平台和环境下使用,并且可以根据实际需求进行自定义扩展。开发者可以根据自己的系统需求和技术要求,对驱动代码进行修改和优化,以达到更好的性能和功能。 总之,瑞萨RH850的驱动代码是用于控制和驱动外设的软件代码,开发者可以根据自己的需求进行配置、初始化、操作和关闭等操作,以实现所需的功能和性能。这些代码具有良好的可移植性和可扩展性,可以在不同平台和环境下使用,并且可以进行自定义修改和优化。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值