STM32F1控制OLED屏及今天学习笔记

首先先说一下之前的代码在STM32F1控制直流电机的转速及正反转的问题。之前的问题一直没解决,开始以为是因为单片机给直流电机供电,3.3V的电压太小,所以导致变化不明显,结果今天在认真学习了L298N模块之后发现其ENA,ENB一直被跳线帽所连着,并没有发送调速的PWM波。接线之后速度变化变化明显。
关于L298N的关于ENA和ENB键帽,拆下后ENA和ENB分别有两根线,与IN1-4平行的是ENA和ENB使能端,剩下的是5V电源针脚。由于必须在ENA或ENB处于高电平时,才能使相应的电机运转,所以通过键帽把它们默认接到5V电源上,使之默认为高电平。故若只需控制电机的正反转,可以不用管键帽,只关心IN1-4即可。若要对电机进行调速,则需拆下键帽,对ENA和ENB使能端输入PWM脉冲,而剩下的5V电源针脚空闲即可。
“关于ENA和ENB键帽,拆下后ENA和ENB分别有两根线,与IN1-4平行的是ENA和ENB使能端,剩下的是5V电源针脚。由于必须在ENA或ENB处于高电平时,才能使相应的电机运转,所以通过键帽把它们默认接到5V电源上,使之默认为高电平。故若只需控制电机的正反转,可以不用管键帽,只关心IN1-4即可。若要对电机进行调速,则需拆下键帽,对ENA和ENB使能端输入PWM脉冲,而剩下的5V电源针脚空闲即可。”
关于OLED首先要注意供电电压3.3v就可以了。5v容易把模块烧了。
关于OLED的代码直接套用商家的就可以了,今天说一下在实际中遇到的一些问题。
首先是关于取模软件原理和使用:
在这里插入图片描述
从上到下,从左到右,高位在前。我们按这样的取模方式,然后把 ASCII 字符集按 126 大小和 160 大小取模出来(对应汉字大小为 1212 和 1616,字符的只有汉字的一半大!),保 存在 oledfont.h 里面,每个 126 的字符占用 12 个字节,每个 168 的字符占用 16 个字节。具 体见 oledfont.h 部分代码。
在这里插入图片描述
关于汉字的取模,可以看一下这张图片,字模选项中的点阵“点阵” 的值会对字模的编码产生影响。主界面中的“字宽” 与“字高” 的设置才是真正对显示到液晶屏上的字体的大小的设置。关于点阵的定义可以看一下图片。
最后自己用OLED显示了好多情话给对象,哈哈,感觉学习也没有那么枯燥。

发布了14 篇原创文章 · 获赞 7 · 访问量 3522

猜你喜欢

转载自blog.csdn.net/qq_45186557/article/details/97678967