
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
PY32F003 是一款基于 ARM Cortex-M0 + 内核的微控制器,主频高达 48MHz,拥有丰富的外设资源:12 位精度 ADC,支持多通道采集1 个 DMA 控制器,支持多种外设数据传输丰富的 GPIO 接口,可灵活配置为 ADC 输入引脚。
移植过程:参考这个几个帖子使用资源:至少要64K的RAM和200K作用MCU才能实现编解码。STM32F103的64KRAM+512K勉强能用,但实际还是很悬,建议上STM32F40X系列更好。OPUS编解码需要43K的RAM,编码会申请57.5%*43K的RAM解码会占用42.2%*43K的RAM.同时编解码时还会根据复杂度申请堆,经过验证复杂度越高需要的堆就越高,同时可变波特率占用堆空间比固定
结论:Fatfs需要比较大的栈空间,当栈单片机栈空间溢出时,单片机会跳到异常死循环,导致整个系统崩溃,解决方法:把栈空间由默认0400修改为1000的栈空间,就能正常读取。
检测中断发现,SPI和DMA的中断优先级都是1,然后按键优先级别是1和编码器按键优先级别是0。①百度问题现象,发现有的人遇到的问题是因为DMA缓存数组的存储的RAM位置异常会导致这个情况,然后就检测map表,同时进行调整空间大小无效。好吧,中断按键中加HAL_DELAY()也有这种情况,就是系统滴答定时器的中断优先级比中断按键低就会出现这个现象。②刚好今天添加的内容的中断按键触发,之前使用轮询按键
下载算法的核心任务是借助调试工具( J-Link),把程序代码或者资源写入到外部 Flash 里。一般而言,该算法需要实现对外。

*核心点是hal库调用这个全局变量的标志位使能后没有清除,每次进入检查标志位直接返回HAL_BUSY,手动处理清除一下标志然后就可以正常运行擦除函数。感觉应该这是这个库的BUG。
PY32F003 是一款基于 ARM Cortex-M0 + 内核的微控制器,主频高达 48MHz,拥有丰富的外设资源:12 位精度 ADC,支持多通道采集1 个 DMA 控制器,支持多种外设数据传输丰富的 GPIO 接口,可灵活配置为 ADC 输入引脚。
移植过程:参考这个几个帖子使用资源:至少要64K的RAM和200K作用MCU才能实现编解码。STM32F103的64KRAM+512K勉强能用,但实际还是很悬,建议上STM32F40X系列更好。OPUS编解码需要43K的RAM,编码会申请57.5%*43K的RAM解码会占用42.2%*43K的RAM.同时编解码时还会根据复杂度申请堆,经过验证复杂度越高需要的堆就越高,同时可变波特率占用堆空间比固定







