在使用库开发时,我们需要把libraries目录下的库函数文件添加到工程中,并查阅库帮助文档来了解ST提供的库函数,这个文档说明了每一个库函数的使用方法。 进入Libraries文件夹看到,关于内核与外设的库文件分别存放在CMSIS和STM32F10x_StdPeriph_Driver文件夹中。
现在无人机非常火热,高端的无人机用STM32做不来,但是小型的四轴飞行器用STM32还是绰绰有余的。如图 微型四轴飞行器 所示飞行器的基本都可以用STM32搞定。 上面的是属于产品,如果想自己DIY,可以在入门STM32之后,买一本飞行器DIY的书,边做边学。入门级的书籍推荐《四轴飞行器DIY—基于STM32微控制器》,见图 四轴...
STM32的ADC功能繁多,我们设计三个实验尽量完整的展示ADC的功能。首先是比较基础实用的单通道采集, 实现开发板上电位器的动触点输出引脚电压的采集并通过串口打印至PC端串口调试助手。单通道采集适用AD转换完成中断, 在中断服务函数中读取数据,不使用DMA传输,在多通道采集时才使用DMA传输。
野火STM32F103VET6— “指南者”自带串口下载电路,配合上位机可实现一键ISP下载,不需要修改开发板上的BOOT设置。 与仿真器Fire-Debugger相比,ISP只能下载程序,不能在线调试且下载速度慢。 4.1.安装USB转串口驱动¶ 野火的STM32开发板用的USB转串口的驱动芯片是CH340,要使用串口得先在电脑中安装USB转串口驱动—CH340...
45.1.STM32的内部FLASH简介¶ 在STM32芯片内部有一个FLASH存储器,它主要用于存储代码,我们在电脑上编写好应用程序后,使用下载器把编译后的代码文件烧录到该内部FLASH中, 由于FLASH存储器的内容在掉电后不会丢失,芯片重新上电复位后,内核可从内部FLASH中加载代码并运行, 见图STM32的内部框架图。
在前面讲解的STM32启动代码章节了解到CM-3内核在离开复位状态后的工作过程如下,见图复位序列: (1) 从地址0x00000000处取出栈指针MSP的初始值,该值就是栈顶的地址。 (2) 从地址0x00000004处取出程序指针PC的初始值,该值指向复位后应执行的第一条指令。
开发板板载一个电容按键,原理图设计参考图电容按键电路设计。 标示TPAD1在电路板上就是电容按键实体,默认通过一个调帽连接到PA1,即通用定时器TIM5的通道2。 充电电容的阻值为5.1M,电阻的大小决定了电容按键充电的时间。 实验还用到调试串口和蜂鸣器功能,用来打印输入捕获信息和指示按键状态,这两个模块电路可参考之前...
位操作就是可以单独的对一个比特位读和写,这个在51单片机中非常常见。51单片机中通过关键字sbit来实现位定义, STM32没有这样的关键字,而是通过访问位带别名区来实现。 在STM32中,有两个地方实现了位带,一个是SRAM区的最低1MB空间,另一个是外设区最低1MB空间。 这两个1MB的空间除了可以像正常的RAM一样操作外...
在实际发布的产品中,在STM32芯片的内部FLASH存储了控制程序,如果不作任何保护措施的话,可以使用下载器直接把内部FLASH的内容读取回来, 得到bin或hex文件格式的代码拷贝,别有用心的厂商会利用该方法山寨产品。为此,STM32芯片提供了多种方式保护内部FLASH的程序不被非法读取, 但在默认情况下该保护功能是不开启的,若要...
本开发板中设计的RGB灯控制引脚是经过仔细选择的,因为本实验的软件将使用STM32的定时器控制PWM脉冲的占空比, 然而并不是任意GPIO都具有STM32定时器的输出通道功能,所以在设计硬件时,需要根据《STM32中文数据手册》中的说明, 选择具有定时器输出通道功能的引脚来控制RGB灯,见图LED引脚说明。