STM32
文章平均质量分 80
yf夜风
这个作者很懒,什么都没留下…
展开
-
STM32F3使用USART串口DMA发送数据,使用蓝牙发送
STM32F3使用USART串口DMA发送数据,使用蓝牙发送OS: WIN7IDE: KEIL uvision V5.10.0.2MCU: STM32 F303 VC T6使用USART2,USART2_TX——PA2, USART2_RX——PA3,DMA1原创 2015-01-25 16:20:08 · 7749 阅读 · 0 评论 -
STM32输出PWM状态总结
输出极性(Polarity):基于正逻辑,即高电平为1,低电平为01.输出极性高(Polarity_High):高电平1为有效状态(active),低电平0为无效状态(inactive)2.输出极性低(Polarity_Low):低电平0为有效状态(active),高电平1为无效状态(inactive)PWMMode:分为边沿对齐和中心对齐模式对应向上/下计数,中心对原创 2016-11-27 19:53:07 · 7680 阅读 · 0 评论 -
STM32的使用之SPI通信DMA模式
MCU:STM32F303VC在SPI通信中,可以同时开启发送和接收DMA请求,自动数据的发送和接收,完成数据的交换基本步骤是:1. 配置好SPI相应引脚功能2. 配置和初始化SPI3. 初始化DMA4. 片选信号选择要通信的设备5. 打开DMA对应DMA通道:SPI1_RX---DMA1_Channel2;SPI1_TX---DMA1_Channel3代码:#define原创 2016-11-27 19:53:12 · 12308 阅读 · 0 评论 -
STM32F3硬件I2C与LSM303DLHC通信
I2C(Inter-Integrated Circuit)总线是一种两线式串行总线,用于连接微控制器及其外围设备。和SPI一样,也是一种常用的串行通信方式。STM32微控制器提供硬件I2C,对它进行相应配置就可以用来进行多个设备之间的通信。使用步骤:1. Enable peripheralclock 2. Enable SDA, SCL and SMBA (when used) GP原创 2016-11-27 19:53:15 · 3892 阅读 · 1 评论 -
STM32F3-PWM输入捕获测量频率脉宽…
利用STM32的PWM输入捕获功能,可以测方波的占空比和(或)频率使用时将相应的输入配置为对应定时器对应的复用功能,外部待测量波形从该引脚输入再配置定时器输入捕获功能相应参数,选择主从模式,最后打开中断或者DMA读取测量数据1. Enable TIM clock 2. Configure the TIM pins by configuring the correspondingGP原创 2016-11-27 19:53:17 · 6909 阅读 · 0 评论 -
STM32高分辨率定时器(HRTIM)使用笔…
STM32高分辨率功能非常强大,寄存器数量非常多,使用起来也比较麻烦,本文使用HRTIM1产生一组互补输出的PWM高分辨率定时器的初始化比普通定时器要复杂得多, HRTIM_OutputCfgTypeDefHRTIM_TIM_OutputStructure;//配置输出特性,高低电平等 HRTIM_BaseInitTypeDefHRTIM_BaseInitStructure;//配置基原创 2016-11-27 19:53:20 · 15095 阅读 · 1 评论 -
STM32数模转换-DAC_DMA
DAC—数模转换器DAC即是数模转换器,就是将数字量转换成模拟量,原理什么的大家应该都懂,直接跳入如何使用:STM32的DAC使用起来非常简单,首先将连接DAC通道的GPIO引脚配置为模拟状态,然后初始化DAC,一共只有四个参数需要初始化,其中最重要的是触发源:这个参数的作用是,每来一个触发源信号,DAC就刷新一次输出,也就是将需要转换的数字量转换为电压输出,这里选择定时器2作为触发源。原创 2016-11-27 19:53:22 · 8173 阅读 · 1 评论 -
STM32F3实时时钟RTC-闹钟和唤醒中…
STM32RTC使用步骤:打开PWR时钟和Backup区数据访问若使用外部低速时钟(LSE),打开LSE并等待起振选择和打开RTC时钟,等待时钟同步配置时间格式,分频系数等根据需要配置时钟,日期,闹钟,唤醒,输出,时间戳,备份寄存器等模块根据需要配置和打开中断,其中 RTC Alarm ——EXTI line17 RTC tamperand Timestamps—原创 2016-11-27 19:53:27 · 8112 阅读 · 1 评论 -
STM32F3—CAN通信自发自收
CAN通信是STM32中比较复杂的东西之一,它的初始化主要分为两个部分,一个是CAN的初始化,一个是过滤器的初始化。自发自收只需要一个器件,CAN的模式选择回环(Loopback)模式,这种模式下发出的数据也会被CAN本身接收回来,只需要检查接收到的数据和发送的数据是否一样,就能测试发送是否成功。代码:voidCAN_Config(void){ CAN_InitTyp原创 2016-11-27 19:53:25 · 7012 阅读 · 0 评论 -
STM32如何配置使用SPI通信
SPI是一种高速的,全双工,同步的通信总线,原理和使用简单,占用引脚资源少,是一种常用的通信方式。STM32通常有2~3个SPI接口根据STM32手册的使用方法:1. Enable peripheral clock 2. Enable SCK, MOSI, MISO and NSS GPIOclocks 3. Peripherals alternate function: Con原创 2016-11-27 19:53:10 · 6700 阅读 · 0 评论 -
STM32高分辨率定时器(HRTIM)使用实例之PWM
STM32高分辨率功能非常强大,寄存器数量非常多,使用起来也比较麻烦,本文使用HRTIM1产生一组互补输出的PWM高分辨率定时器的初始化比普通定时器要复杂得多,HRTIM_OutputCfgTypeDef HRTIM_TIM_OutputStructure;//配置输出特性,高低电平等HRTIM_BaseInitTypeDef HRTIM_BaseInitStructure;//配原创 2015-05-26 21:15:47 · 11596 阅读 · 2 评论 -
STM32F3的ADC使用DMA模式传输转换数据
STM32F3系列,ADC与DMA的详细使用配置方法采用ADC采样外部电位器的输入电压,将转换结果使用DMA模式传输,并对每8次采样去平均值做滤波处理原创 2015-05-08 00:32:23 · 8689 阅读 · 1 评论 -
STM32F334系统时钟的配置RCC_Config()
MCU:STM32F334C8T6Frameware:STM32F3348-Discovery_FW_V1.0.0RCC时钟配置步骤:重置RCC为默认值:RCC_DeInit(); 库函数中可以查到这个函数选择HSI为系统时钟(见图)打开外部高速时钟晶振HSE等待HSE工作设置AHB时钟设置高速APB(2)时钟设置低速APB(1)时钟设置PLL打开PLL等待PLL工作设置系统原创 2015-03-28 22:51:14 · 4883 阅读 · 0 评论 -
STM32F334使用串口发送接收数据
STM32F334使用串口发送接收数据MCU:STM32F334C8T6Frameware:STM32F3348-Discovery_FW_V1.0.0实现功能:在PC使用串口调试助手向MCU发送字符(数据),MCU将接收到的字符发回PC原创 2015-03-29 00:00:56 · 3550 阅读 · 0 评论 -
STM32实现任意角度移相全桥PWM
STM32实现任意角度移相全桥PWM,最小分辨率0.5度,频率占空比课任意调节本文重点在于如何产生任意角度的移相,两个定时器工作于主从模式,从模式为Gate mode,用第一个定时器触发第二个来实现延时移相原创 2015-04-03 21:52:13 · 28920 阅读 · 3 评论 -
如何利用STM32通用定时器实现输出两路占空比和频率可调的互补PWM
如何利用STM32通用定时器实现输出两路占空比和频率可调的互补PWM用过STM32的知道,用它的定时器可以很容易实现PWM输出,使用高级定时器的TIMx_CHy和TIMx_CHyN可以轻易实现互补PWM(complementary PWM)波形的输出。本文利用通用定时器(General-purpose timers)实现互补PWM输出,在高级定时器资源不够时不失为一个好方法。原创 2015-04-02 20:49:13 · 22771 阅读 · 8 评论 -
STM32非对称PWM模式实现动态移相(Asymmetric PWM mode的用法)
STM32非对称PWM模式实现动态移相(Asymmetric PWM mode的用法)STM32有多种PWM模式,实现各种不同的强大功能,本文使用非对称PWM模式,实现可动态改变移相相位的全桥PWM驱动波形Asymmetric mode allows two center-aligned PWM signals to be generated with a programmable phase shift.此功能对具有反馈调节功能的系统具有非常重要的作用,可以根据反馈来实时修改移相角度,从而使输出更加原创 2015-04-11 13:19:36 · 15150 阅读 · 10 评论 -
STM32中ADC的使用/printf函数重定向串口显示内部温度传感器测量值
STM32F334C8T6这款MCU中有两个12位ADC(模数转换器),ADC1的通道16连接到内置的一个温度传感器,本文使用该温度传感器测量MCU和周围的环境温度,并且通过串口发送到PC的串口助手进行显示。1. ADC的使用2. 内部温度传感器的使用3. printf()函数重定向原创 2015-04-11 17:29:13 · 6268 阅读 · 2 评论 -
STM32按键扫描/按键中断/外部中断
接触STM32有一段时间了,也算是简单入了门,但由于一些原因,今天才来写本应该是入门级的按键相关程序,分为扫描模式和中断模式MCU:STM32F334C81.扫描模式下面的代码完成的功能是:按键第一次按下,点亮灯,再按一次,熄灭,重复。2.中断模式功能:按键按下,点亮LED并向串口发送按键按下到PC,按键松开,关掉LED并发送按键松开原创 2015-05-19 17:08:14 · 15451 阅读 · 0 评论 -
Ubuntu 18.04编译STM32错误
/usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/bin/ld: error: /usr/lib/gcc/arm-none-eabi/6.3.1/…/…/…/arm-none-eabi/lib/crt0.o: Conflicting CPU architectures 12/1/usr/lib/gcc/arm-none-eabi/6.3.1...原创 2018-09-20 22:05:57 · 2102 阅读 · 1 评论