4.24. -- 4.25. 单片机初学相关问题解决与扫盲
1. J-Link驱动安装失败:USB口无法识别J-Link 设备
问题:设备管理器中查看USB接口显示BULK Interface异常,驱动无法安装(系统自动寻找驱动同样无法成功);同时在Keil、JFlash 等烧录软件中点击 LOAD 会报 "no j-link found" 的错误。
原因:我推测有的Keil版本安装时不会安装J-Link的驱动,因此计算机缺少驱动无法安装;当然也不否认可能是配置问题出错或是引脚连接失误的问题(笔者这里是因为驱动无法安装而报错)。
解决方法:jlink驱动下载-jlink驱动官方版下载[电脑版]-华军软件园 (onlinedown.net) 笔者通过寻找,在该网站下载安装J-Link驱动后,于USB口插入J-Link后可以识别。
2. 看门狗watchDog程序
watch dog Timer 即WTD,是一种监测程序是否正常运行的手段,本质上是一种具有一个输入一个输出的定时器电路。
我们可以把运行代码、函数、功能理解为经过看门狗门前的人,看门狗所看管的地方理解为硬件输出电路(复位);
每几次经过门前使用硬件如果按照流程正常喂狗(将定时器置0),狗就不会叫(狗叫模块);
而如果长时间不喂狗(走不到置0部分,即程序死循环或调用异常),定时器超过一定时间就会向单片机复位键输入复位电平(狗叫),从而将程序回归到初始位置,以达到防止程序死机的目的。
3. 耦合和内聚的概念
耦合也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差;
通俗来说,即一个函数内不要调用太多别的类或者.c文件中的函数(JAVA即方法),否则这两个模块联系过于紧密会很难分离(比如不需要某一个功能时或者对一个功能进行修改)。
内聚:即内部聚集、关联的程度。举例:通俗来说一个高内聚的函数方法是简单明了的,一个方法就只解决一个功能;
通常来说高内聚低耦合是一起出现的,是一个优秀工程的衡量标准。
4. 移位运算符
左移:<<
举例:0001<<1 = 0010 即从1变成2,<<2 = 0100 即从1变成4,这种情况下可以当成翻倍运算。
00100100<<2==10010000
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程