基于STM32从零写操作系统系列---熟悉纯windows交叉编译环境

发布者:科技独行者最新更新时间:2019-09-10 来源: eefocus关键字:STM32  操作系统系列-  windows  交叉编译环境 手机看文章 扫描二维码
随时随地手机看文章

目的:

熟悉在纯windows下的交叉编译环境,了解如何下载BIN格式的程序文件到单片机。


实验2:

一个简单的交叉编译与程序下载过程


环境搭建(以我的平台为例):

 


安装win7 32位,具体教程可百度

安装make和gcc-arm-none-eabi交叉编译工具,具体教程可百度

安装ST-Link Utility软件

在windows系统上安装编辑器,如notepad++

make,gcc-arm-none-eabi,ST-Link Utility软件已在百度云分享:

链接:https://pan.baidu.com/s/1DlzYMo8oZsnF9ammJuuZoQ 

提取码:dc5h 

具体实验过程:

1.在winows系统中新建一个文件夹,用作项目文件夹


2.打开编辑器(我的是notepad++),创建文件boot1.s。这段代码就实现了死循环,并没有什么实际用途,主要是练习如何下载BIN格式文件到单片机,代码如下:

3.创建文件Makefile,这是编译用的工程文件,用于编译boot1.s文件。划红线的地方与在linux系统中有所不同。Makefile教程,可以网上搜索或阅读Makefile文档。代码如下:


4.创建链接脚本ldboot1.ld。

5.在同一目录下,一共创建了3个文件如下

6.打开命令行窗口

7.通过在命令行中输入相关命令(百度可以查找),进入步骤1中创建的文件夹。

8.在当前命令行中输入make,编译代码,将会生成.bin文件

 9.打开ST-Link Utility软件,点击设置按钮具体设置如图1,连接单片机(单片机与电脑需要连接好和驱动需要安装好,打开单片机电源)。点击ok按钮后,如图2所示的信息。


图1

图2

10.下载bin文件到单片机,点击Target->Program & Verify,出现如下图的对话框。注意start address为0x08000000,即为flash的地址。确认File path是否是需要下载的文件。点击Start按钮。


 11.下载成功,如图

12.为了验证使用ST-Link Utility软件下载bin格式文件到stm32单片机后,程序是否可以运行,在本系列的第4篇文章将做一个点亮LED的实验。

关键字:STM32  操作系统系列-  windows  交叉编译环境 引用地址:基于STM32从零写操作系统系列---熟悉纯windows交叉编译环境

上一篇:基于STM32从零写操作系统系列---bootloader
下一篇:基于STM32从零写操作系统系列---熟悉win+linux交叉编译环境

推荐阅读最新更新时间:2024-11-10 12:41

stm32专题二十六:测量PWM 频率 + 占空比
实验的基本原理: 利用通用定时器产生4路占空比不同的PWM波形(频率100k,占空比0.5 0.4 0.3 0.2); 利用高级定时器的PWM输入模式来测量PWM参数; 有几个值得注意的地方: 捕获寄存器CCR1和CCR2的值在计算占空比和频率的时候必须加1; 计数周期不能设置的太小,如果我们设置的计数周期 PWM周期,那么就无法捕获PWM脉冲,一般驱动电机的PWM是10k ~ 25kHz,当设置的周期为1ms,对应频率为1kHz,那么就可以捕获1kHz以上的PWM 信号; 下面是测量pwm的代码: bsp_AdvanceTim.c #include bsp_AdvanceTim.h static void
[单片机]
<font color='red'>stm32</font>专题二十六:测量PWM 频率 + 占空比
stm32之GPIO_Remap_SWJ_Disable之后无法使用swd下载
说明:库文件版本:3.5.0 软件环境:iar for arm 在系统复位的时候默认是开启JTAG与swd的, 在点击下载后的2秒内按下复位键即可将程序下载进stm32 注意:在程序里边加入GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST,ENABLE); 来彻底解除限制,或用写寄存器的方式,SWG_CFG 写入000
[单片机]
IIC (STM32)
IIC(Inter-Integrated Circuit) 总线是一种由 PHILIPS 公司开发的 两线式串行总线 高速 IIC 总线一般可达 400kbps 以上。 IIC信号时序图 IIC 总线在传送数据过程中共有三种类型信号,开始信号、结束信号和应答信号。 开始信号: SCL 为高电平时,SDA 由高电平向低电平跳变,开始传送数据。 SCL = 1 SDA = 1 SDA = 0 结束信号: SCL 为高电平时,SDA 由低电平向高电平跳变,结束传送数据。 SCL = 1 SDA = 0 SDA = 1 应答信号: 每发送一个字节(8个bit),一个字节传输的8个时钟后的第九个时钟期间 接收
[单片机]
IIC (<font color='red'>STM32</font>)
STM32学习日志——光敏传感器实验
一、光敏二极管简介 光敏传感器是一种将光信号转换成电信号的传感器,光敏二极管的管芯是一个具有光敏特征的PN结,具有单向导电性,因此工作需加反向电压。当光照弱的时候,反向漏电流较小,当光照强的时候,反向漏电流较大。利用这个变化,串接一个电阻,就可转化成电压的变化,从而根据ADC读取的电压值判断光照强弱。 本次,将通过ADC3的通道6(PF8),来读取光敏二极管的强弱。 二、库函数编写 1)ADC3配置,与之前的ADC1配置一样,换个引脚而已,不再详细介绍; 2)获取光照强度,用0~100来表示,0代表光照最弱,即电流最小时,此时引脚电压最大;100代表光照最强,即电流最大时,此时引脚电压最小; 3)OLED显示 三
[单片机]
STM32与通常ARM的区别
ARM是英国的芯片设计公司,其最成功的莫过于32位嵌入式CPU核----ARM系列,最常用的是ARM7和ARM9,ARM公司主要提供IP核,就是CPU的内核结构,只包括最核心的部分,并不是完整的处理器. ARM把这个核卖给各大半导体公司,如 Pllips 三星 ,ATMEL 等等,许多公司,甚至Intel. ARM为了对付 8位机市场,最近推出了 Cortex-M3核,STM32就是意大利的意法半导体基于Cortex-M3的32位嵌入式处理器, Cortex_M3核性价比更高,价格低,可以与8位单片机竞争 ARM Cortex-M3 处理器初探 单片机市场的规模可以用“巨无霸”来形容,预计到2010时每年能有20G片的出货量。世界
[单片机]
STM32开发笔记64: STM32F4 UART4-5移植驱动程序应注意的问题
单片机型号:STM32F407VGT6 使用通用串口驱动程序分别运行UART1和UART4,则UART1正常,UART5不正常,本文解释具体原因。 先看STM32F407VGT6的串口配置情况,如下图所示,串口1、2、3、6为USART(同异步串口),串口4、5为UART(异步串口)。 在启动文件startup_stm32f407xx.s定义的中断矢量入口地址不同,可参看下面程序。 DCD USART1_IRQHandler ; USART1 DCD USART2_IRQHandler ; USA
[单片机]
<font color='red'>STM32</font>开发笔记64: STM32F4 UART4-5移植驱动程序应注意的问题
STM32基础5--外部中断
外部中断/事件控制框图 在下面的外部中断/事件控制框图中,可以看到输入线到NVIC的过程,如图中的1线。 1)外部信号由输入线进入进入边沿检测电路(需要设设置上升沿触发选择寄存器或者选择下降沿触发选择寄存器,图中的2线,3线) 2) 软件中断事件寄存器,这个寄存器与边沿检测电路共同经过一个 或门 ,也就是既可以通过外面的电路输入触发信号,也可通过软件设置该寄存器,中断的输入的。图中的4线 3)中断屏蔽寄存器,这个寄存器与1线经过一个“与门”,这个寄存器就是我们经常说的中断使用寄存器,通过对其设置使能或屏蔽中断。 4)挂起请求寄存器,其实是中断请求标志位,中断产生时会在该寄存器中有标志位。 23根外部中断线
[单片机]
<font color='red'>STM32</font>基础5--外部中断
关于stm32的USB和SPI疑似存在干扰的问题
情况是这样的,最近做一个项目,使用的是stm32f103RE单片机,使用到了单片机的usb口和SPI1。USB虚拟成串口向上位机发送数据,已经通过修改官网的例程调试通过,SPI1也能正常工作。但是当把两个功能做在同一个工程中时,发现出现了一些问题:USB想上位机发送一段时间后会停止发送(我的程序是在while中一直发送);USB发送会出现乱码。当我把SPI1的读写函数注释掉之后上述问题有消失了。这个问题纠结了我好几天了,不知道各位高手能不能帮我解答解答。 调试发现程序停在了while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET);中,但是之前没有添加USB功能模块
[单片机]
小广播
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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