学习STC51单片机41(芯片为STC89C52RCRC)智能小车8(测速显示到OLED显示屏)

每日一言

把绊脚石踩成台阶,今天的每一步都在靠近山顶。

案例:OLED二次开发显示测速

这个功能的实现就是利用我们之前的代码进行搬砖

这一节还有一个重点:

就是其实我们之前写的OLED进行实现文字或者是字母的操作的话,实际上是让我们学会自己去实践去了解原理,但是实际上,开发厂商已经做好了相关的代码,很多的基本上的字符都有,我们可以直接借鉴利用厂商的代码,因为我们如果是实现一个不会动的字符ABCD那么可以自己去玩一玩,可以自己去用字模工具取出来,但是对于如果是动态的话,自己去做取字模那么工作量就很大了,我们就需要将厂商的代码拿来用,虽然厂商也是将字符用字模的方式取出来,但是他们呢提前做好了,我们只需要利用他们厂商的算法进行对他们取出来的字模进行使用即可。

代码展示

Main.c文件的代码

比如这边我们需要显示个小车的速度在OLED屏幕上面

  1. 初始化(都用厂商代码)
  2. 清屏函数
  3. 我们使用厂商的代码Oled_Show_Str(x,x,x)具体要继续往下看,显示一个字符串在OLED屏幕上面

Oled.c文件的代码

就是这边我们就不讲之前的分文件的操作了,直接将之前的Oled显示一个字符A的代码进行分文件就变成现在这个样子

这边这个两个代码就是厂商的一些算法,算法的作用是是调用他们的OledFont.h文件的字符,就是怎么去调用它们,然后这个写指令Oled_Write_Cmd和写内容Oled_Write_Data的这个函数是我们之前写的那个

Oled.h声明函数

OledFont.h文件,这个文件就是他们厂商的8x16的字符和数字和字母那些,也有16x16的那些汉字,但是我们这边先不用

调用后效果是这样的

案例:蓝牙显示速度和速度显示到OLED

程序员要开始搬砖了,就是将我们的功能上添加到我们的测速模块的代码,进行整合就可以实现了

展示代码:

没错就是这些,前提是讲oled.h和oled.c还有oledfont.h的文件都添加到这个工程,当然我们这个工程也是复制新建的,复制之前的测速小车模块的代码

主要改动就是mian函数里面要将初始化OLED,还有清屏函数 和while里面要添加一个Oled_show_Str(2,2,meg)

Meg是我们的发送的信息和会变动的速度,之前测速模块讲过这个springtf的作用

然后我们蓝牙模块连接上去就可以实现了,因为我们的串口助手在每隔1s接受到单片机传来的信息,只要串口会显示信息,那我们的蓝牙也是会显示信息

没错就这样我们的蓝牙小车带测速功能就实现了

测速显示在OLED上

相关推荐
不灭锦鲤4 分钟前
网络安全学习第59天
学习·安全·web安全
楼田莉子26 分钟前
同步/异步日志系统:日志落地模块\日志器模块\异步日志模块
linux·服务器·c++·学习·设计模式
旖-旎1 小时前
递归(汉诺塔问题)(1)
c++·学习·算法·leetcode·深度优先·递归
SUNNY_SHUN2 小时前
清华团队提出TFA-Net,用模板特征聚合破解工业异常检测中的“捷径学习“难题
人工智能·学习·视觉检测·github
SuperHeroWu72 小时前
【鸿蒙基础入门】概念理解和学习方法论说明
前端·学习·华为·开源·harmonyos·鸿蒙·移动端
speop2 小时前
TASK05 | Reasoning Kindom拟合的陷阱 —— 统计相关性不是推理
学习
深念Y2 小时前
感知机 ≈ 可学习的逻辑门?聊聊激活函数与二元分类的本质
人工智能·学习·分类·感知机·激活函数·逻辑门·二元分类
程序员大雄学编程2 小时前
学习资源总汇
学习
QH139292318802 小时前
KEYSIGHT N9030B PXA信号/频谱分析仪
科技·嵌入式硬件·集成测试
Shang180989357263 小时前
T31ZX 君正/INGENIC智能视频处理器T31ZX可提供软硬件资料T31Z采用先进的低功耗设计
嵌入式硬件·fpga开发·音视频·t31zx智能视频处理器