ARM
文章平均质量分 75
有意思科技
Just Do it!
心存梦想,脚踏实地
展开
-
STM 32 HAL库 内部FLash读写调试的问题
分析:首先确认,先写入其他参数,再写入版本号,读取Flash,版本号完整无误,写入版本号后,再写入其他参数,版本呢号最后几位丢失;所以,怀疑是写其他参数的时候有问题。我的参数写入流程是:先读取Flash中所有参数值到内存,再修改对应位置参数值,再全部写入随后,我将写操作屏蔽,仅在确认了版本号无误后,读取,发现,版本号最后几位丢失,检查读取代码,发现读取时的长度不对,没有将版本号最后几位读取到内存中,导致写入的时候,不是Flash中原来的值。解决:修改读取所有参数时的长度。原创 2024-03-08 14:46:27 · 592 阅读 · 0 评论 -
STM 32 HAL库 UART 调试的问题
分析: Debug发现,最终没有进入串口中断函数。于是,检查Stm32CubeMX 的工程配置两个串口的全局中断没有使能。解决:勾选上图中红框部分,查看生成的stm32g0xx_it.h ,已经有对应中断函数的定义了还要在stm32g0xx_it.c 中屏蔽生成的 中断函数实现,并在自己的代码里实现中断函数。原创 2024-03-05 13:06:46 · 409 阅读 · 0 评论 -
STM 32 SPI 调试的问题
最终发现,我使用正点原子的 sysytick 延时函数delay_us, 与这里用于计算超时的sysytick有冲突如,具体冲突原因,未知。最后去掉delay_us函数,延时改为使用timer 去做,发现HAL_SPI_Receive能够正常返回。刚开始HAL_SPI_Receive,执行到这句时,一直卡在这里不在往下执行。但是函数能返回,却一直报超时,于是使用逻辑分析仪采集SPI的数据,发现CLK仅有一个脉冲。检查SPI代码,发现SPI使用的是2分频,怀疑是否是波特率过快,导致CLK有问题。原创 2024-01-25 10:10:30 · 535 阅读 · 0 评论 -
IAR - STM32工程,使用代码编译优化带来的风险
由于STM32Flash资源有限,为减少程序大小,使用了Hig等级的编码优化,生成的程序确实减少了4K左右。经过一系列排查,最终发现,是代码编译优化带来的问题,将编译优化等级降低为medium,发现结果正常了。但是在后续的调试时,却发现之前运行的好好的DS1B20温度采集,一直采集不到值,结果一直为0。具体是那一条优化选项出现了问题,还在排查中。原来是能够采集到实时温度数据的。原创 2023-11-06 09:00:00 · 294 阅读 · 0 评论 -
EasyFlash移植使用- 关于单片机 BootLoader和APP均使用的情况
但是完成移植后,却出现了不可预料的错误,在获取ENV的Flash结尾地址是,一直出错,调试答应出来的结尾地址为0xfffffff00,明显是个不正常的值。目前,我的STM32单片机,需要在BootLoader和APP均移植使用EasyFlash,用于参数管理和IAP升级使用。BootLoader中移植EasyFlash使用旧版本,因为4.0以前版本,Flash占用少,RAM占用多。所以将BootLoader和APP保持相同的版本,BootLoader跳转到APP就正常了,一切都很美好的执行了下去。原创 2023-10-30 19:58:50 · 589 阅读 · 0 评论 -
EasyFlash移植关于RAM和Flash占用
因为需要升级和存取参数到片内Flash中,将EasyFlashy 4.0版本 移植到STM32F103的裸机程序中,但我的RAM只有20K,Flash也只有64K,最后编译出来的代码有30K左右,没法做APP 备份了。于是着手检查,哪里占用了如此多的Flash,最终发现EasyFlash的ef_env.c 居然占用了8k左右的Flash,我顿时惊了,我一共才那么点Flash。但同时它也提供旧版本的适配,即ef_env_legacy.c ,和 ef_env_legacy_wl.c(启用磨损平衡)原创 2023-10-27 13:32:17 · 273 阅读 · 0 评论 -
IAR - STM32工程,生成的可执行文件的疑惑
工程的配置中,link生成的是.out文件,但是其大小太大了,总共我的flash才64k,但文件大小有300多k,但在IAR能烧录成功,并成功跑起来,一切正常,有点搞不懂了,然后仔细研究了下。后来发现,是由于.out文件其中包含了debug的信息,所以非常大,最初IAR生成的文件应该是.sim格式的文件。还有在生成目录,有一个hex文件,其大小也比较大,最后在输出文件转换目录中,将其最后转换为bin文件,大小与.sim保持一致。修改之后,生成的文件如下。原创 2023-10-24 17:13:13 · 505 阅读 · 0 评论 -
【Xilinx】MPSOC启动流程(七)- Linux启动流程
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-19 17:37:34 · 381 阅读 · 0 评论 -
【Xilinx】MPSOC启动流程(六)- Uboot
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-18 10:19:03 · 423 阅读 · 4 评论 -
【Xilinx】MPSOC启动流程(五)- Uboot
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-17 10:00:47 · 557 阅读 · 0 评论 -
【Xilinx】MPSOC启动流程(四)- Uboot
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-14 09:46:25 · 1080 阅读 · 0 评论 -
【Xilinx】MPSOC启动流程(三)- 第一段bootloader(FSBL)
此系列博客,仅对Xilinx平台PS端(ARM部分)开发做介绍,不对PL(FPGA)做过多介绍。原创 2023-04-13 13:34:02 · 1025 阅读 · 0 评论 -
【Xilinx】MPSOC启动流程(二)- 第一段bootloader(FSBL)
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-12 14:53:16 · 1356 阅读 · 0 评论 -
【Xilinx】MPSOC启动流程(一)- 芯片上电启动
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-11 17:02:00 · 1402 阅读 · 0 评论 -
【Xilinx】开发环境(七)- vitis开发环境-开发工程构建
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-06 10:49:49 · 3393 阅读 · 0 评论 -
【Xilinx】开发环境(六)- vitis开发环境介绍和安装
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-04 13:36:19 · 5552 阅读 · 0 评论 -
【Xilinx】开发环境(五)- 基于Petalinux配置,单独编译uboot,Linux内核
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-04-03 11:23:54 · 2712 阅读 · 0 评论 -
【Xilinx】开发环境(四)- Petalinux生成启动镜像,烧录验证
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-03-31 11:01:06 · 1869 阅读 · 0 评论 -
【Xilinx】开发环境(三)- Petalinux构建工程,编译
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-03-30 10:06:15 · 3168 阅读 · 5 评论 -
【Xilinx】开发环境(二)- Petalinux环境安装
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-03-29 10:31:52 · 1947 阅读 · 0 评论 -
【Xilinx】开发环境(一)-Ultra+MPSOC芯片开发流程
Xilinx开发,ARM开发,嵌入式,Linux开发原创 2023-03-29 10:07:44 · 1394 阅读 · 0 评论 -
C语言-----函数声明,调用 剖析
函数声明,调用,以及回调函数 如何实现原创 2022-08-31 15:18:31 · 162 阅读 · 0 评论 -
FreeRTOS - STM32 移植 如何不关闭串口中断
FreeRTOS - STM32 移植 如何不关闭串口中断原创 2022-08-19 22:16:10 · 835 阅读 · 0 评论 -
基于ARM的嵌入式的QT开发扫雷游戏
本项目最终运行在三星6818 SOC芯片的开发板上,效果图1.在Ubuntu下用QCreateor开发,新建QT项目2.构件游戏菜单界面在QT下的界面UI编辑界面,编辑四个菜单按钮:游戏,难度,其他,关闭。并添加其相应子菜单,(1)游戏菜单下,有开始/重新开始, 结束本局游戏两个字菜单; (2)难度:初级:9*9,中级:1...原创 2019-06-08 12:50:13 · 3423 阅读 · 2 评论