type
status
date
slug
summary
tags
category
icon
password
课程项目介绍
Mini打印机,这是一台可以打印你手机中任何东西的设备,学习中打印错题、单词、生活中打印标签、留言、贴纸、照片等等,可玩性非常高。
视频课程入口:
通过网盘分享的文件:【单片机嵌入式Arduino实战】手把手做打印机(完结)
链接: https://pan.baidu.com/s/1-9Vafr_ssK3bJmqDDvuDng?pwd=c7un 提取码: c7un
一、学习路径建议
1.1、零基础,精学所有
学习周期约:30天、1-2小时一天
1.2、零基础,只想学习硬件
学习周期约:20天、1-2小时一天
1.3、零基础,只想学习软件
学习周期约:20天、1-2小时一天
1.4、有编程和单片机基础,想快速上手完整项目
学习周期约:15天、1-2小时一天
无论哪条路径,强烈建议看视频配合文档学习, 95%的问题在文档中都有记录啦,细心都能找到答案! 学习过程中遇到不懂的点,可以在文档添加评论、视频发弹幕、交流群进行交流。 最最最重要的三个点: 一定要动手画图、动手写代码、动手做实验。 一定要动手画图、动手写代码、动手做实验。 一定要动手画图、动手写代码、动手做实验。
1.4.1、关于板卡外壳拼单
【打印机项目电路板、外壳拼单】
可以看这里哦:拼单链接
链接打不开,或者提升商品失效时,可以复制到淘宝中打开哦。
对于只想学习软件部分或者快速玩起来的小伙伴,想一起拼板的,现在可以在这里一起拼单啦!!!
第一轮拼单数量有限,只有80套哦, 需要的小伙伴请留意哦。
拼单板卡快速烧录使用,外壳安装请看:6、烧录固件&问题排查-快速玩起来
【基础教程电路板和外设实验包拼单】
可以看这里哦:基础外设实验板卡
视频链接入口:基础部分视频
1.5、课程内容
https://www.processon.com/view/link/64f2ab55817f3d0fa3ef3b75 访问密码:bjPV
二、基础部分资料
视频链接入口:基础部分视频
资料链接入口:
2.1、什么是Arduino?
Arduino是一个便捷灵活、方便上手的开源软硬件平台,包含硬件(各种型号的arduino板)和软件(arduino IDE开发环境)。它不仅适用于工程师进行快速原型开发,也同样适用于各行业对软硬件产品有兴趣的朋友们。
2.2、开发板应该怎么选择?课程使用哪块板卡?Arduino与ESP32的关系?
Arduino是开源的软管硬件平台,所以加入Arduino生态的芯片公司、开发板公司也非常多,所以我们在学习过程中可以选择的开发板种类也非常多。
2.3、应该在那里写代码?哪里编译代码?
2.4、如何搭建一个工程,然后编译快速跑起来?
2.5、常用编程语言关键词,从这里开始学习代码基础
2.6、从技术原理的角度看下,LED是怎么被点亮的?
2.7、我们已经把芯片的运行状态打印到电脑显示,但它的技术原理是怎么样的?
2.8、编程语法学习的进阶
2.9、如何读取按键状态?
2.10、如何使用计时和定时器功能?
2.11、如何读取模拟量?
2.12、如何驱动舵机,并让它旋转到对应角度?
2.13、蜂鸣器是如何驱动的?
2.14、一个酷的应用怎么少得了一个屏幕显示呢?
这节课,我们使用屏幕显示需要显示的内容,然后做一个Mini时钟。
2.15、有哪些常用的电机类型?
直流电机和步机电机的区别,直流电机的驱动原理是什么,步机电机的驱动原理是什么?
三、Mini打印机项目部分资料
需求分析部分
3.1、项目硬件部分:
1、嘉立创EDA-快速设计一款板卡
2、ESP32最小系统绘制
3、ESP32最小系统优化
4、外围驱动设计
3.2、项目软件部分:
5、软件模块
3.3、固件快速烧录&问题排查
四、PCB最终版本工程
PCB工程
关于出现PCB DRC检测报错问题,是立创工程导出问题导致,目前版本已修复。
如果出现:可以选取报错的那几个过孔,在右侧的属性栏目,修改网络为VH先
关于SMT贴片选型:
ESP32可以选这个型号:https://item.szlcsc.com/736349.html
也可以在淘宝乐鑫官网购买ESP32-WROOM-32E-N4
工程如何使用?
下载后,打开立创EDA专业版,在快速开始中,点击“导入专业版”即可,不用解压。
对应PCB和原理图如下:
原理图
五、打印机板卡软件工程
5.1、打印机源码
建议使用v1.0.3版本,修复打印效果
源码如何导入VSCode使用:工程源码导入VSCode使用
5.2、打印机固件-首次使用-问题排查&快速烧录请看
六、整机安装-结构外壳-零配件自行购买请看
七、APP源码&安装文件
Android源码
Android APK,发送到手机,然后安装(安装时注意文件后缀为.apk,如果通过微信发送到手机,注意后缀可能会被改为MiniPrinter.apk.1,需要自己保存到文件中,然后修改名称为MiniPrinter.apk再安装。)
ESP32版本使用:
STM32版本可以使用下方apk:(使用时,在首页需要选择芯片类型为STM32)
- 如果Android系统大于或等于12,需要开启位置权限,否则会闪退。
- 默认需要蓝牙、蓝牙搜索设存储的权限。
注意:如果是STM32版本,在启动APP时,需要选择STM32版本哦,否则打印不了
IOS源码
https://github.com/xinnyu/MiniPrinter
iOS应用,直接在App Store搜索迷你打印机,然后下载安装即可
注意:如果是STM32版本,在启动APP时,需要选择STM32版本哦,否则打印不了
APP内容展示:
八、附加部分:STM32版本
飞书链接:Mini打印机-STM32版本 密码:j^k556u7
九、可持续优化迭代方向
- 蓝牙通讯可靠性:思考如何提高蓝牙通信可靠性,减少丢包
- 通信安全优化:思考如何加入安全策略,避免出现安全问题
- 打印速度优化:思考如何提高打印速度
- 待机功耗优化:思考如何在软硬件层面做功耗优化
- 单通道打印适配不同规格纸张
- IP网络打印机
- PC串口打印机
- 电量采集精度优化
- 温度采集精度优化
希望大家可以基于项目做更多的思考,总结出属于自己独一无二的亮点。
十、简历、毕设描述参考
编写毕设、简历时,请一定要根据自己实现过程中的思考、总结、优化编写,保证写到简历上的每一个点,自己都知道背后的原理以及为何如此设计,切勿不经过思考,随意复制,否则面试官多问几句就漏出马脚。
项目介绍: 蓝牙打印机 项目描述: 电池供电,小型,打印机,蓝牙连接使用。 基于stm32/esp32,Freertos,Hal库开发,实现蓝牙通讯,日志打印设计与开发 负责模块: 负责电量、温度检查,BLE、打印任务,消息队列等模块的程序编写 项目亮点: 1、使用xx滤波算法,保证电量、温度精度 2、使用xx方式、xx协议,避免BLE通讯丢包问题 3、使用动态打印,在RAM仅剩8k情况下,打印384*1000的图像 4、识别图像深浅色区域占比,动态调整加热时间方式,打印效率提高50%
本课程提供一个Mini打印机项目,涵盖Arduino/ESP32开发板的硬件和软件设计,以及配套的APP开发(Android和iOS)。课程包含基础的Arduino入门教程,逐步讲解LED控制、按键输入、定时器、模拟量读取等,最终完成Mini打印机的制作。课程提供视频教程、文档、电路板及外壳拼单、源码等资源。学习周期根据基础不同而有所差异,建议动手实践。 课程还包含项目优化方向和简历/毕设撰写建议。
- 作者:羊语
- 链接:https://blog.yyai.tech/article/mini_printer
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。