随笔分类 - STM32
摘要:一、工具 1、硬件:STM32F429BI单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、需求分析 现有以下需求,需要单片机能够同时输出一个方波和三角波,并且使方波的高电平的中间与三角波的波峰对齐,方波
阅读全文
摘要:一、介绍 该按键实现方案摘录自安富莱,具备按键短按、按键抬起、按键长按和按键长按连发的功能;使用了一个缓存数组用于装载按键值,缓存数组的大小和按键的个数有关。 注意:按键扫描函数需要每隔10ms调用一次,如果需要修改请细看程序。 二、代码实现 /* * key.c * * Created on: J
阅读全文
摘要:1、找到syscalls.c文件,确认该文件中存在如下图所示的函数: 2、如果没有syscall.c文件可以按照以下操作创建: 3、从以上函数中可看出输出字符串的接口函数为__io_putchar(int ch),我们只需定义该函数并实现该函数的内容如下代码所示: int __io_putchar(
阅读全文
摘要:一、工具 1、硬件:STM32L053R8单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、电路设计 将UART信号转换成CAN信号以实现CAN通讯,如下图所示: 三、软件实现 1、定时器配置 定时器7的
阅读全文
摘要:一、工具 1、硬件:STM32L072KB单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、需求分析 现有以下需求,需要单片机能够同时输出一个方波和三角波,并且使方波的高电平的中间与三角波的波峰对齐,方波
阅读全文
摘要:一、工具 1、硬件:STM32L053R8单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、单片机系统时钟配置 1、系统时钟配置(没有显示的默认),这里选择的是内部的高速时钟(HSI)作为时钟源,系统时钟
阅读全文
摘要:一、工具 1、硬件:STM32L053R8单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、单片机系统时钟配置 1、系统时钟配置(没有显示的默认),这里选择的是内部的高速时钟(HSI)作为时钟源,系统时钟
阅读全文
摘要:一、硬件电路 二、代码实现 I2C驱动程序链接:https://www.cnblogs.com/wenhao-Web/p/14151229.html 1、软件延时 void at24cxx_delay(uint32_t t) { uint32_t i, j; for(i = 0; i < t; i+
阅读全文
摘要:一、SCL和SDA引脚说明 I2C的两个引脚(SCL引脚和SDA引脚)需要既能输出又能输入,为了避免复杂的配置操作需要把该引脚配置为开漏输出模式,该模式的说明如下图所示: 当单片机的SDA引脚配置为低电平时,SDA线被拉低;当单片机的SDA引脚配置为高电平时,引脚端口为高阻态,SDA线通过上拉电阻被
阅读全文
摘要:一、工具 1、硬件:STM32L053R8单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、DAC输出三角波解读 为了便于解读和查看,我这里是从STM32F4的用户手册中截图的DAC生成三角波的功能介绍,
阅读全文
摘要:一、准备工具 STM32CubeMX软件; TrueSTUDIO软件; STM32F429BI开发板带USB接口一块。 二、USB电路图 从电路图可以看出,只有两个接口与单片机连接,虽然使用的是单片机的高速引脚,但缺少高速芯片(自行科普),只能拿高速(HS)引脚当全速(FS)引脚用。 三、使用STM
阅读全文
摘要:一、使用TrueSTUDIO生成.bin文件 找到当前工程的属性设置,在下面输入框里输入以下指令,重新编译程序即可得到.bin文件 arm-atollic-eabi-objcopy.exe -O binary ${BuildArtifactFileBaseName}.elf ${BuildArtif
阅读全文
摘要:一、工具 1、硬件:STM32F103VET6单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、工程创建 1、打开调试接口 2、选择时钟源 3、打开USB功能 4、选择USB中间件,配置USB为大容量存储
阅读全文
摘要:以下内容参照野火例程来写的,有条件或者还有疑问的地方可以阅读野火例程 一、工具 1、硬件:STM32F103VET6单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、创建一个裸机工程,配置三个GPIO引脚
阅读全文
摘要:一、工具 1、硬件:STM32F103VET6单片机(HAL库) 2、编译环境:Atollic TrueSTUDIO for STM32 9.3.0 3、辅助工具:STM32CubeMX 二、电路原理图 三、单片机系统时钟配置 1、时钟源选择: 2、时钟树: 四、SPI配置 1、选用的是SPI1,全
阅读全文
摘要:一、工具 1、STM32F103VET6单片机; 2、编译环境:TrueSTUDIO 3、辅助工具:STM32CubeMX 二、单片机系统时钟配置 三、单片机定时器配置 1、选择TIM2定时器,设置定时器的时钟源为内部时钟,通道3和通道4设置为输出比较模式。 2、定时器参数设置,主要分为时基的设置和
阅读全文
摘要:一、工具 1、硬件:STM32F103VET6单片机; 2、编译工具:TrueSTUDIO; 3、辅助工具:STM32CubeMX。 二、单片机系统时钟配置 三、单片机定时器配置 这里参数设置说明下: 根据时钟树可以知道定时器2在APB1总线上(如下图所示),APB1的总线时钟由SYSCLK时钟经过
阅读全文