|
前段时间论坛有人发帖说有5.1元的彩屏POS卖。于是也跟风买了个,但是实际到手的和拆机视频的不一样,到手的缩水很多,特别是屏幕比较小只有1.8寸,一般的彩屏POS机屏幕有2.4寸(320*240)。这个分辨率很渣也只有160*128,屏幕显示颗粒感很强。
https://www.mydigit.cn/forum.php ... ;page=1#pid12663654
既然已经买了,就折腾下吧,搜索发现其主控MH1903S与合宙的Air105是同一款芯片,既然MH1903S不能重新烧录程序(应该是出厂是封了JTAG端口不能再次烧录,这次没有试过读写啊,直接替换了。以前有试过MH1902的POS机Jtag识别不了),那我重新买个Air105芯片焊上总可以吧。网上Air105这个芯片可是有全套的资料,而且支持Luat脚本语言。
合宙也挺给力,芯片8.8元一片包邮。随手买了一片。
下图已经是更换了主控芯片后拍摄的,原始开机画面等没有留念。
更换了芯片后跑了电路图,测试了LCD,键盘,蜂鸣器,触摸屏,摄像头等接口IO管脚。
随即用Luat脚本语言的DEMO写了个显示图片,触摸屏,蜂鸣器,按键等驱动都没有问题。这个难道不比合宙卖断货的19.9元的小开发板还香吗?
就是摄像头至今没有调通,不知道摄像头型号,改装之前也没有用逻辑分析仪测量信号。大意了。请知道的大侠共享下,谢谢!
内部图:只有主控芯片更换成Air105,飞线两根,主要原因是原设计是USB的数据线输出,而Air105要求串口下载,飞的2根线就是将串口线引到USB座子上,然后通过USB连接器进行烧录。
跑线路还发现右下角的QFN32空焊盘应该是焊ESP8285的WiFi芯片,本机只有4G模块,阉割掉了WiFi功能。
下图是跑线路的原始记录,各种接口定义都列出来了。
程序就是拿Air105的参考例程略加修改即可。
1、屏驱动
spi_lcd = spi.deviceSetup(5,pin.PE11,0,0,8,96*1000*1000,spi.MSB,1,1)
lcd.init("st7735",{port = "device",pin_dc = pin.PC12 ,pin_rst = pin.PB05,pin_pwr = pin.PC08,direction = 1,w = 160,h = 128,xoffset = 0,yoffset = 0},spi_lcd)
2、矩阵软键盘驱动
key_in = {pin.PA00,pin.PA01,pin.PA02,pin.PA03}
key_out = {pin.PA07,pin.PE09,pin.PE10}
softkb.init(0,key_in,key_out)
3、触摸屏管脚定义
YU=pin.PE07
YD=pin.PC03 --ADC通道4
XR=pin.PC04 --ADC通道5
XL=pin.PB04
4、摄像头还没有驱动成功,参考管脚在原始记录中有。
以上抛砖引玉,看看有没有人这么玩法。可以交流下,有些坑需要趟过去。
附:
初识Luat脚本语言,感觉很不适应,烧录工具只是简单的语法检查,没有编译功能,有些错误只有烧录到芯片上看串口打印才知道是什么错误。若不用串口根本不知道错误原因是什么,无法定位。很不方便。
个人觉得芯片能够做的事电脑主机软件当然能够做,烧录工具集成编译功能,将错误问题拦截在烧录前就好了。有问题不让烧录,软件提示出来。直到编译通过才允许烧录。以免浪费时间。
这个芯片还支持Keil直接编程,后续再尝试下,但无论是keil还是Luat,终归没有arduino阵营的好玩,资源巨多。随手就可移植个游戏。我用ESP32改装多个POS机游戏机,有感兴趣的后续可以更新发帖。
Air105这个芯片要是支持arduino就好了。。。目前这个POS机亮个屏后不知道干什么用了。。。
补充内容 (2022-8-7 21:02):
20220807更新:
上次说道Luat脚本语言很不习惯,想移植游戏等要花很大力气。于是不用Luat,改用RT-thread系统。
这个方便移植,RT-Thread支持Air105,后面gx... |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
打赏
-
查看全部打赏
|