<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[freemote的博客]]></title><description><![CDATA[记录开发中的经验、问题、知识点]]></description><link>https://blog.youkuaiyun.com/freemote</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; freemote]]></copyright><item><title><![CDATA[SPI抓包，逻辑分析仪报错分析（The initial (idle) state of the CLK line does not match the settings.）]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/164301627</link><guid>https://blog.youkuaiyun.com/freemote/article/details/164301627</guid><author>freemote</author><pubDate>Wed, 02 Sep 2026 17:28:16 +0800</pubDate><description><![CDATA[逻辑分析仪抓包SPI]]></description><category></category></item><item><title><![CDATA[结构体对齐与压缩对齐操作]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/160634894</link><guid>https://blog.youkuaiyun.com/freemote/article/details/160634894</guid><author>freemote</author><pubDate>Wed, 29 Apr 2026 20:07:42 +0800</pubDate><description><![CDATA[结构体占用空间最小，不浪费空间，对嵌入式数据存储、通信协议封装、硬件寄存器等非常适用，但是也会带来一个问题，非对齐访问，会导致CPU访问速度变慢，对不支持非对齐访问的硬件会导致hardfault异常。，编译器自动对齐，在成员a之后填充了3个字节，在成员c之后填充了2个字节，最终得到整个结构体是16字节，且每个成员的地址都是4的倍数；，加了取消对齐的操作，也可以叫做1字节对齐，成员之间没有填充，最终得到整个结构体是11字节，成员的地址不全是4的倍数。指定对齐数，这里n可以取为4，8，16等。]]></description><category></category></item><item><title><![CDATA[prvTaskExitError异常退出，FreeRTOS启动失败分析]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/159018075</link><guid>https://blog.youkuaiyun.com/freemote/article/details/159018075</guid><author>freemote</author><pubDate>Fri, 13 Mar 2026 20:45:40 +0800</pubDate><description><![CDATA[FreeRTOS报错定位技巧]]></description><category></category></item><item><title><![CDATA[单极性霍尔开关OH3144/OH44E]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/122382514</link><guid>https://blog.youkuaiyun.com/freemote/article/details/122382514</guid><author>freemote</author><pubDate>Fri, 13 Mar 2026 20:14:30 +0800</pubDate><description><![CDATA[单极性霍尔开关OH3144/OH44E]]></description><category></category></item><item><title><![CDATA[TI小封装、低功耗数模转换器 DAC7311]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/157204084</link><guid>https://blog.youkuaiyun.com/freemote/article/details/157204084</guid><author>freemote</author><pubDate>Wed, 21 Jan 2026 09:26:15 +0800</pubDate><description><![CDATA[DACx311系列总共3个芯片，其中DAC7311是12位，DB15-DB14两位用于设置模式，在正常运行模式下取值为0，DB13-DB2是具体输出的数字值，范围为0-4095，DB1-DB0不用设置。高位在前，低位在后，传输16位数据，先传输DB15，最后传输DB0。AVDD/VREF:供电电压，也是参考电压，2.0V-5.5V；SYNC其实就是SPI片选信号，低电平有效；SYNC：SPI CS，片选；只有写操作，因此只需三根线；Vout：输出电压；]]></description><category></category></item><item><title><![CDATA[超、超、超小型温度传感器TMP118]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/155361559</link><guid>https://blog.youkuaiyun.com/freemote/article/details/155361559</guid><author>freemote</author><pubDate>Sat, 29 Nov 2025 12:00:00 +0800</pubDate><description><![CDATA[可以看出TMP118对时序要求不高，在I2C标准模式下，支持1KHZ到100KHZ的速率。寄存器也很简洁，只有8个寄存器，主要需要关注温度寄存器(0h)、配置寄存器（1h）、器件ID寄存器（Bh）。TMP118，不同的后缀，地址不同，本次测试的是TMP118B，所以I2C地址为0x49。器件ID是0x1180，可以用于检查设备是否在线，验证i2c通讯时序。读出来的数据是数字量，乘以0.0078125，就是实际测量的温度。配置寄存器主要配置转换速率、平均使能位等，使用默认配置也可以。]]></description><category></category></item><item><title><![CDATA[GD32 ADC 使用DMA传输，定时器触发转换的使用方法]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/154543625</link><guid>https://blog.youkuaiyun.com/freemote/article/details/154543625</guid><author>freemote</author><pubDate>Tue, 11 Nov 2025 08:00:00 +0800</pubDate><description><![CDATA[ADC遇上DMA和TIMER会发生什么？]]></description><category></category></item><item><title><![CDATA[GD32 DAC的 DMA使用方法]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/154543849</link><guid>https://blog.youkuaiyun.com/freemote/article/details/154543849</guid><author>freemote</author><pubDate>Sat, 08 Nov 2025 11:00:00 +0800</pubDate><description><![CDATA[DAC输出正弦波]]></description><category></category></item><item><title><![CDATA[I2C共用SCL方案可行性验证（1条SCL线，多条SDA线）]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/154543767</link><guid>https://blog.youkuaiyun.com/freemote/article/details/154543767</guid><author>freemote</author><pubDate>Fri, 07 Nov 2025 21:18:14 +0800</pubDate><description><![CDATA[1条SCL线，多条SDA线]]></description><category></category></item><item><title><![CDATA[GD32 DAC DMA使用方法]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/151373457</link><guid>https://blog.youkuaiyun.com/freemote/article/details/151373457</guid><author>freemote</author><pubDate>Wed, 10 Sep 2025 09:00:00 +0800</pubDate><description><![CDATA[GD32 DAC输出正弦波]]></description><category></category></item><item><title><![CDATA[ZYNQ7020 利用Multiboot，实现裸机程序升级]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/151022178</link><guid>https://blog.youkuaiyun.com/freemote/article/details/151022178</guid><author>freemote</author><pubDate>Mon, 01 Sep 2025 06:00:00 +0800</pubDate><description><![CDATA[MULTIBOOT_ADDR寄存器的每一位代表32KB，因此APP2的烧录位置为0x100*0x8000=0x800000。APP2的偏移地址需要32K对齐，另外需要确保APP2的地址在APP1所需空间之外。（3）BootROM程序会自动执行寄存器值对应的位置的程序，跟单片机的IAP跳转类似。通过以上操作，完成了APP1跳转到APP2，利用这个跳转就可以完成裸机程序升级。需要在SLCR_UNLOCK寄存器中写入0xDF0D来解锁。往PSS_RST_CTRL寄存器写1即可自动软件复位。]]></description><category></category></item><item><title><![CDATA[GD32F4 LVD(低电压监测)功能使用]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/142262800</link><guid>https://blog.youkuaiyun.com/freemote/article/details/142262800</guid><author>freemote</author><pubDate>Sat, 14 Sep 2024 17:15:32 +0800</pubDate><description><![CDATA[LVD的功能是检测VDD/VDDA供电电压是否低于低电压检测阈值，该阈值由电源控制寄存器（PMU_CTL）中的LVDT[2:0]位进行配置。LVD通过LVDEN置位使能，位于电源状态寄存器（PMU_CS）中的LVDF位表示低电压事件是否出现，该事件连接至EXTI的第16线，用户可以通过配置EXTI的第16线产生相应的中断。]]></description><category></category></item><item><title><![CDATA[DS18B20时序抓图]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/141902272</link><guid>https://blog.youkuaiyun.com/freemote/article/details/141902272</guid><author>freemote</author><pubDate>Wed, 04 Sep 2024 19:54:26 +0800</pubDate><description><![CDATA[DS18B20时序图]]></description><category></category></item><item><title><![CDATA[【迪文屏幕】上电后默认显示背景图片是0]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/136304776</link><guid>https://blog.youkuaiyun.com/freemote/article/details/136304776</guid><author>freemote</author><pubDate>Mon, 26 Feb 2024 21:45:00 +0800</pubDate><description><![CDATA[以往的开发，背景图片都是从0开始命名的，这次鬼使神差的没有使用0，而是从1开始命名，上电后不显示，咨询了技术支持，屏幕上电后默认显示0图片，增加了0图片之后，显示正常。当然有一种情况是不需要0命名的背景图片的，那就是程序指定显示某一张图片。]]></description><category></category></item><item><title><![CDATA[折腾了一下Atmega64A（开发环境搭建+程序下载）]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/134954216</link><guid>https://blog.youkuaiyun.com/freemote/article/details/134954216</guid><author>freemote</author><pubDate>Wed, 13 Dec 2023 08:00:00 +0800</pubDate><description><![CDATA[win10下Atmega64a开发环境和下载程序搭建]]></description><category></category></item><item><title><![CDATA[ESP8266 Windows下开发环境搭建]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/133089175</link><guid>https://blog.youkuaiyun.com/freemote/article/details/133089175</guid><author>freemote</author><pubDate>Wed, 20 Sep 2023 17:39:55 +0800</pubDate><description><![CDATA[ESP8266开发环境搭建]]></description><category></category></item><item><title><![CDATA[【迪文屏幕】开发资料]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/132715623</link><guid>https://blog.youkuaiyun.com/freemote/article/details/132715623</guid><author>freemote</author><pubDate>Thu, 07 Sep 2023 09:00:00 +0800</pubDate><description><![CDATA[T5L DGUSII 应用开发指南202306.pdf》，这个文档上面，详细介绍了各种控件的使用方法。等，软件下载地址https://www.dwin.com.cn/download.html。论坛里面有好多demo、经验帖子，可以搜索学习，当然也可以提问题，官方人员会解答。论坛地址：http://inforum.dwin.com.cn:20080/界面设计工具，根据所选屏幕的系统选择对应的工具，一般屏幕的系统有。这个文档可以在官方论坛上找到，也可以直接在csdn上。]]></description><category></category></item><item><title><![CDATA[【迪文T5L屏幕二次开发】“增量调节（Incremental Adjustment）”控件的缺陷，以及代替方法]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/132711643</link><guid>https://blog.youkuaiyun.com/freemote/article/details/132711643</guid><author>freemote</author><pubDate>Wed, 06 Sep 2023 13:32:51 +0800</pubDate><description><![CDATA[来判断，可以将键值设为0x0001，按下的时候，读到的键值就是0x0001，同时要在代码中将键值清零。：在开发中遇到一种情况：同一个参数，在某些情况下参数的最大值和最小值不一样，那么就不能使用。但是在一些应用场合，会存在“上限”和“下限”不是固定的情况，这种情况下，可以使用。设定了调节的最大值和最小值。这两个值是固定的，不能动态配置。控件代替，在代码中动态扫描，判断键值，然后改变数值。控件了，只能使用其他控件，本文提供一种思路，使用。这里需要在代码中读取。]]></description><category></category></item><item><title><![CDATA[迪文屏幕SD卡下载显示“SD Card Process... END!“，但是实际下载失败，解决办法]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/131256660</link><guid>https://blog.youkuaiyun.com/freemote/article/details/131256660</guid><author>freemote</author><pubDate>Sat, 17 Jun 2023 08:49:23 +0800</pubDate><description><![CDATA[如下图，显示“SD Card Process…”，但是在重新上电后，屏幕没有更新成功。这里要注意一下下载文件的数量，也就是下图黄色框起来的地方，全是“000”。]]></description><category></category></item><item><title><![CDATA[CMSIS-RTOS2 RTX5移植到GD32L233]]></title><link>https://blog.youkuaiyun.com/freemote/article/details/123021509</link><guid>https://blog.youkuaiyun.com/freemote/article/details/123021509</guid><author>freemote</author><pubDate>Fri, 17 Mar 2023 10:55:50 +0800</pubDate><description><![CDATA[CMSIS-RTOS2 RTX5移植]]></description><category></category></item></channel></rss>