当前位置:网站首页>STC转STM32第一次开发

STC转STM32第一次开发

2020-11-08 23:46:00 你好我叫郑某人


前言

跳槽进了另个实验室,老师看上去就是强者(强者发型)
不过yysy,做这个,对我这种软转硬,而且专业基础没那么OK的,有点小难

项目

1. 模数转换,并通过OLED屏显示出来

需求:

实验器材:

STM32F4、滑动变阻器、OLED屏(IIC)、面包板、杜邦线若干

接线:

根据原理图以及例程,去找到Channel_5对应的接口,开发板原理图一定要学会看!

STM32 OLED
3.3V VCC
GND GND
PD6 SCL
PD7 SDA

源程序:

蓝奏云
这里选取主程序,传入模拟信号,转化为数字信号,并在OLED上打印出来。

'''
delay_ms(500);
adcx=Get_Adc_Avg(ADC_Channel_5,5);
temp=(float)adcx * (3.3/4096);

	printf("temp val:%d\n",adcx);
	printf("\n");
	printf("temp val:%f\n",temp);
	
	OLED_ShowString(0,0,"MyQQ:",16);
	OLED_ShowString(0,2,"1625098483",16);  
	OLED_ShowString(0,4,"Voltage:",16);
	OLED_ShowString(0,6,"0.00V",16);
	OLED_ShowNum(0,6,temp,1,16);
	delay_ms(5000);
	OLED_Clear();    

'''

成品:

这个项目没花几个晚上(白天全在外面上课),而且官方给了读取ADC数据OLED屏的例程,
但官方给的OLEDSPI的,我的是IIC的,这个改了大概两三个晚上。

2. 简易频率计(0.1-10MHZ)

需求:

频率计是来检测信号的频率的,在做频率计的时候可以用信号发生器发出的信号来进行测试。

原理:

对于正弦波/方波,我们从周期的角度来看,连续两个上升沿就是这个波的周期频率=1/周期
将外部中断的引脚设置为上升沿检测并配置为下拉模式。每次检测到上升沿时,cnt++,这样一秒钟内计数器的值就是频率。
外部中断模式
系统频率 --> 延时函数
定时器+中断器

实验器材:

STM32、数字信号发生器、杜邦线若干

接线:

在源程序里都能看到,这里就不赘述了

源程序:

频率计

写在结尾

感觉对硬件没什么天赋,还是更喜欢玩算法,做后端开发一点
主要觉得硬件的基层东西太多了,对新手入门太不友好了,而且看某乎不少嵌入式开发都转去互联网了。(大佬轻喷,希望在评论区留下你的见解)
可能这次硬转软,就再回不去了。
当然,本人专业是电子信息工程,之后可能会稍微更几个有意思的硬件博文。
然后呢,做一些Java学习和算法之类的文章。
emmm就这样吧,先充实自己两年,现在做的是自己喜欢的,希望能有一个好的结尾。

版权声明
本文为[你好我叫郑某人]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/ZhengBlogs/p/STM32_01.html