STM32
dbfy666
这个作者很懒,什么都没留下…
展开
-
STM32 LCD屏显示串口接收数据
STM32最近在学习PID调节,想通过电脑把串口调试助手发给32的数据通过LCD显示出来以前显示串口接收的数据都是用 for语句和LCD_ShowNum();语句 把数组USART_RX_BUF里的数据一个个打出来这样不是很直观,且有些繁琐今天突然想到是不是可以用LCD_ShowString();他的入口参数是这样的void LCD_ShowString(u16 x,u16 y,u16 ...原创 2019-01-19 11:38:27 · 16109 阅读 · 4 评论 -
大创项目总结及代码分享---基于单片机的智能窗帘的研究与设计
终于是暑假了,开始有点时间了,把以前做的一些小东西总结一下,其实大创是很早就已经完成了,只不过学校一直到四月份才开始验收结题。项目比较简单,也很方便就能验证功能,比较适合初学者练手,所以大概分享一下。 大创项目全称就是 基于单片机的智能窗帘的研究与设计 这是一个很老也很简单的项目了,当时大二寻找题目申请大创的时候,还是个连51单片机都才学一般的菜鸟,总怕自己最后做...原创 2019-06-23 17:01:24 · 7624 阅读 · 0 评论 -
输出比较产生PWM
转自:作者:马一飞 QQ:791729359 看了这位博主的博客学到了很多东西,一开始有些地方不是很明白,现在看懂了,稍微修改了下,原文连接如下https://blog.csdn.net/qq_34952376/article/details/81172535下...转载 2019-03-22 21:44:08 · 6100 阅读 · 1 评论 -
输出比较模式实现PWM输出
(刚开始尝试写博客,如有错误或者不足之处欢迎指正)我用的是通用定时器TIM3来产生的输出比较模式产生PWM与直接配置定时器PWM模式相比有一些优势,最大的就是同一个定时器的不同通道可以产生频率不同的PWM。个人理解:其实PWM模式输出比较模式的一个特殊情况,即不去改变频率值,单改变比较值从而改变占空比。在输出比较模式中,需要利用中断,不断改变比较值,即捕获/比较寄存器的值如图所示,假设...原创 2019-03-22 17:53:13 · 6603 阅读 · 1 评论 -
stm32中按键长短按实现方法
主函数中扫描该函数即可,需要注意按键按下时程序会停留在该函数中,知道松手或时间到0.8s,大于0.8秒为长按,小于为短按,可以自己根据需要修改,初始化函数因板子而异,这里就不列出来了u8 KEY_N; //在头文件中声明一下外部变量,用于主函数中判断哪个按键按下u8 KEY_Scan(void) //返回值temp代表按键按下的时间(=temp*10 MS){ static u8 f...原创 2019-03-22 17:09:53 · 8052 阅读 · 2 评论 -
一种滤波算法
刚看到要写滤波算法的时候懵了,想着是不是要去掉最大值、最小值什么的,感觉很高大上于是开始查资料了解,发现滤波算法其实有很多种方法,如下列举了一些,当然能起到的滤波作用也是不同的于是我看了下,选择了一种最简单实用的滤波算法学习了一下,即下面的中位值滤波算法简单来说就是多次采样,排序,取中间值如ADC,采样20次,再把这20次数据从小到大排序,取出中间值作为有效值,这里是偶数个所以要把...原创 2019-03-25 18:47:15 · 308 阅读 · 0 评论 -
系统滴答计时器
系统滴答计时器:它是一个24位的倒计数定时器,当计数到0时,它就会从Load寄存器中自动重装定时初值,只要不把CTRL寄存器中的ENABLE清0,它就永不停配置函数定义在core_cm.h文件中接近结尾部分,右键搜索不到static __INLINE uint32_t SysTick_Config(uint32_t ticks)入口参数 即节拍数 ticks表示两次中断之间的计数值,计数器...原创 2019-03-21 21:22:42 · 909 阅读 · 0 评论 -
蓝桥杯单片机资料
链接:https://pan.baidu.com/s/1RXlq8Ap_Giy4iRsjeCfJ1g提取码:3tt2这还是在CSDN里花了钱下载的,但是那位博主没把资料说清楚,就说是蓝桥杯资料,然而我参加的嵌入式,所以么的用,这边我就用百度网盘分享出来,我没认真看过里面资料,所以有用没用自己定夺...原创 2019-03-24 20:09:26 · 2476 阅读 · 0 评论 -
快速赋值初始化函数中的结构体
STM32手打一些初始化函数技巧适合蓝桥杯比赛时用突然发现的,自己感觉很省力,所以分享一下,知道的大佬别喷如下:比如我们想初始化ADC,选好通道后,(时钟和GPIO的初始化是非常简单的,不讲了,其实GPIO的初始化也可以用相同方法)下面最烦的就是ADC_Init();对这个初始化函数中的结构体变量进行赋值,以前都是一个个打出来赋值,现在我们在stm32f10x_adc.h中找到void A...原创 2019-03-03 21:26:17 · 482 阅读 · 0 评论 -
学习定时器输出比较模式产生PWM的一些感悟
(刚开始尝试写博客,如有错误或者不足之处欢迎指正)我用的是通用定时器TIM3来产生的输出比较模式产生PWM与直接配置定时器PWM模式相比有一些优势,最大的就是同一个定时器的不同通道可以产生频率不同的PWM。个人理解:其实PWM模式输出比较模式的一个特殊情况,即不去改变频率值,单改变比较值从而改变占空比。在输出比较模式中,需要利用中断,不断改变比较值,即捕获/比较寄存器的值如图所示,假...原创 2019-01-25 12:33:43 · 2901 阅读 · 0 评论 -
stm32高级定时器死区时间的计算
1、首先确定时钟分频因子,一般都是选择不分频,在初始化定时器基本配置时配置,代码如下 TIM_TimeBaseStructure.TIM_ClockDivision = 0; 通过确定时钟分频因子根据下表可以确定 分频因子为0的话就是1/72 us了2、 根据TIMx_BDTR寄存器DTG[7:0]位的配置就可以计算了,如下表规...原创 2019-07-03 15:42:25 · 4048 阅读 · 0 评论