摘要: 情况:在业务代码已经完成后,为了以后设备支持iap升级,希望设备烧入bootload,由bootload选择执行具体版本的业务程序。但发现目前生产部做的话,是分两步执行,先烧录bootload程序, 再烧录出厂的业务程序,感觉有点慢,如果能一次性解决就再好不过了。 解决:使用分割工具 bootloa 阅读全文
posted @ 2022-10-21 15:12 kingzhan 阅读(267) 评论(0) 推荐(0)
摘要: 项目需要,需要开发一款蓝牙soc产品,选择了一款名为CMT4522的蓝牙soc,就是一个M0内核加上内部集成了蓝牙协议栈。网上找过这个相关资料,没找到,但有相似的产品,如奉加微的PHY6212,伦茨的ST1766,安信可家的PB-03等都是一个芯片里集成了蓝牙协议栈 https://blog.csd 阅读全文
posted @ 2022-09-30 11:36 kingzhan 阅读(802) 评论(0) 推荐(0)
摘要: 首先贴上代码,我所经常使用的模拟I2C代码 #include "myiic.h"#define device_addr 0x52 /* 模拟IIC引脚方向配置,这里用的是华大的单片机,根据需要更改 */ void Analog_IIC_Pin_Init(void) { stc_gpio_cfg_t 阅读全文
posted @ 2022-08-30 10:02 kingzhan 阅读(261) 评论(0) 推荐(0)
摘要: 声明,仅适用于当前的时间,当前的我所遇到的这个指定的情况下 情况:之前一直使用的git+TortoiseGit,上传到gitee上。之后公司要求上传到公司自己搭建的git平台gitlab上。所以想着能否在TortoiseGit上做相关配置,能够将代码同时上传到gitee跟TortoiseGit的仓库 阅读全文
posted @ 2022-08-16 16:27 kingzhan 阅读(248) 评论(0) 推荐(0)
摘要: vTaskDelay这个freertos自带的延迟函数取决于systick嘀嗒定时器是否已启动,而嘀嗒定时器是在调用vTaskStartScheduler才启动的。 所以,不能在vTaskStartScheduler函数之前使用vTaskDelay延迟函数,会卡死的 阅读全文
posted @ 2022-07-30 11:54 kingzhan 阅读(1142) 评论(0) 推荐(0)
摘要: 单片机:HD32L190FCUA 环境:keil5,使用了freertos,且嘀嗒定时器为1ms,即configTICK_RATE_HZ为1000 问题:使用vTaskDelay延迟的话,最少也只能延迟1ms,而有些传感器,通信的期间,只需要us的延迟,该怎么做 解决: 还是使用sysctick嘀嗒 阅读全文
posted @ 2022-07-30 11:50 kingzhan 阅读(4231) 评论(0) 推荐(2)
摘要: #include <stdio.h> int printf(const char *format, ...); int fprintf(FILE *stream, const char *format, ...); int sprintf(char *str, const char *format, 阅读全文
posted @ 2022-07-16 23:19 kingzhan 阅读(436) 评论(0) 推荐(0)
摘要: 环境:keil5 单片机:HC32L190FCUA 库:华大单片机的ddl库(标准库,不是寄存器库) 问题:在不休眠的情况下使用低功耗定时器时,发现定时器并不能正常工作 代码如上,原先官方例程里并没有框框里的操作,框框里的这个寄存器的这个位,指的是执行__WFI指令后,单片机进入的是休眠模式还是深度 阅读全文
posted @ 2022-07-15 21:05 kingzhan 阅读(532) 评论(0) 推荐(0)
摘要: 环境:keil 单片机:HDSC.HC32L19X 项目:自己新建的项目,官方例程里的不会出现这样的问题 问题:按键连接在一个IO上,想按下时触发中断。但怎么都无法进入中断函数,或卡死 option里面这个页面的这个框框写入 --keep=*Handler 就解决了 这问题适用于我的情况,当然也有可 阅读全文
posted @ 2022-07-11 13:52 kingzhan 阅读(811) 评论(0) 推荐(0)
摘要: 使用的是模拟SPI的方式 不同的MCU使用的方式可能不同 阅读全文
posted @ 2022-07-08 16:24 kingzhan 阅读(1570) 评论(0) 推荐(0)