catalogue . Cortex-M3地址空间 . 基于标准外设库的软件开发 . 基于固件库实现串口输出(发送)程序 . 红外接收实验 . 深入分析流水灯例程 . GPIO再举例之按键实验 . 串口通信(USART) . 库函数开发通用流程小结 . DMA传输方式 . STM32 ADC . SysTick(系统滴答定时器) . STM32定时器 0. Cortex-M3地址空间 0x1: MDK中三种linker之间的区别 1. 采用Target对话框中的RAM和ROM地址 采用此方式,需…
使用 C++ 语言给 STM32 编写一个 I2c(Soft)类 我使用的STM32芯片:STM32F103ZET6 我们使用的STM32库版本:V3.5.0 注意: 想学习本套 STM32 C++编程 的专栏是有点门槛的.你需要有一点点 STM32 基础 和 一点点 C++ 语言基础. 完整的STM32 C++ I2c(Soft)类 的下载地址可以在本篇博客的最下面找到. I2cSoft.h: #ifndef __AOBO_stm32f10x_I2c_H_ #define __AOBO_stm…
使用 C++ 语言给 STM32 编写一个 Adc 类 我使用的STM32芯片:STM32F103ZET6 我们使用的STM32库版本:V3.5.0 注意: 想学习本套 STM32 C++编程 的专栏是有点门槛的.你需要有一点点 STM32 基础 和 一点点 C++ 语言基础. 完整的STM32 C++ Adc类 的下载地址可以在本篇博客的最下面找到. Adc.cpp #include "Adc.h" using namespace stm32f10x; Adc::Adc(ADC_Ty…
使用 C++ 语言给 STM32 编写一个 Usart 类 我使用的STM32芯片:STM32F103ZET6 我们使用的STM32库版本:V3.5.0 注意: 想学习本套 STM32 C++编程 的专栏是有点门槛的.你需要有一点点 STM32 基础 和 一点点 C++ 语言基础. 完整的STM32 C++ Usart类 的下载地址可以在本篇博客的最下面找到. Usart.cpp #include "Usart.h" #include "Gpio.h" using…
使用 C++ 语言给 STM32 编写一个 Gpio 类 我使用的STM32芯片:STM32F103ZET6 我们使用的STM32库版本:V3.5.0 注意: 想学习本套 STM32 C++编程 的专栏是有点门槛的.你需要有一点点 STM32 基础 和 一点点 C++ 语言基础. 完整的STM32 C++工程模板 的下载地址可以在本篇博客的最下面找到. Gpio.h //Gpio.h //#pragma once //编译一次 #ifndef __AOBO_stm3210x_Gpio_H_ #d…
STM32开发环境--使用MDK建立一个工程 该工程模版是基于库函数基础制作而成,其中有借鉴相关资料.虽然工程模版一旦建立,以后任何项目只需套用即可,但考虑到长时间不使用,在将来某天可能会突然用到,再查询资料搭建比较费时间和精力.故在此做一个简单的教程,在方便自己以后查阅的同时,也希望可以帮助到别人.另水平有限,如有错误,欢迎指正! 声明:此文章为本人笔记,如若按照本教程制作出工程模版,在具体工程中造成任何损失,本人概不负责. 1. 工程使用相关资料说明: a) 软件工具:MDK 5 b) ST…
一.背景 如前文所述,利用标准库函数的好处在于,可以快速开发,不用去对着数据手册,小心翼翼的一位一位的配置那些繁复的寄存器,因为这些工作意法半导体已经找了一些顶级的工程师帮你做了,杰作既是其库函数.当然,有些代码考虑到低功耗,或者需要极小的ROM,就不能使用库函数,而这即是通常说的,"高度定制化",牺牲开发时间来获取更高代码效率,这个需要自己权衡. 本文以STM32之DMA库函数为例,即如何快速使用STM32库函数做个简述及记录. 二.正文 首先去官网或者论坛下载STM32的官方库,解…
一.概述 1.调用STM32库函数配置与直接配置寄存器 ① 直接配置寄存器 使用过51单片机的朋友都知道为了将IO口配置成某种特殊功能或者配置中断控制,我们先将需要如下步骤: 根据需要配置功能计算值---->直接写入寄存器 ② 调用STM32库函数配置 定义一个配置结构体变量---->根据配置功能依次给这个结构体变量的成员赋值----->将结构体变量的地址传入库函数,并调用STM32库函数实现配置 其中最后一个步骤的"调用STM32库函数",实际上就是将配置结果写入寄…
void USART_SendData()函数在快速发送时存在问题 有丢数据的可能 转自https://blog.csdn.net/qq_27114397/article/details/50601548 STM32库函数void USART_SendData的缺陷和解决方法使用USART_SendData()函数非连续发送单个字符是没有问题的:当连续发送字符时(两个字符间没有延时),就会发现发送缓冲区有溢出现象.若发送的数据量很小时,此时串口发送的只是最后一个字符,当发送数据量大时,就会导致发…
将 STM32的官方工程模板 修改为我们这套教材的:STM32 C++工程模板 我使用的 STM32 库的版本 : V3.5.0 注意: 想学习本套 STM32 C++编程 的专栏是有点门槛的.你需要有一点点 STM32 基础 和 一点点 C++ 语言基础. 完整的STM32 C++工程模板 的下载地址可以在本篇博客的最下面找到. 下面是:将 STM32的官方工程模板 修改为我们这套教材的 STM32 C++工程模板 的修改步骤: 1. 在启动文件中,增大了 堆 和 栈 的空间 原启动文件里堆栈…