- 博客(21)
- 收藏
- 关注
原创 【自学】mspm0——pwm
Calculated PWM Frequency (Hz)就是输出频率;Counter Compare Value就是ccr,用于配置占空比;本文用于自学,资料均来自网络。
2025-05-15 22:53:21
156
原创 【自学】mspm0——串口通信
值得注意的是,这个串口中断是根据字符个数来触发的,也就是说,我输入11,会触发两次中断,用起来没有hal库的串口函数好用。本文用于自学,资料均来自网络。
2025-05-15 22:31:48
457
原创 【自学】mspm0——timer定时器
配置的时候记得使能中断,不然无法使用中断函数,计时的重点是软件帮我们计算出来的值。这样就可以利用定时器实现基本的定时功能了。本文用于自学,资料均来自网络。
2025-05-15 21:43:47
240
原创 【自学】mspm0-systick
如何计算的:根据用户手册,systick用的是MCLK时钟,默认是32MHZ,也就是1s计32M个数,我们设置技术周期值为32000,,如果开启中断也就是每记32000个数触发一次中断,算下来就是32000/32000000,就是0.001s进一次中断。在ccs内,我们只要使能systick并配置定时时间即可,如果想利用systick完成某些任务,就需要在中断函数编写程序。这是利用systick编写的一个简单延时函数,一般情况systick不好用,不如tim定时器。以上是全部的中断函数。
2025-05-15 20:36:38
221
原创 蓝桥杯嵌入式——pwm频率/占空比测量
PA15开tim8,PB4开tim16(无法测占空比,因为就一个通道),PA6开tim3,PA7开TIM17(无法测占空比),PA1开tim2,PA2开tim15.按照以前的pwm测量配置,从模式改成reset,选择内部时钟源,触发源选择和通道名称相同的,psc为80-1,直接输入通道向上计数,间接输入通道向下计数。无法开启从模式的,要开中断,用软件清零计数器,。这次开启全部的pwm频率测量。
2025-03-09 14:51:39
247
原创 蓝桥杯嵌入式——adc之光敏电阻和电位器
PA4改成adc模式,PA3改成gpioinupt,label叫Pho,adc设置扫描模式,因为开了多个通道,这次通道改成三个,主板电位器,光敏电阻,adc按键,记得修改rank通道。注意电位器最大值为3.22(分压)
2025-03-09 11:33:13
216
原创 蓝桥杯嵌入式——ADCKEY
cubemx配置:把PA5配置成adc模式,单端输入,不用过采样,如果adc还有其他通道,记得打开多通道模式,conversion数目改成2,采样时间调最大,可以不用开dma,不能开启连续转换,不然难以区分数据.
2025-03-09 09:24:24
234
原创 蓝桥杯嵌入式-74HC595
cubemx设置:PA1,PA2,PA3设置为gpiooutput,推挽输出模式,不上拉不下拉,PA1对应SER,PA2对应RCLK,PA3对应SCK。代码编写:
2025-03-08 20:13:48
200
原创 蓝桥杯嵌入式单总线协议-ds18b20,dht11
蓝桥杯官方给的库函数不全,可能是要比赛的时候让选手补齐,不过dht11的版本不确定,可能不是最新的,先参考一下,之后再自己写一下。dht11同理,把可能会让你自己写的函数放在这参考。根据时序图读取ds18b20的数据,写完记得声明。之后在主函数里面调用就行了。
2025-03-08 18:34:13
219
原创 蓝桥杯嵌入式——I2C数字电位器+ADC_DMA
按照时序图写出数字电位器的函数使用adc的多通道dma来读取mcp的电阻,可以同时读取两个以上通道的数据dma的cubemx设置:两个通道都选单端模式,dma设置中加一个adc1,选择循环模式,要选择两个通道,使能扫描模式, 配置各个采样通道,采样时间大一点(>47.5),不然程序会卡死(占用太多cpu时间),使能dma请求,使能连续转换。
2025-02-06 17:29:54
160
原创 蓝桥杯嵌入式——I2C通信-E2PROM/MCP4017
在官方提供的底层代码驱动中找到I2C的.c和.h文件,复制到bsp中,有了官方的库,就不用配置I2C了。
2025-02-06 17:06:33
141
原创 蓝桥杯嵌入式——ADC模拟电压测量-单端输入模式
cubemx配置:一般使用单端输入(single ended),选择独立模式,最少2分频,分辩率(resolution)选12位,默认右对齐,单端不扫描,开启规则转换通道,触发源选择软件触发,采样时间越长越精确,但花费时间多,是能过采样,右移3位,速率选128,把128次采样当作一次采样结果。
2025-02-06 16:01:35
211
原创 蓝桥杯嵌入式——实时时钟RTC(计时/闹钟)
cubemx步骤:打开时钟源和日历,可以设置小时格式(24、12),初始化日历参数:年月日时分秒,年默认补齐20xx,直接输后面的xx就行。
2025-02-06 15:36:51
211
原创 蓝桥杯嵌入式——systick实现无阻塞延时
systcick是单片机自带的时钟,每隔1ms产生一次中断,我们利用这个特性完成延时或指定时间执行某个函数。
2025-02-06 15:19:15
160
原创 蓝桥杯嵌入式——串口通信UART
以usart1为例,我们一般使用异步收发模式,模式选择Asynchronous,其他默认,根据题目改变默特吕,最后开启中断。
2025-02-06 12:54:36
167
原创 蓝桥杯嵌入式——TIM输入捕获
cubemx设置:从模式选择reset,触发源选择TI1FP1,选内部时钟源psc设置为80-1,cnt不用设置,ch1选上升沿,ch2选下降沿。
2025-02-05 15:26:49
260
原创 蓝桥杯嵌入式——定时器-产生PWM波
pwm的产生模式:在cubemx的操作步骤:1.选择合适的tim和通道,使用内部时钟信号源,选择pwm generation chx2.设置预分频(psc)80-1,和计数值(cnt)1000-1,得到1khz的信号3.设置pwm模式1,计数值(pluse)设置为500,的都占空比50%的pwm信号。
2025-02-05 14:56:53
215
原创 蓝桥杯嵌入式——按键的编写
按键在按下和抬起的过程分别会产生5-10ms的机械抖动,这个过程的电平高低是不确定的,所以需要进行消抖,具体方法是:利用定时器,每10ms进行一次计数,将按下一次按键的过程看作50ms,则只有当电平持续为0的那一段时间才为按键真正被按下的时间。
2025-02-05 11:16:43
302
原创 【自学】基于stm32的oled多级菜单
讲完确认按键后,我们需要一个返回按键,来返回到主菜单,如何实现呢,其实很简单,只要在二级菜单的功能函数中加入一个判断语句,当按键按下时,直接break,回到主函数的循环中即可。光标我们可以通过修改oled在屏幕上的显示来显示光标,如何让光标进行移动是一个问题,这里我们采用设置一个标志位来记录光标的位置,当key1按下时,光标就会移动。想要实现确认功能,就离不开我们之前设置的flag变量,通过flag我们才能知道我们所选择的是第几个二级菜单,当flag=1时,对应的时第一个二级菜单…
2024-04-06 17:53:51
1880
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅