- 博客(7)
- 资源 (2)
- 收藏
- 关注
原创 STM32F051 DMA+SPI读25Q16
/** * @brief 通过DMA的方式从Flash中读取数据 * * @param addr //Flash的绝对地址 * @param buf //接收数据缓存 * @param len //读取字节总数 */void ReadFlashDataByDMA(u32 addr, u8 buf[], u32 len){ //如果长度为 0 需要直接退出,否则在等DMA完成时会卡住 if(len == 0) { return; }
2021-11-19 16:24:58
813
原创 I2C 通讯问题
最近芯片缺货得严重,我们之前用的一款触摸芯片供货出了问题。供应商说可以用另外一款芯片替代,因为工艺不一样供货不成问题,但是需要修改程序。在和供应商调试的过程中发现我的i2c出了问题,但是之前一直没事。 通过对通讯波形的对比发现,和新款芯片通讯时少了一个CLK。有时候这个CLK的地方变得很窄。思来想去应该是我的软件出了问题,于是把通讯速率放低。这时通讯正常了,CLK数量没有少。但是总有一个CLK变窄了。和供应商的技术沟通了才知道,触摸芯片在通讯一个字节之后会处理忙状态。在这个状态...
2020-11-07 10:10:01
480
原创 庆科wifi模块AT指令接收方案
庆科的wifi模块采用AT指令来通讯。AT指令相对于固定帧头的帧显得有些麻烦。但是又有其规律。"AT+"是给wifi模块发送的指令头,同时也是wifi模块回显的头。“+”是wifi模块主动发起的数据。还有“OK","ERROR"这两个反馈。所有的指令都以‘\r’回车符作为结束。"OK","ERROR"还以'\r'开头。根据它们的特点我做以下处理。首先定义了全局变量://接收结构体typedef struct { u8 stepReciveATPlus; //用于接收AT+
2020-07-03 10:13:17
1368
原创 STM32F030C8 端口异常记录
这几在对一款老产品做功能升级。新功能为用串口和wifi模块通讯。因为两个串口已经用于其它模块。所以只能用模拟串口。在调试串口的过程还是比较顺利的。接下来把整个功能移植进工程。...
2020-05-17 11:54:29
353
原创 STM32F030R8 LL库 配置 RTC亚秒中断
用STM32CubeMX 配置好RTC因为用的是LL库,生成的代码并不完整。关于中断只有两行代码. /* RTC interrupt Init */ NVIC_SetPriority(RTC_IRQn, 0); NVIC_EnableIRQ(RTC_IRQn);这样是不可以使用的。需要增加以下代码:MX_RTC_Init(void){ /* USER C...
2020-04-24 15:31:35
2157
原创 基干Hal库的STM32F030C8T6的低功耗测试
先把所有端口配置为推挽输出低电平。低功耗关键指令,两条指令不可少。__HAL_RCC_PWR_CLK_ENABLE();HAL_PWR_EnterSTANDBYMode();待机模式(HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON,PWR_STOPENTRY_WFI);停机模式)不打开任何外设5uA 含LDO2.5uA(待机模式),9uA...
2019-03-19 10:22:59
3863
1
STM8Lxx串口异常
2022-10-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人