你好,很荣幸用了STM32F745IG,感觉这是一款比较强大,比较好用的一款。
不过在开发过程中碰到了一点小小的疑惑,在强大的STM面前我还只是菜鸟,希望能指引我走向强者之路:
问题:参考开发包移植了SRAM ,可是 如果使用如下代码,用示波器量不出读信号.回读回来的也是写入的数据,不过是没有读信 号的回读.
atempaddr = (uint8_t *)(DPRAM_LEDBASE + i);
*(__IO uint8_t *) atempaddr = 0;
sl_val =*(__IO uint8_t *) atempaddr ;
但是改成了
HAL_SRAM_Write_8b(&hsram,(uint32_t *) atempaddr, &val, 1);
HAL_SRAM_Read_8b(&hsram, (uint32_t *)atempaddr, &read_val, 1); 结果就成功了,我真是感慨啊,贵公司的函数果然是精品了,应该是我的理解能力有限,希望能给我解惑!
致敬!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
官方代码中使用的是uint32_t*,你用的是uint8_t*,如果考虑数据真实到底是多大的话,可能你获取的是高字节的0x00或其它随机值,而实际上atempaddr指向的是一个32位的uint32_t。
实际就是注意大小端和数据大小。
一周热门 更多>