欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > PDF文档下载
    分享到微信 分享到微博 分享到QQ空间

    STM启动代码分析简化实战.pdf

    • 资源ID:3209679       资源大小:486.89KB        全文页数:19页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    STM启动代码分析简化实战.pdf

    1、本文通过对 STM32 的官方固件库STM32F10 x_StdPeriph_Lib_V3.5.0 里的 MDK 启动文件分析,简化部分不需要的代码,并从繁杂的固件库里,精炼出一个类似于“hello world”的入门实战小程序点亮一个 LED。该工程仅仅包含一个启动文件和一个有 main 函数的 C 文件。本文初衷:不用固件库不用固件库建立自己的工程建立自己的工程!实验软件:Keil uVision4 实验硬件:神舟 IV号开发板 芯片型号:STM32F107VC STM32 启动代码启动代码分析分析、简化简化、实战实战 汇编基础汇编基础:1.伪指令伪指令:EQU 语法格式:名称 EQU 表

    2、达式,类型 EQU 伪指令用于为程序中的常量、标号等定义一个等效的字符名称,类似于 C 语言的#define。其中 EQU 可以用“*”代替。名称为 EQU 伪指令定义的字符名称,当表达式为 32 位的常量时,可以指定表达式的数据类型,可以有一下三种类型:CODE16、CODE32 和 DA TA 2.伪指令伪指令:AREA 语法格式:AREA 段名,属性 1,属性 2 AREA 命令指示汇编程序汇编一个新的代码段或数据段。段是独立的、指定的、不可见的代码或数据块,它们由链接程序处理。段名:可以为段选择任何段名。但是,以一个数字开始的名称必须包含在竖杠号内,否则会产生一个缺失段名错误。例如,|

    3、1_DataArea|。有些名称是习惯性的名称。例如:|.text|用于表示由 C 编译程序产生的代码段,或用于以某种方式与 C 库关联的代码段。属性字段表示该代码段(或数据段)的相关属性,多个属性用逗号分隔。常用的属性如下:CODE 属性:用于定义代码段,默认为 READONLY。DA TA 属性:用于定义数据段,默认为 READWRITE。READONLY 属性:指定本段为只读,代码段默认为 READONLY。READWRITE 属性:指定本段为可读可写,数据段的默认属性为 READWRITE。ALIGN 属性:使用方式为 ALIGN 表达式。在默认时,ELF(可执行连接文件)的代码段和数

    4、据段是按字对齐的,表达式的取值范围为 031,相应的对齐方式为 2 表达式次方。NOINIT 属性:表示数据段是未初始化的或初始化为零。其只包含零初始化的空间保留命令 SPACE 或 DCB、DCD、DCDU、DCQ、DCQU、DCW 或 DCWU。可以决定在链接时AREA 是未初始化的还是零初始化的。一个汇编语言程序至少要包含一个段,当程序太长时,也可以将程序分为多个代码段和数据段。3.伪指令伪指令:SPACE 用于分配一片连续的存储单元 启动代码启动代码分析分析:定义栈定义栈段段,不初始化,不初始化 栈名:STACK 大小:Stack_Size 只分配空间不做初始化或者初始化为 0:NOI

    5、NIT 可读可写:READWRITE:按 8 字节对齐:ALIGN3 栈顶地址:_initial_sp Stack_Size EQU 0 x00000400 AREA STACK,NOINIT,READWRITE,ALIGN=3 Stack_Mem SPACE Stack_Size _initial_sp 定义堆定义堆段段,不初始化,不初始化 堆名:HEAP 大小:Heap_Size 只分配空间不做初始化或者初始化为 0:NOINIT 可读可写:READWRITE:按 8 字节对齐:ALIGN3 堆起始地址:_heap_base 堆终止地址:_heap_limit Heap_Size EQU

    6、0 x00000200 AREA HEAP,NOINIT,READWRITE,ALIGN=3 _heap_base Heap_Mem SPACE Heap_Size _heap_limit 4.伪指令伪指令:EXPORT 语法格式:EXPORT 标号WEAK EXPORT 伪指令用于在程序中声明一个全局的标号,该标号可在其他的文件中引用。EXPORT 可用 GLOBAL 代替。标号在程序中区分大小写,WEAK选项声明其他的同名标号优先于该标号被引用。5.伪指令伪指令:DCD 语法格式:DCD(或 DCDU)表达式 DCD(或 DCDU)伪指令用于分配一片连续的字存储单元并用伪指令中指定的表达式

    7、初始化。其中,表达式可以为程序标号或数字表达式。DCD 也可用“&”代替。用 DCD 分配的字存储单元是字对齐的,而用 DCDU 分配的字存储单元并不严格字对齐。PRESERVE8 ;指示编译器 8 字节对齐(keil 编译器时需要加上)THUMB ;指示编译器为 THUMB指令 定义复位定义复位段段(中断向量表)(中断向量表),并初始化,并初始化 段名:RESET 大小:_V ectors_Size 数据段:DA TA 只读:READONLY 按字节对齐:默认 ALIGN 向量表起始地址:_V ectors 向量表终止地址:_V ectors_End AREA RESET,DA TA,REA

    8、DONLY EXPORT _V ectors EXPORT _V ectors_End EXPORT _V ectors_Size _V ectors DCD _initial_sp ;Top of Stack DCD Reset_Handler ;Reset Handler DCD NMI_Handler ;NMI Handler DCD HardFault_Handler ;Hard Fault Handler DCD MemManage_Handler ;MPU Fault Handler DCD BusFault_Handler ;Bus Fault Handler DCD Usage

    9、Fault_Handler ;Usage Fault Handler DCD 0 ;Reserved DCD 0 ;Reserved DCD 0 ;Reserved DCD 0 ;Reserved DCD SVC_Handler ;SVCall Handler DCD DebugMon_Handler ;Debug Monitor Handler DCD 0 ;Reserved DCD PendSV_Handler ;PendSV Handler DCD SysTick_Handler ;SysTick Handler ;External Interrupts DCD WWDG_IRQHand

    10、ler ;Window Watchdog DCD PVD_IRQHandler ;PVD through EXTI Line detect DCD TAMPER_IRQHandler ;Tamper DCD RTC_IRQHandler ;RTC DCD FLASH_IRQHandler ;Flash DCD RCC_IRQHandler ;RCC DCD EXTI0_IRQHandler ;EXTI Line 0 DCD EXTI1_IRQHandler ;EXTI Line 1 DCD EXTI2_IRQHandler ;EXTI Line 2 DCD EXTI3_IRQHandler ;

    11、EXTI Line 3 DCD EXTI4_IRQHandler ;EXTI Line 4 DCD DMA1_Channel1_IRQHandler ;DMA1 Channel 1 DCD DMA1_Channel2_IRQHandler ;DMA1 Channel 2 DCD DMA1_Channel3_IRQHandler ;DMA1 Channel 3 DCD DMA1_Channel4_IRQHandler ;DMA1 Channel 4 DCD DMA1_Channel5_IRQHandler ;DMA1 Channel 5 DCD DMA1_Channel6_IRQHandler

    12、;DMA1 Channel 6 DCD DMA1_Channel7_IRQHandler ;DMA1 Channel 7 DCD ADC1_2_IRQHandler ;ADC1 and ADC2 DCD CAN1_TX_IRQHandler ;CAN1 TX DCD CAN1_RX0_IRQHandler ;CAN1 RX0 DCD CAN1_RX1_IRQHandler ;CAN1 RX1 DCD CAN1_SCE_IRQHandler ;CAN1 SCE DCD EXTI9_5_IRQHandler ;EXTI Line 9.5 DCD TIM1_BRK_IRQHandler ;TIM1

    13、Break DCD TIM1_UP_IRQHandler ;TIM1 Update DCD TIM1_TRG_COM_IRQHandler;TIM1 Trigger and Commutation DCD TIM1_CC_IRQHandler ;TIM1 Capture Compare DCD TIM2_IRQHandler ;TIM2 DCD TIM3_IRQHandler ;TIM3 DCD TIM4_IRQHandler ;TIM4 DCD I2C1_EV_IRQHandler ;I2C1 Event DCD I2C1_ER_IRQHandler ;I2C1 Error DCD I2C2

    14、_EV_IRQHandler ;I2C2 Event DCD I2C2_ER_IRQHandler ;I2C1 Error DCD SPI1_IRQHandler ;SPI1 DCD SPI2_IRQHandler ;SPI2 DCD USART1_IRQHandler ;USART1 DCD USART2_IRQHandler ;USART2 DCD USART3_IRQHandler ;USART3 DCD EXTI15_10_IRQHandler ;EXTI Line 15.10 DCD RTCAlarm_IRQHandler ;RTC alarm through EXTI line D

    15、CD OTG_FS_WKUP_IRQHandler ;USB OTG FS DCD 0 ;Reserved DCD 0 ;Reserved DCD 0 ;Reserved DCD 0 ;Reserved DCD 0 ;Reserved DCD 0 ;Reserved DCD 0 ;Reserved DCD TIM5_IRQHandler ;TIM5 DCD SPI3_IRQHandler ;SPI3 DCD UART4_IRQHandler ;UART4 DCD UART5_IRQHandler ;UART5 DCD TIM6_IRQHandler ;TIM6 DCD TIM7_IRQHand

    16、ler ;TIM7 DCD DMA2_Channel1_IRQHandler ;DMA2 Channel1 DCD DMA2_Channel2_IRQHandler ;DMA2 Channel2 DCD DMA2_Channel3_IRQHandler ;DMA2 Channel3 DCD DMA2_Channel4_IRQHandler ;DMA2 Channel4 DCD DMA2_Channel5_IRQHandler ;DMA2 Channel5 DCD ETH_IRQHandler ;Ethernet DCD ETH_WKUP_IRQHandler ;Ethernet Wakeup through EXTI line DCD CAN2_TX_IRQHandler ;CAN2 TX DCD CAN2_RX0_IRQHandler ;CAN2 RX0 DCD CAN2_RX1_IRQHandler ;CAN2 RX1 DCD CAN2_SCE_IRQHandler ;CAN2 SCE DCD OTG_FS_IRQHandler ;USB OTG FS _V ectors_End


    注意事项

    本文(STM启动代码分析简化实战.pdf)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开