<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[六个九十度]]></title><description><![CDATA[嵌入式软件开发的一些经验]]></description><link>https://blog.youkuaiyun.com/happen23</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; happen23]]></copyright><item><title><![CDATA[用github pages搭建个人博客的最简方法（没有之一）]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/165965658</link><guid>https://blog.youkuaiyun.com/happen23/article/details/165965658</guid><author>happen23</author><pubDate>Sat, 19 Sep 2026 08:37:06 +0800</pubDate><description><![CDATA[按照GitHub官方教程搭建个人博客站点，创建index.md作为主页，撰写第一篇博文xxx.md，并在主页中通过 第一篇 添加链接。后续持续以相同方式发布内容，轻松实现静态博客更新。]]></description><category></category></item><item><title><![CDATA[因为csdn不通知就关闭【动态】服务，我决定在github写博客了]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/165430955</link><guid>https://blog.youkuaiyun.com/happen23/article/details/165430955</guid><author>happen23</author><pubDate>Tue, 15 Sep 2026 08:53:48 +0800</pubDate><description><![CDATA[自2004年起在优快云写博客，虽历经明文密码泄露、免费转收费等风波，一度忍让。但因未通知便关停动态导致内容全失，彻底失去信任。从此告别优快云，转战GitHub，坚持自主掌控写作与数据。]]></description><category></category></item><item><title><![CDATA[GD32串口的IDLE中断可以用来实现帧定界]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/163570808</link><guid>https://blog.youkuaiyun.com/happen23/article/details/163570808</guid><author>happen23</author><pubDate>Fri, 07 Aug 2026 19:38:29 +0800</pubDate><description><![CDATA[在第一个RBNE中断里开启IDLE，在IDLE回调里关闭IDLE]]></description><category></category></item><item><title><![CDATA[用python脚本访问被网关隔离的嵌入式设备]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/162769838</link><guid>https://blog.youkuaiyun.com/happen23/article/details/162769838</guid><author>happen23</author><pubDate>Fri, 10 Jul 2026 19:49:01 +0800</pubDate><description><![CDATA[用paramiko库实现]]></description><category></category></item><item><title><![CDATA[定位Petalinux 2022.1的u-boot在zynq-7000芯片上启动失败]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/162462443</link><guid>https://blog.youkuaiyun.com/happen23/article/details/162462443</guid><author>happen23</author><pubDate>Tue, 30 Jun 2026 20:21:51 +0800</pubDate><description><![CDATA[试着开启CONFIG_SERIAL_PROBE_ALL配置选项]]></description><category></category></item><item><title><![CDATA[英文网站的【右单引号】显示问题]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/162242617</link><guid>https://blog.youkuaiyun.com/happen23/article/details/162242617</guid><author>happen23</author><pubDate>Tue, 23 Jun 2026 20:08:49 +0800</pubDate><description><![CDATA[右单引号在英文系统是半角，在中文系统是全角]]></description><category></category></item><item><title><![CDATA[基于协程思想实现单线程同时执行2个事件循环]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/161934750</link><guid>https://blog.youkuaiyun.com/happen23/article/details/161934750</guid><author>happen23</author><pubDate>Wed, 17 Jun 2026 19:29:54 +0800</pubDate><description><![CDATA[将其中一个循环的头、体、尾抽取成3个switch case分支，再封装成一个函数，供另一个循环调用]]></description><category></category></item><item><title><![CDATA[gcc编译告警开关-Wall对于工业级C代码是不够的]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/161544077</link><guid>https://blog.youkuaiyun.com/happen23/article/details/161544077</guid><author>happen23</author><pubDate>Sat, 30 May 2026 15:43:36 +0800</pubDate><description><![CDATA[仔细阅读gcc的告警选项列表，从中找到你需要的]]></description><category></category></item><item><title><![CDATA[一种适用于嵌入式linux系统的时间同步方法]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/160039129</link><guid>https://blog.youkuaiyun.com/happen23/article/details/160039129</guid><author>happen23</author><pubDate>Sat, 11 Apr 2026 09:38:58 +0800</pubDate><description><![CDATA[嵌入式系统时间同步的轻量级解决方案 本文提出了一种不依赖NTP客户端的嵌入式系统时间同步方法。该方法通过上位机将本地时间信息（秒级和微秒级）通过TCP协议发送给下位机，下位机接收后设置自己的RTC时钟。文章详细介绍了时间同步协议的设计，包括数据结构选择（使用struct timeval）、字节序处理方案，以及具体的实现步骤。同时针对嵌入式系统特点，提供了时区设置建议（推荐使用UTC时区）和替代方案（通过环境变量TZ设置时区）。实测表明该方法存在约30ms的同步误差，对于精度要求不高的场景适用，但对高精度需求]]></description><category></category></item><item><title><![CDATA[C语言的重载——变参函数]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/159512093</link><guid>https://blog.youkuaiyun.com/happen23/article/details/159512093</guid><author>happen23</author><pubDate>Thu, 26 Mar 2026 18:12:21 +0800</pubDate><description><![CDATA[变参函数就是丐版重载]]></description><category></category></item><item><title><![CDATA[实现一个简单的Linux多实例timer库]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/158429400</link><guid>https://blog.youkuaiyun.com/happen23/article/details/158429400</guid><author>happen23</author><pubDate>Thu, 26 Feb 2026 19:02:41 +0800</pubDate><description><![CDATA[封装timer_create和timer_settime接口]]></description><category></category></item><item><title><![CDATA[让mobaxterm支持光标闪烁]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/156602164</link><guid>https://blog.youkuaiyun.com/happen23/article/details/156602164</guid><author>happen23</author><pubDate>Mon, 05 Jan 2026 13:56:09 +0800</pubDate><description><![CDATA[闪烁的开启入口藏在终端的颜色设置里]]></description><category></category></item><item><title><![CDATA[LTC2500内置滤波器的群延迟]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/156461417</link><guid>https://blog.youkuaiyun.com/happen23/article/details/156461417</guid><author>happen23</author><pubDate>Wed, 31 Dec 2025 17:18:39 +0800</pubDate><description><![CDATA[群延迟跟转换时间不是一回事！]]></description><category></category></item><item><title><![CDATA[用C语言把BCD编码的数字转换成普通16进制]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/156328516</link><guid>https://blog.youkuaiyun.com/happen23/article/details/156328516</guid><author>happen23</author><pubDate>Sat, 27 Dec 2025 11:46:40 +0800</pubDate><description><![CDATA[将4bit的BCD按8bit分组，高4bit乘以10再加上低4bit，就得到8bit十六进制数]]></description><category></category></item><item><title><![CDATA[Linux下通过sysfs读写GPIO的一个注意事项]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/154879038</link><guid>https://blog.youkuaiyun.com/happen23/article/details/154879038</guid><author>happen23</author><pubDate>Sat, 15 Nov 2025 18:35:11 +0800</pubDate><description><![CDATA[要加上系统给所选gpio控制器分配的base编号！]]></description><category></category></item><item><title><![CDATA[使用mobaxterm的ssh隧道实现远程访问虚拟机里的Linux系统]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/154644584</link><guid>https://blog.youkuaiyun.com/happen23/article/details/154644584</guid><author>happen23</author><pubDate>Mon, 10 Nov 2025 13:52:15 +0800</pubDate><description><![CDATA[remote server和ssh server的IP都配置成虚拟机的IP，端口号都配置成22即可]]></description><category></category></item><item><title><![CDATA[busybox的syslog不支持毫秒级时间戳的一种规避方法]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/154230687</link><guid>https://blog.youkuaiyun.com/happen23/article/details/154230687</guid><author>happen23</author><pubDate>Sat, 01 Nov 2025 11:54:07 +0800</pubDate><description><![CDATA[定义变参函数宏来封装syslog，或变参函数来封装vsyslog，里面先插入毫秒级时间戳，再打印app的日志信息]]></description><category></category></item><item><title><![CDATA[用gcc的Statement Exprs实现可返回剩余时间的，支持任意关系表达式的超时等待]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/153865690</link><guid>https://blog.youkuaiyun.com/happen23/article/details/153865690</guid><author>happen23</author><pubDate>Sat, 25 Oct 2025 10:27:42 +0800</pubDate><description><![CDATA[用gcc的C语言扩展statement-expression实现能返回剩余等待时间的超时等待函数]]></description><category></category></item><item><title><![CDATA[C语言接收结构体返回值的3种方式]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/153514309</link><guid>https://blog.youkuaiyun.com/happen23/article/details/153514309</guid><author>happen23</author><pubDate>Sat, 18 Oct 2025 09:49:01 +0800</pubDate><description><![CDATA[只要左值是结构体的值类型就行，不一定非得是临时声明的局部变量]]></description><category></category></item><item><title><![CDATA[一种让PetaLinux 2020.2从QSPI flash启动的简单办法]]></title><link>https://blog.youkuaiyun.com/happen23/article/details/151651246</link><guid>https://blog.youkuaiyun.com/happen23/article/details/151651246</guid><author>happen23</author><pubDate>Sat, 13 Sep 2025 16:11:59 +0800</pubDate><description><![CDATA[先找到手动启动linux的uboot命令序列，再将其填写到boot.scr，并放置到eMMC的FAT分区]]></description><category></category></item></channel></rss>