数码之家

 找回密码
 立即注册
搜索
查看: 2903|回复: 8

[外设] 立创开源-DIY一个用pos机打印头的热敏打印机

[复制链接]
发表于 2022-8-26 16:16:02 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 xljxlj 于 2022-8-26 16:17 编辑

额。上次的帖子不能编辑了
搞完了,出现发下
本来是用的单键开关电路,但是那个调起来实在麻烦。。。最后采用了别人提供的简单粗暴的方式,缺点就是烧录时候需要一直按住电源开关

准备好打回来的板子。。。有点多,其实要求不高自己做个壳也成,这个外壳是两年前设计的其实现在可以3d打印
IMG_20220822_142313.jpg
用焊锡和铜柱连接板子
IMG_20220822_142641.jpg
IMG_20220822_143152.jpg
IMG_20220822_144028.jpg
IMG_20220822_151710.jpg
装上头
IMG_20220822_153423.jpg
IMG_20220822_154351.jpg

打印效果:
IMG_20220822_160301.jpg
IMG_20220822_161001.jpg
最后两个合影
IMG_20220822_161048.jpg


下面讲讲白嫖指南
程序:https://xljxlj.lanzout.com/i562V0ab9rxg
建议坛友以后分享小于100m的文件也用蓝奏云,百度云容易丢文件,这个只要不违法文件都不会没掉,还不限速不用登录下载
程序原作者是b站的小李子电子实验室,我改了改,原来是用的硬件stb引脚来分段加热,但是这种方法在全黑的页面下效果不好,而且电流不够会不够黑
于是接受 飞向狙沙 的建议在程序里面拆分数据,这样就省下了5个io,效果更好了,速度也更快
可以使用编译好的bin下载或者自己编译,记得用v4.1版本程序编译,编译之前记得修改蓝牙库,修改用的文件也在里面
软件拆分数据程序:
  1. void startPrint()
  2. {


  3.   int pinnumber;
  4.   int i;
  5.   int cache;
  6.   onprint = 1;
  7.   PowerONTime = millis();
  8.   if (PaperSta == 1) {
  9.     static unsigned char motor_add = 0;
  10.     Serial.println("[INFO]正在打印...");
  11.     Serial.printf("[INFO]共%u行\n", printDataCount / 48);
  12.     digitalWrite(PIN_VHEN, 1);
  13.     digitalWrite(PIN_STATUS, 1);
  14.     cache = -1;
  15.     for (uint32_t pointer = 0; pointer < printDataCount; pointer += 48) {
  16.       cache = -1;

  17.         if (analogRead(PIN_PTEST) < 2000) { //缺纸检测
  18.           break;
  19.         }

  20.       setp = 0;
  21.       while (cache != 0) {
  22.         if (cache == -1) {
  23.           cache = 0;
  24.         }
  25.         pinnumber = 0;
  26.         for (i = cache; i < 48; i++) {
  27.           pinnumber = pinnumber + shuzu16to2jingzhi[printData[pointer + i]];//这里用了excel公式做了个数组来统计0-255转换成二进制后1的个数(懒得写算法)输出当前行打印点数
  28.           if (pinnumber <= printpin) {
  29.             printDatacache[i] = printData[pointer + i];
  30.             if (i == 47) {
  31.               cache = 0;
  32.             }
  33.           } else {

  34.             cache = i;
  35.             break;
  36.           }
  37.         }

  38.         if (setp < MOTOR_SETP) {
  39.           goFront1(0);
  40.           setp = setp + 1;
  41.         }





  42.         sendData(printDatacache);

  43.         for (int j = 0; j < 48; j++) {
  44.           printDatacache[j] = 0;
  45.         }
  46.         if (pinnumber != 0) {

  47.           digitalWrite(PIN_STB1, 1);
  48.           delayMicroseconds((PRINT_TIME) * ((double)heat_density / 100));
  49.           digitalWrite(PIN_STB1, 0);
  50.           delayMicroseconds(PRINT_TIME_);

  51.         }

  52.       }


  53.       while (setp < MOTOR_SETP) {

  54.         goFront1(MOTOR_TIME);
  55.         setp = setp + 1;
  56.       }

  57.     digitalWrite(PIN_MOTOR_AP, 0);
  58.     digitalWrite(PIN_MOTOR_AM, 0);
  59.     digitalWrite(PIN_MOTOR_BP, 0);
  60.     digitalWrite(PIN_MOTOR_BM, 0);
  61.     digitalWrite(PIN_STB1, 0);
  62.     clearData();
  63.     printDataCount = 0;
  64.     Serial.println("[INFO]打印完成");
  65.     digitalWrite(PIN_VHEN, 0);
  66.     digitalWrite(PIN_STATUS, 0);
  67.     PowerONTime = millis();
  68.     onprint = 0;
  69.     jishu = 0;



  70.   }

  71. }
复制代码
这个程序目前还是有点bug,就是为了处理速度,这里是8个像素8个像素处理的,所以在设置时注意同时打印点数设置不能小于8,否则会死循环

然后是板子了:
打板文件:喵喵机热敏打印机V4.1_程序优化 - 嘉立创EDA开源硬件平台 (oshwhub.com)
所有板子都是1.6mm,拼板嘛,自己拼就行了,都拼一样的谁也过不了审
使用的app名字叫喵喵机,好像是作业帮旗下的?还可以打印错题

请不要用于商业用途
转载请注明出处

打赏

参与人数 4家元 +75 收起 理由
nokia5320 + 15
springvirus + 20 謝謝分享
hongo + 20 優秀文章
飞向狙沙 + 20 優秀文章

查看全部打赏

发表于 2022-8-26 16:39:12 | 显示全部楼层
做什么用,超市小条?
回复 支持 反对

使用道具 举报

发表于 2022-8-26 16:43:47 | 显示全部楼层
这个有点窄了,我有110mm长度的要不要一起玩一下。
回复 支持 反对

使用道具 举报

发表于 2022-8-26 18:09:06 | 显示全部楼层
这个都是电路板弄的啊
回复 支持 反对

使用道具 举报

发表于 2022-8-26 20:29:28 | 显示全部楼层
很强势,打印效果看上去很好了,屏我也点亮了,有需要的话可以发出来
回复 支持 反对

使用道具 举报

发表于 2022-8-27 20:28:42 来自手机浏览器 | 显示全部楼层
懂编程的都是大佬 只有羡慕的份
回复 支持 反对

使用道具 举报

发表于 2022-8-27 21:18:47 来自手机浏览器 | 显示全部楼层
记号下,膜拜大神。有时间了,也玩玩自己的pos
回复 支持 反对

使用道具 举报

发表于 2022-12-13 10:47:29 | 显示全部楼层
我以前的1元POS机,没有打印功能
回复 支持 反对

使用道具 举报

发表于 2022-12-14 09:51:07 | 显示全部楼层
这PCB板都玩出新花样了
回复 支持 反对

使用道具 举报

发表于 2024-3-26 15:24:04 | 显示全部楼层
图片画质感人
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-4-29 08:00 , Processed in 0.374401 second(s), 14 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

快速回复 返回顶部 返回列表