当前位置: 首页 > news >正文

上位机图像处理和嵌入式模块部署(mcu项目2:串口日志记录器)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        淘宝上面有一个商品蛮好玩的,那就是日志记录器。说是记录器,其实就是一个模块,这个模块的输入是一个ttl串口,输出是一个tf卡。也就是说,这个记录器的作用,就是把ttl的信息记录到tf卡上面,有点类似于飞机上面的黑匣子。当然为了使用的方便,一般记录器还会搭配一个32.768k的晶振,以及一个5v的纽扣电池,它的作用就是在log生成的时候,同步添加上时间信息,这对debug的人来说,还是非常方便的。

1、实体的日志记录模块

        我们编写上位机程序的时候,都会手动添加一个log模块。但是,很多mcu的模块,本身flash就很少,自己又不想重新开发模块,所以补充添加一个这样的实体日志模块还是非常不错的。

2、主要实现的功能

        需要实现的功能主要有这么几个方面,

        (1)实现串口数据保存到tf卡上面;

        (2)实现上位机对模块的配置;

        (3)实现模块的低功耗运行。

3、上位机的开发

       上位机开发,主要就是对模块进行配置,配置的内容包括但不限于,

        (1)关于TTL的相关配置;

        (2)关于TF卡的相关配置;

        (3)关于RTC的相关配置;

        (4)关于文件的相关配置;

        (5)发送复位功能。

        上位机这部分可以和客户的输入接口进行复用。通过一个按钮进行区分,同时添加一个LED灯说明。默认是客户的信息输入,按下按钮之后,就可以利用上位机对它进行设置。

4、电路的设计

        整个硬件分成四个部分,分别是TTL、stm32f407、TF卡、RTC模块。TTL其实就是串口,这部分直接引出来即可。选用stm32f407,主要还是因为它资料比较多,本身也支持tf卡。TF卡部分,直接把sdio接线引出来即可。RTC模块。主要就是电源和晶振两部分注意下。

5、固件开发

       固件开发本身包含了两部分,一部分是bootloader,另外一部分是App。Bootloader这部分差异不大,我们主要把重点放在App这部分。

       从硬件流程来看,App的流程其实并不复杂。整个固件应该就是一个while(1) + 中断处理的形式就可以完成了。本身固件需要实现的内容如下所示,

       硬件驱动部分的实现,

        (1)GPIO输出功能实现;

        (2)Key按键实现;

        (3)数据串口和Debug串口实现;

        (4)TF卡的读写;

        (5)RTC功能的读取;

        (6)内部flash的读写;

        (7)看门狗功能。

        中间件部分的实现,

        (1)Fatfs文件系统的移植;

        (2)串口命令的解析。

        业务部分的实现,

        (1)获取串口数据,保存到TF卡当中;

        (2)实现上位机的配置;

        (3)低功耗设计;

        (4)一键恢复配置的功能。

http://www.lryc.cn/news/398423.html

相关文章:

  • 容器是线程不安全的,如果多线程下不加锁直接使用容器会发什么
  • 配置光源——笔记
  • Java---SpringBoot详解一
  • MFC扩展库BCGControlBar Pro v35.0 - 可视化管理主题等全新升级
  • Springboot 配置 log4j2 时的注意事项
  • 微服务-初级篇
  • 批量制作word表格
  • 代码随想录算法训练营:27/60
  • Redis 中String类型操作命令(命令演示,时间复杂度,返回值,注意事项)
  • 2024亚太杯中文赛B题洪水灾害的数据分析与预测原创论文分享
  • Oracle 19c 统一审计表清理
  • PostgreSQL(二十二)缓冲区管理器
  • 流程制造业与离散制造业有何差异?流程行业智能制造关注什么?
  • 【论文速读】《面向深度学习的联合消息传递与自编码器》,无线AI的挑战和解决思路
  • C++从入门到起飞之——输入输出!
  • 米文AD10配置gmsl摄像头操作
  • 【Selenium配置】WebDriver安装浏览器驱动(ChromeEdge)
  • 预测算法面试
  • 号称世界上第一个开源实时翻译的 App,微软开源GraphRAG:极大增强大模型问答、摘要、推理,以及开源基于ChatGPT的超级文本代码智能体(附代码地址)
  • PyTorch 2-深度学习-模块
  • 【MyBatis】MyBatis 理论 40 问(二)
  • 数据分析——Python网络爬虫(三){爬虫基本原理}
  • Linux 忘记root密码,通过单用户模式修改
  • 安卓热门面试题二
  • agents 分类
  • 【期末考试复习】概率论与数理统计(知识点模式 - 复习题2)
  • Jetpack Compose实现一个简单的微信UI
  • myeclipse开发ssm框架项目图书管理系统 mysql数据库web计算机毕业设计项目
  • 网络安全防御 -- 防火墙安全策略用户认证综合实验
  • 捷配笔记-PCB阻焊颜色对产品有什么影响?