- 博客(23)
- 资源 (17)
- 收藏
- 关注
原创 基于esp32c3 rust embassy 的墨水屏程序
EPDReader是一款基于ESP32-C3的电子墨水屏阅读器,支持TXT阅读、天气预报、农历显示等功能。项目采用Rust no_std编程,在嵌入式开发中探索异步任务处理和低功耗设计。硬件包含4.2寸墨水屏、SD卡模块和电池供电系统,软件功能包括电子书阅读(支持分页/书签)、天气数据获取、日历显示(含农历/节假日)以及网络时间同步。目前存在同步显示、SD卡长文件名支持等技术问题待解决。该项目作为Rust嵌入式开发实践,代码已开源,体现了在有限资料环境下进行硬件编程的探索过程。
2025-09-10 20:53:54
466
原创 retro-go 1.45 编译及显示中文
本文介绍了在ESP32-S3开源掌机上适配retro-go模拟器的过程,重点解决了中文显示和性能优化问题。作者通过修改retro-go官方库(1.45版本),新增了中文字符支持,包括添加中文TTF字体转换功能,并启用了FATFS的UTF-8编码支持。针对中文列表浏览卡顿问题,深入分析了字库查询机制,提出通过建立索引数组优化字符查找效率的方案。文章详细说明了字体数据结构的改进方法,包括新增map类型支持和相关代码修改,最终实现了流畅的中文显示功能。这些优化方案已提交至作者修改后的retro-go分支(gith
2025-08-02 22:18:23
806
10
原创 linux cups 打印服务
摘要:本文介绍了通过Linux服务器安装CUPS打印服务实现无线打印的方法。测试表明,佳能G3800(自带WiFi)和惠普1007(无WiFi)均可通过CUPS实现无线打印。关键步骤包括:安装CUPS服务,为佳能安装Gutenprint驱动、为惠普安装HPLIP驱动,配置CUPS服务并通过网页管理界面设置打印机。特别说明惠普1007需用hp-plugin-i下载固件。文章还解释了CUPS(打印系统核心)、HPLIP(惠普专用驱动)和Gutenprint(多品牌驱动)之间的关系,指出CUPS是服务框架,后两者
2025-06-27 21:35:21
791
原创 关于内联的不确定性
摘要:Rust中的内联属性并不能保证函数一定会被内联,#[inline]仅是编译器参考建议。内联失败时可能导致自引用错误,如函数返回值在栈上被弹出后,内部自引用失效引发panic。Rust提供四种内联属性:默认由编译器决定、#[inline]建议内联、#[inline(always)]强制内联和#[inline(never)]禁止内联。注意内联是非传递性的,且不应依赖内联来实现关键功能,因其行为无法完全保证。(150字)
2025-06-27 21:11:18
872
原创 鱼缸远程、定时投饵
diy了一个鱼缸投饵的玩意,这还是年前做的,因为过年回老家,没人喂鱼了,挤了一天时间在以前远程开机的程序基础上搞了这么个东西来远程或定时投饵,一直忙,这两天没加班了整理了一下。通过这个远程控制的方法还可以做一些其他的功能,比如可以做远程开机把舵机用m3 胶粘在开机键旁,摆臂按下开关就可以开机,或者定时的做一些机械动作也挺不错的,我感觉还挺方便的有需要的可以拿去用。材料用到了esp32c3的开发板、一个sg90舵机、一个3d打印的支架和一个小可乐瓶。
2025-02-22 13:18:54
524
原创 milk-v duo 开机引导进入 rust 程序
milk-v duo 还是去年买的,又是esp32 又是rp2040 的,搞搞lcd 又搞搞墨水屏 又弄弄 memory lcd,乱得狠,啥都想玩玩,玩不过来,最近抽空看看 这块duo 想裸机跑下rust 试试。找了一圈总算是有些眉目,找到一些在 uboot 或 opensbi 后引导的方法,随即尝试了一下,成功通过串口打印出信息,记录一下。
2024-12-14 23:03:55
868
原创 基于rp-pico 设计的MakeCode arcade 图形编程游戏机
基于rp-pico 设计的MakeCode arcade 图形编程游戏机
2024-10-19 18:07:50
1232
原创 驱动夏普1.26寸 memory lcd
买了几块 夏普的1.26寸 memory lcd 型号为 LS013B7DH07,这种屏幕显示有点像墨水屏,只是白色不是那么纯有点偏银灰的感觉,比普通墨水屏刷新快很多,在不刷新的情况下墨水屏显示更好,需要频繁刷新的情况下memory lcd 是更好的选择。
2024-10-18 19:30:00
1483
原创 严格与松散
但松散也有其优点,松散则更灵活,处理一个问题时相对严格的方法需要的步骤更少,需要的时间也就更少,可以快速按自己的想法来处理一些工作,往往一个想法都是随机性的,不可能一开始就能与严格的规则相匹配。如果一个项目超过半年则应该有强制按一定的规则约束进行,因为时间越长对之前的工作将不能很好的回忆,且时间长说明工作成果会相对更大,要查看所有的工作内容来确定某一个工作点的话会更难。但在长期的工作中如果不按照一套严格的规则约束进行,在处理一问题时如果按照严格的方法可能需要的步骤更多。这里只是记录一下自己当时当下的感受。
2023-03-10 14:32:50
176
原创 php 计算时间段内的工作日 与节假日
计算方法是取开始时间后的第一个星期一,如果结束时间大于等这一天则用第一个星期一至结束时间的时间的间隔取整周数与余数计算工作日与周末,再加上第一个周一前一周的工作日与节假日./** 计算时间段内的工作日 与节假日 * @param $begin_date \DateTime * @param $end_date \DateTime * @return array * @throws \Exception */static function computeDays($begin_dat.
2020-06-16 10:07:39
1967
原创 js 取当天、周、月、季、年 的时间段
function date_range(date_type){ let date = new Date(); if(date_type == "today"){ return [date,date]; }else if(date_type == "week"){ let week_day = date.getDay(); .
2020-06-16 10:03:48
328
原创 mysql 提示 Truncated incorrect DOUBLE value
提示如下Error Code: 1292. Truncated incorrect DOUBLE value: '2708543646-478735239'原因大多是因为where 中的某一个字段是varchar 型 ,而值存的数字,所以没有加单引号引起的。找到这个字段把值加上单引号应该就可以了,如果不可以,那抱歉你再搜搜?...
2020-05-15 16:35:36
543
原创 mysqlbench 没有output 区域
我的系统是ubuntu,windows 版本不知道是不是样,在执行sql 语句后没有返回执行时间与信息,如果是查询语句下面会显示数据列表,但是修改语句不显示任务成功与失败的信息,在菜单 view->panels->hide/show output area 切换也没用,我找了半天,才找到原因,原来是这个区域在最下没有显被拉出来,用鼠标在查询结果列表下边框附近晃动吧,鼠标会变成可拖动边框的状态,然后拖出来,真TMD坑,怪不得都宁愿用破解的 navicat 拖出来后...
2020-05-15 16:19:29
642
3
转载 informatica 学习日记整理(转)
1. INFORMATICA CLIENT的使用1.1 Repository Manager 的使用1.1.1 创建Repository。前提:a.在ODBC数据源管理器中新建一个数据源连接至你要创建Repository的数据库(例:jzjxdev)b. 要在你要连接的数据库中新建一个用户(例:name: ETL password: ETL)现在你可以创建一个Reposit
2013-12-03 14:27:56
2537
原创 编程学习习惯
<br />1.大学生活丰富多彩,会令你一生都难忘,但难忘有很多种,你可以学了很多东西而难忘,也会因为什么都没学到而难忘!<br /><br /> 2.计算机专业是一个很枯燥的专业,但即来之、则安之,只要你努力学,也会发现其中的乐趣的。<br /><br /> 3.记住:万丈高楼平地起!基础很重要,尤其是专业基础课,只有打好基础才能学得更深。<br /><br /> 4.C语言是基础,很重要,如果你不学好C语言,那么什么高级语言你都学不好。<br /><br /> 5.C语言与C++语言是两回事。就
2010-07-07 11:29:00
489
转载 CSS选择器
<br />CSS选择器<br />上节课我们讲了一下CSS通过什么方式去控制页面,如果不记得,我来帮大家回忆一 <br />下,总共有四种方式行内方式、内嵌方式、链接方式、导入方式,大家通过这四种 <br />方式就可以实现CSS对HTML页面样式的控制,如果要让这些样式对HTML页面中的元素 <br />实现一对一,一对多或者多对一的控制,这就需要用到CSS选择器,HTML页面中的元 <br />素就是通过CSS选择器进行控制的。 <br /><br />CSS选择器共有三种:标签选择器、ID选择器、类
2010-06-11 16:07:00
523
转载 jQuery插件
jQuery插件概述<br />jQuery 是继 prototype 之后又一个优秀的 Javascript 框架。其宗旨是—写更少的代码,做更多的事情。它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不及的,它兼容 CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。 jQuery 是一个快速的,简洁的 javaScript 库,使用户能更方便地处理 HTML documents、events、实现动画效果,并且方便地为网
2010-06-10 09:55:00
399
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅