摘要:
一些工控产品,当系统复位后(非上电复位),可能要求保持住复位前RAM中的数据,用来快速恢复现场,或者不至于因瞬间复位而重启现场设备。而keil mdk在默认情况下,任何形式的复位都会将RAM区的非初始化变量数据清零。如何设置非初始化数据变量不被零初始化,这是本篇文章所要探讨的。 在给出方法之前,先来 阅读全文
摘要:
文章结构: ——> 一、定时器基本介绍 ——> 二、普通定时器详细介绍TIM2-TIM5 ——> 三、定时器代码实例 一、定时器基本介绍 之前有用过野火的学习板上面讲解很详细,所以直接上野火官方的资料吧,作为学习参考笔记发出来 二、普通定时器详细介绍TIM2-TIM5 2.1 时钟来源 计数器时钟可 阅读全文
摘要:
一、介绍 首先我们需要了解一个内存映射: stm32的flash地址起始于0x0800 0000,结束地址是0x0800 0000加上芯片实际的flash大小,不同的芯片flash大小不同。 RAM起始地址是0x2000 0000,结束地址是0x2000 0000加上芯片的RAM大小。不同的芯片RA 阅读全文
摘要:
一、串口一的配置(初始化+中断配置+中断接收函数) 二、串口二的配置(初始化+中断配置+中断接收函数) 三、串口三的配置(初始化+中断配置+中断接收函数) 四、串口四的配置(初始化+中断配置+中断接收函数) 注意串口四的中断优先级没有贴出来,和前面的三个一样的配置,为了不占用过多的篇幅就不贴中断优先 阅读全文
摘要:
Code 代表执行的代码,程序中所有的函数都位于此处。 RO-data 代表只读数据,程序中所定义的全局常量数据和字符串都位于此处。 RW-data 代表已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。 ZI-data 代表未初始化的读写数据,程序中定义了但没有初始化的全局变量 阅读全文
摘要:
一、介绍: STM32看门狗分为独立看门狗和窗口看门狗两种,其两者使用调条件如下所示, IWDG和WWDG两者特点如下图所示: 独立看门狗的手册资料: 窗口看门狗的手册资料: 应当注意:在窗口看门狗中,当递减计数器在窗口外被重新装载,(若看门狗被启动)则产生复位 【注】图中的WDGTB为3表示2^3 阅读全文
摘要:
阅读全文
摘要:
好久之前的做的笔记,这里贴出。 char String[100];//直接用数组代替指针即可解决 下面代代码下载至单片机中,发现会出现单片机死机问题 然而下面这段代码却能正常执行: 最后改char *String; 为指定字节大小的变量,发现第一处的不能执行的代码可以执行了 总结用sprintf转换 阅读全文
摘要:
首先刷入安信可的AiCloud 2.0 SDK文件,AiCloud 2.0具体信息参见AiCloud 1.0 和AiCloud 2.0对比 APP见如下二维码下载。 1、安信可AiCloud 2.0 AT 固件 ai-thinker_esp8266_dout_aicloud_v0.0.0.6_201 阅读全文
摘要:
一、STM32 下不了程序 提示: 用isp把芯片全部擦除再试试,如果可以的话应该是你的程序中禁止调试接口了 不是程序禁止了,是MCUISP这个软件搞的 解决办法:应该还有一根3.3V的线吧 你把3.3V的线连上试试,(两个原因你控制板上GND或VCC有一根没连上,第二个,你的jlink电源线烧了。 阅读全文