
stm32
文章平均质量分 52
小洋洋呢
一个菜狗的日常
展开
-
STM32学习笔记之三角波的实现(寄存器版本)
三角波本次实验采用STM32F1,请注意辨别!!!前言咳咳,三角波对于我这个初学者来说,太折磨了!!!主要原因还是我比较菜!第一天,在学习PWM后决定使用PWM生成三角波,结果出现各种各样奇葩的波形,比如梯子状,陡坡状·····哎,不说了,都是泪,在查看了中文参考手册时,我才发现可以通过DAC来进行生成三角波·····除了参考中文手册,以及在网上查找资料(结果都是库函数版的),于是通过搜集各个式样的生成步骤,终于得到了这样的波:还是很像三角波吧。(才怪!)我就陷入了无休止的调改和尝试中。正文原创 2021-06-03 18:31:58 · 1880 阅读 · 1 评论 -
STM32学习笔记之PWM实验2 方波的产生(寄存器版本)
方波产生经过上次学习,可以通过PWM完成呼吸灯。本次实验是在呼吸灯的基础上进行改进,关于PWM的基础知识请移步上一篇文章。接下来对上篇文章的代码进行如下改进:time.h#ifndef __TIMER_H#define __TIMER_H#include "sys.h"#define LED0_PWM_VAL TIM3->CCR4 //void TIM3_Int_Init(u16 arr,u16 psc);void TIM3_PWM_Init(u16 arr,u16 psc)原创 2021-06-03 17:49:43 · 4256 阅读 · 2 评论 -
STM32学习笔记之呼吸灯实验
STM32呼吸灯实验(寄存器版本)在继定时器中断之后,开始PWM的学习,脉冲宽度调制(PWM),是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽度的控制。以下就是原子的PWM的原理图图中,我们假定定时器工作在向上计数PWM模式,且当CNT<CCRx时,输出0,当CNT>=CCRx时输出1。那么就可以得到如上的PWM示意图:当CNT值小于CCRx的时候,IO输出低电平(0),当CNT值大于等于CCRx的时候,IO输出高电平(1),当CNT达到ARR原创 2021-05-26 21:37:56 · 2066 阅读 · 0 评论 -
STM32学习笔记之外部中断实验(寄存器版本)
外部中断实验了解一下:外部中断中,需要设置优先级。抢占优先级高于响应优先级,数值越小,优先级越高。可以参考《STM32参考手册(寄存器版本)》“sys.h"的中断管理函数 。外部中断的步骤:1.初始化IO口(仿照前面所学的LED实验中的初始化,原理相同)2.开启IO复用时钟并设置触发条件。这里用到的函数为void Ex_NVIC_Config(u8 GPIOx,u8 BITx,u8 TRIM)这里的三个参数分别是代表GPIOA~G,需要使能的位,触发模式其中,触发模式TRLM:常用 RTIR原创 2021-05-21 21:35:20 · 568 阅读 · 0 评论 -
STM32之3*3矩阵键盘
STM32学习笔记之矩阵键盘今天来谈谈矩阵键盘实验!首先,继承学长们的矩阵键盘,有时间要自己焊一手先!焊接方式如下:六个接线口分别对应三行三列,连接PB5~PB10接线如下:key.h#ifndef __KEY_H#define __KEY_H#include "sys.h"u8 KEY_Init(void);#endifkey.c#include "stm32f10x.h"#include "key.h"#include "sys.h"#include "delay.h原创 2021-05-08 22:11:58 · 2264 阅读 · 0 评论 -
STM32之跑马灯实验(笔记)
STM32学习笔记—跑马灯咳咳,学习了STM32若干天(由于事情较多搁置了好多),在原子哥的带领下搭建了环境,还有学习了一些比较常用的功能,包括串口调试,软件仿真,串口下载等等,终于接触到了第一个实验——跑马灯。跟以前学arduino的时候一样,看视频自学,依旧是先按着模板抄着写,根本搞不懂里面的操作,硬着头皮往下弄!嗯嗯······还是有效果的,通过仿照模板,灯最终也被点量了!可是,这个是板上自带的LED,也是按照模板来的。于是觉得应该自己写才行,于是,我外接了一个LED,来练习代码。以PB5原创 2021-05-07 23:40:08 · 904 阅读 · 0 评论