Part10-C语言环境初始化-Bss段初始化lesson2

发布者:phi31最新更新时间:2024-10-14 来源: cnblogs关键字:初始化  Bss段初始化 手机看文章 扫描二维码
随时随地手机看文章

1、BSS段的作用

初始化的全局变量存放在数据段;

局部变量存放在栈中;

malloc的存放在堆;

未初始化的全局变量存放在BSS段;

找到bss段的起始与结束地址,往里面添加0,便初始化好了。

打开连接器脚本


关键字:初始化  Bss段初始化 引用地址:Part10-C语言环境初始化-Bss段初始化lesson2

上一篇:Part10-C语言环境初始化-栈初始化lesson1
下一篇:Part10-C语言环境初始化-一跃进入C大门lesson3

推荐阅读最新更新时间:2024-11-06 10:29

初始化(时钟初始化/内存初始化/steppingstone to SDRAM/bss初始化)
1. 时钟初始化 1.1 时钟初始化分析 1)晶振频率 2)有几个PLL 3)PLL会产生那些时钟 4)产生的时钟是干什么的 eg: S3C2440: 1)晶振12MHz    2)有MPLL、UPLL 3)MPLL产生FCLK、HCLK、PCLK UPLL产生UCLK 4) S3C6410: 1)晶振12MHz 2)有APLL、MPLL、EPLL 3)APLL产生ARMCLK MPLL产生HCLKx2、HCLK、PCLK、CLKJPEG、CLKSECUP EPLL产生CLKUART、CLK
[单片机]
<font color='red'>初始化</font>(时钟<font color='red'>初始化</font>/内存<font color='red'>初始化</font>/steppingstone to SDRAM/<font color='red'>bss</font><font color='red'>段</font><font color='red'>初始化</font>)
ARM-bootloader-C语言环境设计
一、栈初始化 1、概念解析 1.1栈 栈是一种具有后进先出性质的数据组织方式,也就是说后存放的先取出,先存放的后取出。栈底是第一个进栈的数据所处的位置,栈顶是最后进栈数据所处的位置。 1.2满栈和空栈 根据SP指针指向的位置,栈可以分为满栈和空栈。 1、满栈:当堆栈指针SP总是指向最后压入堆栈的数据 2、空栈:当堆栈指针SP总是指向下一个将要放入数据的空位置 ARM采用的是满栈 1.3、升/降栈 1、升栈:随着数据的入栈,SP指针从低地址- 高地址移动 2、降栈:随着数据的入栈,SP指针从高地址- 低地址移动 ARM采用的是降栈。有时候我们会说ARM采用的是满降栈。 1.4、栈帧
[单片机]
ARM-bootloader-<font color='red'>C语言</font><font color='red'>环境</font>设计
基于S3C6410的ARM11学习(十一) DDR初始化
之前的程序都是在内部的stepping stone中运行的。但是stepping stone的大小是很小的。ARM11只有8K的大小。这么小的空间,要运行大型程序肯定是不行的。所以就需要外部的存储器。ARM11的外部存储器用的是ddr。所以就要对ddr进行初始化,同时将代码拷贝到ddr中。 先看看S3C6410以nandflash的启动。在上电的时候,CPU会自动把外部的nandflash的前8k数据拷贝到内部的stepping stone中。Stepping stone的地址是从0x0c000000开始的。然后CPU将stepping stone给映射到0x00000000地址处,然后CPU跳转到0地址处执行第一条代
[单片机]
基于S3C6410的ARM11学习(十一) DDR<font color='red'>初始化</font>
STM32串口协议概念及结构体初始化详解+串口点灯+串口收发
一、串口通信协议简介 物理层:规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。其实就是硬件部分。 协议层:协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。其实就是软件部分。 1.RS232标准 2.USB转串口 3.原生的串口到串口 二、初始化结构体解 1.USART初始化结构体 2.同步时钟初始化结构体 3.编程时需要用到的固件库函数 三、串口点灯代码实现 1.USART .C文件 #include bsp_usart.h void USART_Config(void) { GPIO_InitTypeDef GPIO_InitStructure;
[单片机]
STM32串口协议概念及结构体<font color='red'>初始化</font>详解+串口点灯+串口收发
25.核心初始化之中断屏蔽-210
在210中屏蔽中断的机制和6410是一样的。而且两者都是向量中断,很多中断都是硬件实现的,不像2440。 但是在210中的中断屏蔽寄存器有4个: 四组屏蔽寄存器的地址: 所以屏蔽中断就是把上面的四个屏蔽寄存器设置为全1,设置为0仍是没有影响。 代码实现: 编译:
[单片机]
25.核心<font color='red'>初始化</font>之中断屏蔽-210
工程师笔记|STM32H7双核CM4作为Master初始化系统
STM32H7双核单片机内部集成了CM7和CM4这两个内核,在目前官方提供的例程中,大都是使用CM7作为Master初始化系统时钟,然后通过释放硬件信号量HSEM唤醒CM4,那么是否可以将CM7与CM4的角色互换,让CM4作为Master去初始化系统时钟呢? 答案肯定是可以的 可行的方案分析 方案一 目前官方提供的例程路径如下,可以使得D2域的CM4进行系统时钟的初始化: ……STM32CubeRepositorySTM32Cube_FW_H7_V1.9.0ProjectsSTM32H747I-EVALExamplesPWRPWR_D2ON_D1OFFEWARM 但是通过查看对应项目工程的readme.txt文件,发现:
[单片机]
s3c6410_时钟初始化
参考: 1)《USER'S MANUAL-S3C6410X》第三章 SYSTEM CONTROLLER 2)u-boot/board/samsumg/smdk6410/lowlevel_init.S 1. PLL与CLK的关系: 详细关系图见用户手册122页Figure 3-2 The block diagram of clock generator。 三种PLL:APLL,MPLL,EPLL 四种CLK:ACLK,HCLK,PCLK 1)APLL产生ACLK,,ACLK为CPU提供时钟; 2)同步模式下APLL产生HCLK/PCLK,异步模式下MPLL产生HCLK/PCLK,HCLK为AXI/AHB总线上的外设提供时钟,
[单片机]
s3c6410_时钟<font color='red'>初始化</font>
STM32入门系列-STM32时钟系统,时钟初始化配置函数
在前面推文的介绍中,我们知道STM32系统复位后首先进入SystemInit函数进行时钟的设置,然后进入主函数main。那么我们就来看下SystemInit()函数到底做了哪些操作,首先打开我们前面使用库函数编写的LED程序,在system_stm32f10x.c文件中可以找到SystemInit()函数,SystemInit()代码如下: void SystemInit (void) { /* Reset the RCC clock configuration to the default reset state(for debug purpose) */ /* Set HSION bit */ RCC- CR |= (ui
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved