资讯专栏INFORMATION COLUMN

基于MDK创建STM32汇编语言工程——上机实验一(9527)

joy968 / 3345人阅读

摘要:设置下面的项为和项为,用于设置支持的软硬件仿真。如有错误,请斧正。参考文献基于创建汇编语言工程并分析

1新建工程


1.设置工程路径
2.设置名称,用first
3.保存

2配置环境

设置工程得目标环境,STM32F103ZE,如下,保存即可

选择运行环境,如下
1.CMSIS下选择CORE
2.Device下选择Startup

添加源文件
选择Asm File (.s)
设置源文件名称
保存
如下所示


添加源代码

3测试代码

仿真器设置
在“Debug”选项卡中选择“Use Simulator”,表示使用软件仿真;选择“Run to main()”则表示跳过汇编代码,直接跳转到main函数开始仿真。设置下面的“Dialog DLL”项为“DARMSTM.DLL”和“TARMSTM.DLL”;parameter项为“-pSTM32F103C8”,用于设置支持STM32F103C8的软硬件仿真。如下:

编译调试

结果符合预期,寄存器R5,R6,R7,R8的值与程序设置一致

4分析生成的HEX文件

用记事本打开hex文件,是一串十六进制字符

1.扩展线性地址记录(hex 文件的第一排十六进制)也叫作 32 位地址记录或 HEX386 记录
这些记录包含数据地址的高 16 位,扩展线性地址记录总是有两个数据字节,外观如下

当一个扩展线性地址记录被读取,存储于数据域的扩展线性地址被保存,它被应用于从 Intel HEX 文件读取来的随后的记录
线性地址保持有效,直到它被另外一个扩展地址记录所改变
通过把记录当中的地址域与被移位的来自扩展线性地址记录的地址数据相加获得数据记录的绝对存储器地址
2.数据部分
Intel HEX 由任意数量的十六进制记录组成。每个记录包含 5 个域,它们按一定格式排列::llaaaatt[dd…]cc
每一组字母对应一个不同的域,每一个字母对应一个十六进制编码的数字
每一个域由至少两个十六进制编码数字组成,它们构成一个字节,就像以下描述的那样:

3.文件尾
在文件的最后一排,是一个文件的结束标志:

5总结

从最开始的软件装机,到正式实验时还没有完成stm的工作环境的安装,在老师的提醒下,开始正常实验的进行,在实验过程中还有许多不懂的地方,编译了几次,与实验结果不符,问题出在设置仿真器的模式上,在老师的指导下,终于完成本次实验,虽然过程艰辛,但是成功的喜悦更值得去体会,也了解到了编程的学习需要实践。如有错误,请斧正。

6参考文献

基于 MDK 创建 STM32 汇编语言工程并分析 HEX

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/121478.html

相关文章

  • 基于STM32汇编程序

    摘要:编写汇编程序编译并调试程序编译程序右键工程点击,或点击红色小方框标记出的魔法棒在下勾选以创建文件或点击,我们可以观察到文件的生成在下勾选因为我们这里仅使用软件仿真,勾选。更改项为和项为,用于设置支持的软硬件仿真。 ...

    RancherLabs 评论0 收藏0
  • 基于STM32Cube MX开发的TencentOS-Tiny软件包

    摘要:基于开发的软件包导师汪礼超学员崔林威摘要腾讯物联网操作系统是腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,可裁剪等特性。图中断函数处理进行生成工程配置,按如下界面进行配置,最后点击,并点击。 ...

    shiyang6017 评论0 收藏0
  • 【沁恒CH32学习】——RISC-V架构学习笔记

    摘要:我首先百度简单了解了架构和架构的区别,以我个人的理解是架构代表之前的复杂指令集,而架构代表着精简指令集。而我这次的学习的重点并不是围绕着指令集,而是基于架构的开发板的应用上。以上就是我本次学习架构的笔记和心路历程。 作为新手第一次接触RISC-V架构时。我首先百度简单了解了ARM架构和RIS...

    nihao 评论0 收藏0
  • STM32CubeMX学习教程之硬件I2C读取光照度

    摘要:使用库读写环境光照度传感器本文将教大家如何快速使用库读取光照度数据。五实验样机测试展示通过之前配置好的面板,通过涂鸦智能进行配网实时采集光照度传感器的数据。 使用STM32 HAL库读写环境光照度传感器(BH1750) 本文将教大家如何快速使用STM32HAL库读取光照度数据。 实现功能:通...

    tinylcy 评论0 收藏0
  • STM32】标准库与HAL库对照学习教程八--串口通信详解

    摘要:异步通信与同步通信异步通信异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。同步通信同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步。配置串口设置为异步通信基础参数波特率为。 ...

    yck 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<