有时我们的代码会跑掉。 这个时候我们基本上就得把一切都重置了。 “重置”在计算机术语中称为复位。 复位需要硬件支持,复位电路在单片机的复位引脚上产生。 信号,俗称复位信号。 这个信号需要持续一定的时间。 收到信号后,单片机将复位并从头开始执行。
复位原理:
那么复位的原理是什么呢? 其实很简单。 复位的目的是将寄存器的值加载到默认值,即恢复上电状态。 由于单片机在运行过程中受到外界干扰的干扰,导致寄存器中的数据混乱且无法恢复。 如果程序继续正常执行(称为死机)或者单片机的指令没有按照程序执行而是指向未知的位置(俗称跑飞),则需要对单片机进行复位以使程序执行再次开始跑步。
复位电路设计:
复位电路的原理是单片机的RST引脚接收到2US以上的电平信号。 只要电容的充放电时间大于2US,就可以实现复位,从而可以改变电路中的电容值。 如何实施? 下面介绍几种常见的复位电路:
第一种、复位电路
上电瞬间,由于电容两端电压不能突变,所以电容两端电位为VCC(此时充电电流最大,电容相当于短路),即RST为高电平,随着VCC经过RC电路,电容正在充电,当电容两端电压达到VCC时,电容相当于开路(此时电容充电电流为0,即,直流隔离),RST电平为低电平,单片机正常工作。
第二个复位电路:
上电瞬间,由于电容两端电压不能突变,所以电容两端电位为GND,即RST为低电平。 由于VCC通过RC电路对电容充电,当电容两端的电压达到VCC时,RST电平为高电平,单片机正常工作。
手动复位电路:
手动平复位电路
该电路也是一个上电高电平复位电路。 当单片机正常工作时,按下按钮S1,复位引脚RST变为高电平,从而实现复位。
嵌入式物联网确实有很多东西需要学习。 不要学错路线和内容,导致你的薪资水涨船高!
我免费给大家分享一个数据包,差不多150G。 学习内容、面试、项目都比较新、全面! 据估计,在网上购买某种鱼至少要花费几十美元。 (点击寻找助手领取)
2.atmega16微控制器
今天主要给大家介绍的是ATmega16。 ATmega16是一款基于增强型AVR RISC结构的低功耗8位CMOS微控制器。 由于其先进的指令集和单时钟周期指令执行时间,ATmega16的数据吞吐率高达1 MIPS/MHz,可以缓解系统功耗和处理速度之间的矛盾。
从市场角度看AVR单片机: 性价比:大多数AVR型号都具有较高的性价比,性价比突出的型号包括:atmega48、atmega8、atmega16、atmega169P。 供货方面:通用AVR机型供货较为稳定,但非传统AVR机型样品及供货仍存在问题。 市场占有率:目前AVR的市场占有率仍然不如PIC、51。但是AVR的优势使得AVR的市场占有率不断扩大,AVR的年使用量也不断上升。
ATmega16拥有一套完整的编程和系统开发工具,包括:C语言编译器、宏汇编、程序调试器/软件仿真器、仿真器和评估板。
ATmega16引脚图 ATmega16是一款基于增强型AVR RISC结构的低功耗8位CMOS微控制器。 由于其先进的指令集和单时钟周期指令执行时间,ATmega16的数据吞吐率高达1MIPS/MHz,可以缓解系统功耗和处理速度之间的矛盾。
ATmega16 AVR内核具有丰富的指令集和32个通用工作寄存器。 所有寄存器都直接连接到算术逻辑单元(ALU),允许一条指令在一个时钟周期内同时访问两个独立的寄存器。 这种结构大大提高了代码效率,数据吞吐率比普通CISC单片机高出10倍。
ATmega16具有以下特点:16K字节在系统可编程Flash(具有同时读写的能力,即RWW)、512字节EEPROM、1K字节SRAM、32条通用I/O线、32个通用I/O线。 – 专用工作寄存器、用于边界扫描的 JTAG 接口、支持片上调试和编程、三个带比较模式的灵活定时器/计数器 (T/C)、片内/外部中断、可编程串行 USART、带启动条件通用串行接口对于检测器来说,8 个具有可选差分输入级可编程增益(TQFP 封装)的 10 位 ADC、带片上振荡器的可编程看门狗定时器、一个 SPI 串行端口以及 6 个软件可选的省电模式。
工作在空闲模式时,CPU停止工作,而USART、两线接口、A/D转换器、SRAM、T/C、SPI端口和中断系统继续工作; 掉电模式下,晶振停止振荡,除硬件复位外,所有功能除中断外均停止工作; 在省电模式下,异步定时器继续运行,允许用户在其余功能模块处于睡眠状态时保持时间基准; ADC 噪声抑制模式终止 CPU 以及除异步定时器和 ADC 之外的所有其他 I/O 模块的工作,以降低 ADC 转换期间的开关噪声; 在待机模式下,只有晶振或谐振振荡器运行,其余功能模块均处于休眠状态,因此器件仅消耗很少的电流并具有快速启动能力。 ;扩展待机模式允许振荡器和异步定时器继续工作。
该芯片采用Atmel高密度非易失性存储器技术生产。 片上 ISP Flash 允许通过 ISP 串行接口或通用编程器或通过 AVR 内核中运行的引导程序对程序存储器进行编程。 引导加载程序可以使用任何接口将应用程序下载到应用闪存中。 当更新应用Flash存储区域时,Boot Flash Memory区域中的程序继续运行,实现RWW操作。 通过将 8 位 RISC CPU 和系统内可编程闪存集成到一个芯片中,ATmega16 成为一款功能强大的微控制器,为许多嵌入式控制应用提供灵活且低成本的解决方案。 ATmega16拥有一套完整的编程和系统开发工具,包括:C语言、编译器、宏汇编、程序调试器/软件仿真器、仿真器和评估板。
有人可能会问,ATmega16和stc89c52单片机有什么区别? 首先要明确的是,ATmega16实际上是一种微控制器,但它比stc89c52更先进。 具体区别如下:
1.架构不同,avr的执行效率高。
2. flash、ram、eepom的大小不同。
3.stc89c52不支持在线烧录程序,A16支持isp在线下载
4.a16内部有rc振荡,atc89c52必须外接振荡电路。
5.a16的外设很多,有i2c、ad、da、pwm,还有很多通道。
6.a16自带usart在线调试功能。
总结就是:avr是在51的基础上改进的版本
嵌入式物联网确实有很多东西需要学习。 不要学错路线和内容,导致你的薪资水涨船高!
我免费给大家分享一个数据包,差不多150G。 学习内容、面试、项目都比较新、全面! 据估计,在网上购买某种鱼至少要花费几十美元。
点此找助手0元获取:添加微信获取信息