- 博客(17)
- 收藏
- 关注

原创 (python)一键生成ikun的oled的显示数组
最终生成出来的文件可以是数组形式的.h文件,也可以是bin文件,数组会根据图片把分成不同部分,需要显示成动图则可以在播放每一张图片的时候加上延时。对数组循环播放就可以显示这个效果了,博主用了市面标准的128*64的黑白oled,4线I2C先协议的,具体驱动请自行百度,正常的单片机和arduion都是随便搞定的。
2024-11-16 14:38:55
340
原创 PY32F403开发学习问题记录2
Port.c会 重新调用system_ticks_handle的定时器,然后我在移植过程中,port.c的文件选错了,选了CM3的也就是m3内核的,但实际使用的是M4内核的芯片,在定时器映射的寄存器M3和M4 是有差异的,不能通用所以导致freeRtos的定时器一直没有正常运行时基,导致跳转到硬件错误那里。1、移植freertos,程序卡死在vTaskDelay()的位置。
2025-06-23 11:59:02
207
原创 PY32开发学习记录
PY32F403移植USB无论是模拟串口还是作为MSC的设备,在仿真能看见中断最后都是死在中断最后一行B的位置。原因:根本原因缺少中断的入口函数,触发了中断但没有任何操作导致卡死。使用启动文件不同,demo使用的仿真文件是PY官网下载的,而我之前使用是在pack里面的设备选择。USB_IRQHandler函数名称与启动文件中断入口名称没对上导致无法进入中断从而卡死。处理方法:1、不改启动文件,修改USB中断函数名称为USB_HP_CAN1_TX_IRQHandler。
2025-06-20 17:29:12
367
原创 基于PY32F403开发板学习(2-读写内部FLASH)
PY32F403的FLASH内部空间是384K,代码参考了STM32的代码(具体是哪位大哥的不记得),同时做小调整。flash内容暂时设定为380K-384K 的内存空间中。修改内存的参数方式就是先更新结构体。然后调用my_flash_write的接口函数即可。末尾有整个程序的下载链接。。。
2025-05-19 15:00:58
150
原创 使用systick进行软件消抖按键消抖
使用静态计数记录上一次的tick值,每次按键检测判断时进行处理具体看代码。正点原子按键历程使用了delay_ms()函数进行了按键消抖。没有按键按下也需要进行消抖判断,不然还是会有按键误判断的现象。正常复杂一点的应用是不允许使用阻塞性的延时进行消抖的。
2025-05-19 10:33:04
209
原创 基于PY32F403开发板学习(1-点亮LED灯)
新购入一块PY32F403开发板,资料比较少,记录一下开发过程,希望能给后面学习的同学一下经验,免踩坑。板子用料挺良心的,自带调试芯片,TF槽,和SPI-flash还有一个EEPROM,用料良心,就是资料比较少,不是很适合初学者。代码放在最后自己获取。遇到其他问题可以留言,如果我知道会尽量回复。
2025-05-17 18:59:04
331
原创 FATFS文件系统卡正常挂载文件,但fopen()函数打开卡死
结论:Fatfs需要比较大的栈空间,当栈单片机栈空间溢出时,单片机会跳到异常死循环,导致整个系统崩溃,解决方法:把栈空间由默认0400修改为1000的栈空间,就能正常读取。
2025-04-16 10:22:20
316
原创 记录一下单片机进行SPI+DMA传输时出现卡死在获取状态BUSY位置
检测中断发现,SPI和DMA的中断优先级都是1,然后按键优先级别是1和编码器按键优先级别是0。①百度问题现象,发现有的人遇到的问题是因为DMA缓存数组的存储的RAM位置异常会导致这个情况,然后就检测map表,同时进行调整空间大小无效。好吧,中断按键中加HAL_DELAY()也有这种情况,就是系统滴答定时器的中断优先级比中断按键低就会出现这个现象。②刚好今天添加的内容的中断按键触发,之前使用轮询按键控制界面完全是正常,突然不行,后面感觉问题应该出在中断上。使用的单片机是PY32F403的单片机。
2025-04-12 16:49:51
323
原创 STM32F103ZET6+SPI_W25Q16外部flash下载算法生成
下载算法的核心任务是借助调试工具( J-Link),把程序代码或者资源写入到外部 Flash 里。一般而言,该算法需要实现对外。
2025-03-31 09:56:43
261
原创 单片机不建议直接使用C库自带的malloc函数,使用正点例程重构malloc函数
include“stdlib.h”库里的malloc函数。出现两个问题第一个申请的空间不正常,第二个问题是无故出现死机。感觉估计是RAM太小,申请来的块太大,多次申请导致内存溢出。后面修改使用正点例程里面的内存池重新分配的方案显示才正常。在做一个屏幕的GUI里面方案,直接使用。
2025-03-20 20:45:41
204
原创 PY32使用HAL库开机flash烧写第一次成功第二次失败问题解决
*核心点是hal库调用这个全局变量的标志位使能后没有清除,每次进入检查标志位直接返回HAL_BUSY,手动处理清除一下标志然后就可以正常运行擦除函数。感觉应该这是这个库的BUG。
2025-01-15 18:58:29
348
原创 (arduino)基于ESP8266的4.2寸墨水屏显示
4.2寸墨水屏:某宝或者某鱼二手4.2墨水屏(带壳子)墨水屏驱动板:某宝主控IC:ESP8266
2024-12-21 01:56:25
1265
原创 STM32F103C8T6基于STMCubeMx的软件移植Fatfs问题记录
应该是第一挂载会让SPIfiash进行一次初始化,然后但是无法正常的挂载,在初始化后,再次挂载就可以了,函数第三参数改为0,延时挂载,是能使用的,必要离开挂载才不会有错。第一次会返回Error(3)=FR_NOT_READY;这个函数需要挂载需要挂载两次,二次才会返回FR_OK;
2024-12-04 18:12:05
228
原创 优雅的使用ESP8266基于Arduino编程,30行代码实现oled播放MP4片段!!!
把image.h文件和程序文件ino同一个文件夹目录下。
2024-11-25 21:01:09
413
原创 python问题记录
cv2.bitwise_and这个函数 的前后两个图片合成时尺寸不一样导致。处理方法就是就把第二个图片的尺寸调整为第一尺寸大小。调用图片转换成卡通风格时出现这种报错;
2024-10-31 17:18:54
231
1
请问一下LVGL这个按钮的开关样式怎么做?
2025-06-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人