stm32
ly_dapanglian
这个作者很懒,什么都没留下…
展开
-
STM32H743使用QSPI驱动W25Q128JV芯片(正点原子例程修改)
当前项目中需要使用到STM32H743和外部SPI FLASH,在评估过程中使用的是正点原子的阿波罗开发板但是好巧不巧的画原理图和制板的同事在选型的时候虽说保留了QSPI相同的借口,但是芯片改选了W25Q128,(可能是为了成本考虑),但是在实际调试过程中遇到了问题仍旧使用原子哥的例程,但是写入数据后再读取会出现丢前3字节的情况。上网查了相关资料,发现W25Q256的4字节地址,128是3字节地址,则在w25qxx.c作了如下修改://QPI,写扇区擦除指令,地址为0,无数据_24位地址_4线原创 2020-11-09 15:24:21 · 5662 阅读 · 1 评论 -
解决keil:STM32H7 SWD烧写遇到Contents mismatch at: 0800xxxxH
使用keil5下载STM32H7的程序时报错:Contents mismatch at: 08000039H(Flash=FFHRequired=14H) !Contents mismatch at: 0800003AH(Flash=FFHRequired=00H) !Contents mismatch at: 0800003BH(Flash=FFHRequired=08H) !Contents mismatch at: 0800003CH(Flash=FFHRequir...原创 2020-10-22 11:28:53 · 13748 阅读 · 13 评论 -
解决Error: L6971E: main.o(.data) type RW incompatible with (.ARM.__AT_0x20000000)
使用的是STM32F103C8T6,SRAM大小20k起始地址0x20000000报错的时候我是想在SRAM内开辟一块空间用于存储数据,是像下面这样写的。u8 new_firmware_app[20000] __attribute__((at(0x20000000)));上网查了一下,发现报错的原因大多都是因为SRAM有冲突,我理解为被重复使用了,所以将将这个数组大小改小一些,起始地址后移一些,改成下面这样就成功了。u8 new_firmware_app[1原创 2020-06-11 17:53:08 · 9993 阅读 · 0 评论 -
stm32 .s启动文件无法进入main函数
前一天还好用的程序第二天忽然就不好用了。debug发现在.s文件的SystemInit函数可以正常执行,但是main函数始终跳转不进去; Reset handlerReset_Handler PROC EXPORT Reset_Handler [WEAK] IMPORT SystemInit ...原创 2019-09-23 15:36:52 · 1519 阅读 · 0 评论 -
STM32 DEBUG会进入0x1fffxxxx处循环
先介绍一下这个问题出现的背景:有一个项目需要外接一个I2C驱动的温湿度传感器,使用了STM32的I2C1_SCL和I2C1_DAT以及电源。使用外部的GND。进行的测试是一个较为暴力的测试,内含看门狗复位。为了测试在极端环境下是否会跑飞回不来。确实出现了跑飞回不来的情况了。而且按了reset按键也不起作用,只有重上电才能恢复。使用keil debug能发现跑飞之后程序是在0x1...原创 2019-10-30 10:10:52 · 3336 阅读 · 1 评论 -
STM32---SPI_DMA驱动WS2812B级联小灯
使用STM32F4的SPI1和SPI2分别驱动21个级联的WS2812B小灯。SPI初始化:已知主频为168Mhz,APB2的频率为84Mhz,84/32=2.6Mhz,一个时钟周期为384ns,两个时钟周期为768ns,符合芯片的传输时间范围。(这里有一个坑,就是SPI1和SPI2的时钟分别来源于APB2和APB1,需要注意两个时钟的频率,两个SPI的配置不能完全相同...原创 2019-10-12 14:39:45 · 3102 阅读 · 1 评论