
micropython
三十岁开始学编程的大叔
这个作者很懒,什么都没留下…
展开
-
micropython 如何批量上传文件 上传整个文件夹
不同人有不同的习惯,对于micropython来说,上传文件也有很多方式,但是我相信很多人一定困扰过这样的问题,上传一个py文件容易,但很多项目都是有很多文件夹和文件的,有没有简单的方法能批量全部上传呢,一个一个传也太累了,答案是,最后再说一下,由于thonny和板子是通过串口连接的,所以上传文件的速度并不是很快,上传几个k的py文件是很快,但是如果上传其他素材类的,上mb的,就要等比较长的时间了,好在thonny也有进度条提示。勾上之后就会出现类似资源管理器的界面,可以批量选中之后,右键上传就可以啦。原创 2024-05-02 09:41:55 · 794 阅读 · 1 评论 -
二哈识图Micropython通信库移植
有单子需要我做这个,好在官方之前有个给树莓派用的python库,这里简单移植一下,就可以给micropython用了。板子是k210为基础做的,难度不大,做的还行,我啥时候能亲手做一个这种规模的板子啊,哎。原创 2023-06-08 15:06:27 · 525 阅读 · 2 评论 -
整个好活:micropython utf-8转gb2312
我大mpy对中文的支持惨啊!默认编码就是一个utf8,你用.encode()里面加各种参数是行不通的啦!上网搜utf8转gb2312,全是直接给你encode的,我是单片机啊大哥,有那能力我折腾什么还,所以一顿操作猛虎如之后,就有了下面这个无需任何依赖的转换工具啦,还不快收下!当然如果有更简便的算法欢迎联系我,我也不想这么折腾,但是为了壮大micropython,拼了。如上不需要任何库,但是因为查表,需要一个utf2gb2312.bin文件。原创 2023-04-20 06:48:55 · 2490 阅读 · 22 评论 -
micropython RX8025T 驱动简单演示
代码拿去,其实巨简单的。没啥好说的,而且只有基本功能。嫌一般的RTC不够精准是吧,想用个带温度补偿的试试?我就知道可能八百年会有一位大哥来找这个驱动。让我来猜猜为啥用这个。原创 2023-03-26 20:38:38 · 581 阅读 · 0 评论 -
全网最简洁的mpy-cross教程
第一,文件体积会减小,运行速度得到提升,文件变换形式储存,原本爆内存的程序,没准你转了mpy文件之后,哎,不爆了;第二,你的py内容会得到加密,也就是说别人看不见你的源码,如果硬扣也可以猜出文件的结构,不过应该没人闲的干这种活儿,有逆解析的时间,不如重新写一个了。比如我1.18系统编译出来的mpy文件,是版本5,就只能用在1.12-1.18的版本,其他版本即使硬件相同,对不起,不好使,最新的1.19是版本6,跟之前完全不兼容的!首先你要懂,mpy-cross是分版本的,不通版本中间是无法通用的!原创 2023-03-20 15:23:28 · 2401 阅读 · 2 评论 -
关于micropython无法计算MD5的问题 AttributeError: ‘module‘ object has no attribute ‘md5‘
这个错误好几年没有修!真欺负没几个人用这个方法么?二、我就知道你懒得或者不会编译固件,喂饼,拿去吧。文档写的明明白白,一跑就是没有方法。据说关了是因为省内存?我大MPY不能算md5?不可能,绝对不可能!原创 2023-03-13 12:18:11 · 577 阅读 · 1 评论 -
micropython lvgl xpt2046的校准程序
转自GITHUB lvgl issue 原作者是谁我真不知道,反正不是我。话说xpt2046 这个触控屏实在是太老了 但是也太经典了。2023年了 还拿个笔在电阻屏上戳戳戳。没办法 哪里都有XPT2046这货。不废话了 上代码 好好看 好好学。原创 2023-03-11 09:09:22 · 1138 阅读 · 0 评论 -
又搞定一块屏幕 micropython 驱动 sharp memory lcd
移植没难度,不过有个大坑,都2023年了,mpy还不支持LSB,只支持MSB,离大谱,手动硬改成了LSB,能用,速度贼慢,下一步琢磨优化一下。原创 2023-02-25 19:00:53 · 723 阅读 · 2 评论 -
来来来挑战一下micropython 并口8080 py驱动
地址在这了,挖个坑,有时间就来一下,目测有戏。原创 2023-02-23 12:04:20 · 368 阅读 · 0 评论 -
将micropython的py文件直接读取为bin文件
分区表是个啥啊,就是跟硬盘的分区表一样呗,记录了各种文件的烧录地址,通过分区表我们可以得知,我们的py文件在0x200000这个地址。如果想要量产产品的话,每次烧录固件——thonny连接——传文件其实还挺麻烦的,有无快捷的方法?这里看你占用了多少flash了,我随便写了个1m,为了追求速度你可以更小的设置。完事 以后直接烧录这个带程序的bin就好啦,有main.py的话直接上电运行了。combine 正常的firmware.bin 和 py.bin。第一步:提取py文件的bin。原创 2023-02-12 19:56:45 · 1154 阅读 · 3 评论 -
一个想法造一天——micropython究极爬虫
不得不说onenet的文档就是坨答辩,每次去都翻半天,就特几个get put post方法,绕绕绕,而且文档一直没更,结构逻辑特乱,新人根本找不到地方,耐着性子搞好了,最后还研究了一下可视化,app的不能用了,可视化基础版还可以,这里错怪onenet了,做好的在这。想搞定PC端的爬虫,然后玩了下github action挺好,初步的会了,就是push仓库那里总是错,不知道差哪了。最后听说用github action搞爬虫容易封号,吓得我赶紧把一小时一爬改成了一天两爬,再封我我认了。今天琢磨了一天,实现了。原创 2023-01-25 18:02:18 · 831 阅读 · 0 评论 -
最新最专业!micropython1.191 24个时区的NTPTIME方法 旧方法已经失效啦!
其实简单得很哦,ntp的灵魂就俩,一是选服务器,国内一般都是ntp1.aliyun.com,我是不会偷偷告诉你ntp2.aliyun.com到ntp9都是可以的,所以嘛。第二是时区问题,全球的24个时区,要加上时间差的,所以说我为什么要在咸鱼10个都卖不出去的产品上加全球的功能啊,啊,这就是我燃烧的程序猿灵魂啊!最近跟老铁做了个VFD时钟,忙的不亦乐乎,所以说我只编两种程序,一是挣钱的,二是感兴趣的。服务器都写好了,不用改了,改不同时区就用不同的ntptime.NTP_DELTA就行了!原创 2023-01-19 21:13:13 · 1105 阅读 · 7 评论 -
micropython 发送邮件 email
这里已QQ邮箱为准,测试前记得打开SMTP服务,在qq邮箱设置里面,而且这里的密码不能用qq密码,而是要使用单独的授权码作为密码。python发邮件很容易,那么mpy呢?原创 2023-01-09 17:21:01 · 1587 阅读 · 0 评论 -
LVGL官方UI设计软件——SquareLine Studio micropython 使用简单测评
1.micropython的代码生成有BUG,有个lv.content的用法,软件自动生成全是错的。综合以上几点,我的使用建议是:用免费版白嫖,然后只用代码生成功能学习micropython的lvgl如何使用,从这个角度上讲,这个软件就非常良心了,各类的设置很齐全,把它当作学习lvgl的辅助软件,很赞,毕竟官方还送了那么多的例程代码可以学习。小型商业版价格16刀每月,商用版是129刀,功能上,主要存在屏幕数量,插件数量,和组件数量的差别,这个组件我的理解就是使用一些高级的组合功能,比如做个圆盘时钟之类的。原创 2023-01-09 08:07:48 · 7303 阅读 · 0 评论 -
micropython 驱动电机实操 驱动板pca9685
上来先踩个坑,因为图便宜先买了一个淘宝的国产电机驱动板,号称代替PCA9685,上当了,搞了半天,I2C地址都扫不到,奶奶的,玩我是吧,狗都不用这破板子,就是这个LU9685,说的就是你,还特意买了俩,I2C都没接通,恨死你,客服十天不答复,手册上跟PCA9685的用法也完全一样,信你个鬼!这次想做个好玩的,驱动电机组,其实是要带17个电机的,常见的电机驱动板PCA9685可以带16个,先凑合用吧!找到了一些动手能力强的小伙伴,修正了我自己手残的BUG。后面我会发布效果,先卖个关子。原创 2023-01-06 10:08:17 · 1743 阅读 · 1 评论 -
编译esp32cam micropython 固件
对于esp32cam,我的印象其实不咋地,可以说除了便宜一无是处,画质渣,速度慢,可用引脚所剩无几。文档基本没有,看函数自己也能猜个大概,唯一的毛病就是camera.init()这句一次上电只能运行一次。不过也是无伤大雅了。难度不大,readme有完整的教学步骤,现在终于会了一点添加idf组件的方法了。原创 2022-12-25 11:17:59 · 1152 阅读 · 0 评论 -
全宇宙首发 micropython lvgl on esp32s3已经被攻破!
现在新点的屏幕板子都用s3了,谁还玩esp32啊,更多的引脚,更强的处理器,太合适啦!我啥也没干,只是把国外大佬的库编译了一下,发现能行!合并到官方只是早晚的事儿。我写的testcode。激动的心,颤抖的手。原创 2022-12-19 16:51:22 · 3348 阅读 · 7 评论 -
micropython最牛的TCP服务器
帮沈阳老铁做个项目,需要esp32 24个组网。。。然后难倒了我了!有线传数据吧,串口线吓死人,spi,i2c,mpy不能做从机,告辞!无线的,espnow太飘渺,而且怎么获取mac地址啊,这是个问题,蓝牙最大10多个,主要是24个有点多,如果4个那不是随便拿捏。。。最后盯上了tcp,udp有点佛系,我还是尽量稳定的。。。然后老问题来了,连一个,网上一堆教程,连多个。。。呵呵,没了,也没人测试,当然我也没有24个esp32一起测。难点就在于一对多,既不能卡死阻塞,也得支持掉线自动重连,现在压力来到原创 2022-12-07 21:27:40 · 1243 阅读 · 0 评论 -
micropython i2c salve 做 i2c从机的方法
最后我翻到了一个pico做从机的代码,这里使用了mem32方法,就是直接对硬件寄存器进行了操作,esp32这块乱的一锅粥,肯定不通用的,当然esp32跟pico的代码我都没有测试,一眼看上去,pico的代码应该好用的。群里以位大佬给了个猜想,做从机需要很高的及时性,就是要一直在线处理i2c的业务,很明显mpy不适合做这个,这个猜想我没有做验证,不知道是否正确,只能先认为这个说法靠谱。核心代码,直接上,直接怼寄存器的都是狠人,前几天自己研究pio变成,都已经头大得狠了,底层真是头秃啊。原创 2022-12-01 22:10:01 · 980 阅读 · 2 评论 -
micropython 固件编译关于 spi psram opi qspi 的设置
一顿冥思苦想,会不会是spi mode设置有问题,于是不用默认的DIO,用了QIO,好了,好耶!这么重要的事儿就给我藏这里,真不拿我mpy当个事儿是吧,行知道道理了,又是一顿搜一顿问。问题又来了,带psram的固件刷不进去,那我8m的psram不成了摆设了,不服!最后伟大的,高尚的的,无私的,不朽的,走线物联群主,给了答案,拿小本本给我记好了啊!想用这个做一个赛车游戏,隔壁有人做了个RPG,眼馋了,我也挑战一下。最近可能是压力大了,沉迷这种自我兴趣但是不恰饭的玩意儿了,堕落啦!原创 2022-11-30 12:30:06 · 982 阅读 · 3 评论 -
关于mpy电压采集模块的那些事儿(ads1256 ads8688 ad7606)
先来个人生碎碎念,越狱第三次失败了,而且第四次也可能失败,没错就是这么尴尬,绝对越狱的事件还有917天,其实比较麻木了,越狱成功与否都无所谓了,其实现在出去,外头的疫情,日子也不会好过。以前我说过mpy不适合高速项目,所以这里就涉及到较真的采样速率问题了,比如ad7606,官方给的最大采样率,8通道200k,这个速度对于mpy来说已经很吃力了,然后有的详情里面也有写,单片机实际达不到,具体是多少也没说。根本不能说明问题,互联网就是这样,想找点真正的资料很费劲,都是哪几片浅一些的文章抄来抄去。原创 2022-11-27 09:27:03 · 1749 阅读 · 4 评论 -
micropython 01stuido canmv 实现2048游戏
没打算自己重头写,移植一个pygame的吧,选代码的时候很看程序员功底,写的清楚的,读起来也快,移植也快,基本框架不变,主要就是改掉不兼容的地方,改写屏幕的输出方式。之前一直没有尝试写过游戏,来试试简单的,找了比较好弄的硬件,01的canmv,k210芯片,主要是跑视觉的,不务正业了。我有界面强迫症,自己重做了UI,看起来稍微好点,以单片机的水平来说,我感觉还可以了,做UI的时间占了一半儿。加了个BGM,在github发现了个比较好的蜂鸣器库,写的音乐比较有层次感,听了就知道了。原创 2022-10-31 14:26:36 · 880 阅读 · 3 评论 -
micropython ble 连接小米温湿度计2 获取数据
为了验证mpy的ble有多大本事,挑战点有难度的,别老整最简单那个uuid,试试别人的。晚上直接去米家专卖店拿了两个,回家就开干,个把小时的活儿,成功拿到数据。有些无伤大雅的小问题,懒得改了,懂原理是关键,原理懂了做啥都不怕。顺便又复习了一下ble,说实话,一段时间不搞还真有点忘了。代码老规矩,送了,没规范,你们自己研究。原创 2022-10-17 21:54:20 · 2554 阅读 · 11 评论 -
重磅!python获取同步输出的桌面网易云音乐歌词(内存偏移获取)
最直观的就是游戏数据,血量,金钱之类的,小时候应该很多人都用过金山游侠修改数据,就是那套原理,那么歌词作为文本,也是数据,为啥我不找找呢,于是搞了个CE打法,先显示英文的歌词,一直查找第一位字母的ASCII码,果然找到了,歌词不是什么敏感数据,一般也不会加密之类的,所以很典型很顺畅的找到了。最喜欢研究跟音乐相关的东西了,就像有的人爱喝酒吗,我离不开音乐,撸代码的时候,来点音乐,状态飙升,就跟晚上有人喜欢自己买点花生米小酌一下。这样就做好了,感觉干了件大事,网上没有相关资料代码,全靠自己摸索哦。原创 2022-10-16 11:20:27 · 1935 阅读 · 13 评论 -
又拿下一块屏幕,中景园2.08寸OLED SH1122 带字库芯片 GT30L32S4W
难点在于frambuf的转换,如何从单色转成4位灰度啊,我没找到,于是不得不重新自己写了个函数,我水平却是不大行,能用但是感觉效率比较低下,有点慢。没图没真相,一直知道有字库芯片这么个东西,终于找时间下手试了试,还算比较好用,就是开始卖家资料给错了白浪费俩小时。还有个难点就是mpy没法转中文的gbk啊。头大,我想想办法再。sh1122 刚好mpy论坛有程序,直接白嫖。字库芯片 参照我徒弟的库,简单重新写了下。原创 2022-10-08 12:29:17 · 2396 阅读 · 2 评论 -
伟大的micropython smartconfig 配网它来了!!!
之前一大堆人问我配网的事儿,输入下wifi名称密码这么麻烦吗,好吧,有求必应,之前的配网是通过ap模式建立热点来搞定的,确实不够优雅,现在智能配网他来了!首先纯mpy解决不了,别想了,因为mpy的network不支持混合模式,无法解析网络数据,门都给你焊死了!肯定还有人问我固件,我打了个esp32的,需要的自己来拿吧。下面一行 大约84行左右。完事儿了,make吧。原创 2022-09-28 22:59:07 · 3563 阅读 · 17 评论 -
3d打印的第一件 micropython中空时钟(hollow clock)
可以看到还是有点唬人的,乍一看比较好玩,细一看原理很简单,组装也简单,总体成本一个几十块, 不贵。缺点:校时是个困难活儿,自己调节参数,只有一个参数,快了改大,慢了改小,得自己摸索一下。上代码,顺便用了Micropython步进电机控制,很基础很简单。优点:新颖好玩,静音(用的步进电机)原创 2022-09-10 12:40:45 · 1098 阅读 · 7 评论 -
micropython复现经典单片机项目(二)可视化音频 频谱解析(基本搞定)
果然兴趣是最好的老师,我之前有篇博客专门讲音频,有兴趣的可以回顾一下。对,我忍你很久了,我就想用mpy做,全网没有,行我自己研究。研究中,研究好了再更新,立贴证明我的决心。arduino上一大把。原创 2022-09-03 23:18:38 · 2362 阅读 · 1 评论 -
micropython复现经典单片机项目(一)旋转立方块
以前单片机经常看到有显示旋转立方块的,但都是arduino,找了一圈经常没发现有Mpy的,也可能是我搜的关键词不对,管他呢,自己移植一个,用到的知识有矩阵计算、3d物品在2d平面的投影等,也是一知半解,主要程序移植对了就行,不多说了,上代码。...原创 2022-07-23 21:00:05 · 629 阅读 · 0 评论 -
micropython建立ftp(客户端)
答应好的客户端代码来了,还是github上的代码,分为三个部分,config.json配置文件,ftplib库和main主程序,当然想合成一个自己改一下即可,也不难。这个程序还是有点用处的,比如直接读取服务端的某个文件,也是无线传输的一种方式,当然由于esp32本身储存空间有限,只有几M,还是读取数据类的txt等比较合适。踩坑提示:win10建立ftp反而挺繁琐,而且会出现本地访问ftp有效,其他机器访问不行,这时候要把对应的进程文件通过防火墙即可,安卓倒是有一键建立ftp的app,比电脑方便多了。原创 2022-03-25 07:18:51 · 8358 阅读 · 5 评论 -
2021.11.4
即将第三次越狱失败,化悲愤为动力。从今天开始点燃了PCB的技能树学最傻瓜式的,立创EDA,主要是得恶补一下物理知识。然后发现csdn也有类似github的东西,为啥用的人那么少呢原创 2021-11-04 07:45:04 · 93 阅读 · 0 评论 -
如何在micropython固件中加入自己的py库
想做这件事儿很久了,今天研究一下发现还挺简单的。这里以micropython1.16为例git之后,找到micropython\drivers目录,新建一个自己的文件夹,比如cs然后找到ports\esp32\boards目录下,找到manifest.py文件,参照默认的格式加入自己需要的py文件后编译固件即可,这下再也不用现拷贝各种Py库了,固件刷完了直接import即可,而且别人还看不到你py文件的内容,岂不美哉?...原创 2021-10-07 21:14:14 · 4339 阅读 · 4 评论 -
micropython时间戳和python时间戳的差异以及转换
开发遇到的很现实的问题就是需要与别人的数据和程序对接,今天做时间戳的时候发现,micropython的时间戳居然和电脑版的时间错不一样,不是大问题上网百度了一下原因,原来micropython时间戳的起点跟其他的不一样(真够各路的),所以做时间戳转换的时候需要加上一个时间差946656000秒,然后问题就好解决了,附代码我自己写的转换函数:import timefrom machine import RTCrtc = RTC()def synctime(t): s=int(str(t)[0原创 2021-10-05 12:05:37 · 1830 阅读 · 0 评论 -
手动编写SHTC3的micropython驱动(附思路)
搞Micropython已经有半年多了,其实从一开始想给屏幕写个驱动来的,那时候刚入门啥也不懂,看啥都是天书,头大得很,现在已经陆续搞定了不少传感器等器件了,遇到新东西一点也不慌了,最近有个网友让我帮搞一个SHTC3的驱动,我直接答应了,说没有我搞不定的,哈哈牛逼先吹出去了。先说一下给某期间写驱动的思路:1.自行百度一下你要写的是什么东西,心里大致有个数,我一听SHTC3谁知道什么鬼东西,搜一下就知道,温湿度传感器,I2C通信接口,一看就大致有数了;2.尽全力可能搜一下现成的资源,这一步也挺关键,有现原创 2021-08-24 10:17:41 · 1617 阅读 · 8 评论 -
micropython urequests 无法正确解析网站接口json的问题
有b站的小伙伴问了我这个问题,在用requests请求的时候无法正确解析json内容,我查了一部分资料,主要是返回的数据被压缩过了,无法正常解码,所以要先解压再解码就好了,上代码参考:import uzlib as zlibimport network,time,ujsonimport urequestsFTEXT = 1FHCRC = 2FEXTRA = 4FNAME = 8FCOMMENT = 16def decompress(data): assert原创 2021-08-07 07:05:04 · 1363 阅读 · 13 评论 -
从头自己研究编译esp32的micropython固件
本文的最初目的是将最新版的LVGL库刷到esp32中,之前只有别人已经编译好的固件,今天我自己从头折腾。步骤:1.选择一个虚拟机,这里我直接选择了VMware player,因为他简单好用,我不需要那么专业复杂的虚拟机;2.选择liunx系统,这里我选的是unbuntu,这个系统知名度高而且我比较有好感,直接去官网下了ISO,在VMware player16中可以自动识别出这个ISO文件,安装一路按照默认设置,没遇到问题,就是安装系统下载资源的时候比较慢,建议上梯子;3.开始找网上教程开干,参考链接原创 2021-05-06 15:08:40 · 3974 阅读 · 6 评论 -
esp32 红外接收
最近接到李工的邀请,想弄一下红外的发射与接收,因为手头没有红外发射管,所以先研究了一下红外接收。先百度了一下原理,经过练习给屏幕写驱动,看这类的原理图时已经没有那么发怵了,NEC编码的红外发射看起来还是比较简单的,其实我最佩服的是发明这些编码规则的人,优雅而精准。在树莓派上找到了一个范例,进一步降低了难度,现在主要做的就是移植代码了,到这里整个工作思路已经很清晰了:1.读懂红外编码规则;2.尽量找到类似源码移植或者改写,实在没有就和能从零开始自己写;3.找到了代码,读懂代码;4.开始移植5.测原创 2021-02-27 23:11:08 · 3129 阅读 · 0 评论 -
开始啃LVGL!
LVGL全称Light and Versatile Graphic Library简单理解为 轻量级图形库,很适合给嵌入式系统做图形界面开发。难点:1 手册纯英文,网盘上找到了中文手册,但是版本很老了,据说修旧版本的并不兼容2 micropython资源极少,硬件编程的老大哥仍然是c语言,python作为进来的小弟,牌场差的远,官方也只是说了支持,例子少的可怜,于是自己搞把有点:好看好用装逼这就够了啊!!!...原创 2021-02-03 10:03:23 · 1466 阅读 · 1 评论 -
开始着手研究给屏幕驱动
其实一直想研究这个了,之前都是用的现成的驱动,遇到没有i驱动或者有问题的就傻眼了,自己也尝试过去啃英文的技术手册发现根本无从下手。今天终于从B站看到了一个很良心的免费教程,看了二十分钟真的有种醍醐灌顶的感觉,很久没有那种舒畅的感觉了,终于能入了门,现在手头有lcd1602 ssd1306 还有两块lcd屏,甚至一块墨水屏,终于可以着手给屏幕写驱动了,首先从lcd1602入手,最简单,而且网上中文手册比较全面。这里必须推荐一下这个UP,感觉不去当老师可惜了,思路很对头,完全知道听课者的疑惑点在哪里B站u原创 2021-01-31 10:35:47 · 315 阅读 · 1 评论 -
用蜂鸣器来首月光奏鸣曲第三乐章怎么样
最近买了块pybase的板子,主要为了学习micropython,最后选择了01studio家的,不是我打广告,我博客也没人看,没有必要打广告哈哈,主要是他家的教程确实是全网最细的,昨天自学到蜂鸣器,DAC这一章了,突然反应过来,家里的热水器什么的那种自带音乐芯片的会不会也是这个玩意?自己也懂些乐器,所以干脆自己编个曲子得了,为了显示出硬核,来首贝多芬的月光奏鸣曲第三乐章好了。先找到了音符与hz间的联系,乐理上大概是每半音相差1.06倍,也就是一个八度刚好差2倍,找了张图:然后就是撸代码!'''实原创 2021-01-26 16:16:32 · 3169 阅读 · 2 评论