菲达娱乐新闻
菲达娱乐新闻
当前位置:主页 > 菲达娱乐新闻 >

自动电压调节器硬件设计(包括最小系统电路图

来源:admin 编辑:织梦58 时间:2019-03-04 01:31

   最小系统

这篇文章提到了地址: http://www。 EEPW。 通讯。 cn /第/ 2条。0 1。810 / 3。93512。 html文件的后缀

   由施颖晶体和电容器组成的谐振电路外部连接到ATmega16引脚XTAL1和XTAL2,由片上OSC (振荡器电路用作系统时钟源)组成的振荡源。 更简单的电路是直接使用片上4M RC振荡器,从而消除C1、C2、R2和4M晶体,并使引脚XTAL1和XTAL2挂起。 当然,此时系统时钟频率的精度不如使用外部晶体的精度,而且它也容易受到温度变化的影响。。

  自动电压调节器 复位源和复位方法:

   复位是微控制器芯片本身的硬件初始化操作。例如,微控制器需要在通电和开启时重置,以便CPU和其他内部功能组件处于某个初始状态,并从该初始状态开始工作。

  自动电压调节器 单片机复位操作的主要功能是将程序计数器PC初始化为$ 0000 (指非BOOT LOAD模式启动),从而单片机开始从$ 0000单元执行程序。同时,大多数寄存器(通用寄存器和I/O寄存器)通过复位操作清除。

   ATmega16 MCU有5个复位源,它们是:

   1。上电复位。当系统电源电压低于加电复位阈值Vpot时,MCU复位。

   2。外部复位。当外部引脚RESET为低电平且低电平持续时间大于1时。MCU复位到5us。

   3、电源故障检测( BOD )复位。当BOD被启用,并且电源电压低于电源故障检测重置阈值( 4。0v或2。7v ),单片机复位。

   4。看门狗复位。当WDT启用且WDT超时溢出时,MCU复位。

   5、日本烟草公司 AVR 重置。当使用JTAG接口时,MCU复位可以由JTAG端口控制。

   AVR复位开始后,由于程序计数器PC设置为$ 0000,CPU获取的第一条指令在Flash空间中为$ 0000,即。e。重置后,系统程序开始在地址$ 0000处执行(指非BOOT LOAD启动)。通常,放置在$ 0000地址中的指令是相对分支指令RJMP或JMP指令,跳转到主程序的开头。这样,在系统复位和启动后,将首先执行$ 0000的跳转指令,然后执行主程序的指令。

   AVR中的MCU控制和状态寄存器MCUCSR也记录导致复位的复位源。用户程序启动后,可以读取MCUCSR中的标记,看看复位是由哪种情况引起的,正常复位还是异常复位,从而根据实际情况执行不同的程序,实现不同的处理。

   AVR的程序下载:串行编程( ISP )。

   mega16的熔丝位:

   当ATmega16单片机售出时,片上闪存和EEPROM存储器阵列处于擦除状态( I。e。,内容=$FF ),并且可以编程。同时,其设备配置熔丝位的默认值是使用内部1M RC振荡器作为系统时钟。!

  1。内存加密锁的位置

   ATmage16有两个加密锁定位置LB1和LB2,用于设置片内存储器的加密模式。用户无法在编程模式下对LB1和LB2 ( 1 )或( 0 )进行编程,从而获得不同的片上存储器加密保护模式,如表2所示。3。

   需要进一步解释:

   在AVR的设备手册中,加密位和熔丝位的状态使用已编程和未编程来定义。“未编程”表示熔丝状态为“1”(禁止),“编程”表示熔丝状态为“0”(允许),即

   1 :未编程

菲达娱乐平台

   0 :编程

   AVR的加密位和熔丝位可以被编程多次,而不是OPT熔丝。

  AVR芯片被加密和锁定后( LB2/LB1=1/0,0 / 0 ),芯片内部的Flash和EEPROM中的数据不能通过外部任何方式读取,但是熔丝位的状态仍然可以读取,并且配置不能修改。

   当需要再次下载程序,或者芯片被加密和锁定,或者发现熔丝位配置不正确时,必须在编程状态下使用芯片擦除命令来擦除芯片内部存储器中的数据,同时解锁加密。然后再次下载运行的代码和数据,修改和配置相关的熔丝位,最后再次配置芯片的加密锁定位置。

   编程状态下的芯片擦除命令是清除Flash和EEPROM中的数据,同时将两位锁定位状态配置为解锁状态( LB2/LB1=1/1 )。但是芯片擦除命令不改变其它熔丝位的状态。

   下载程序的正确操作程序是下载运行的代码和数据,配置相关的熔丝位,最后在芯片未被锁定的情况下配置芯片的加密锁定位置。

  2。系统时钟类型的配置

   ATmega16可以使用多种类型的系统时钟源,最常用的有两种:内部RC振荡器( 1M/2M/4M/8M )和与内部振荡器放大器结合的外部晶体(晶体可以在0-16MHz之间选择)。特定系统时钟类型的配置由总共5个保险丝设置,CKOPT和CKSEL[3-0],表2。4。表2。5给出了具体的配置值。在使用中,用户必须首先根据实际使用情况进行正确的设置,并且小心不要误操作这些保险丝。!

   在表2中。在5中,当CKOPT=0时,振荡器的输出振幅很大,并且很容易开始振荡,这适用于干扰大的场合,以及当使用的晶体超过8M时。当CKOPT=1时,振荡器的输出幅度较小,这可以降低功耗并减少外部电磁辐射。

   特别是,一旦RESET引脚的电平从外部拉下,当满足某些特殊条件时,芯片将进入编程状态。例如,如果芯片具有SPI接口并支持SPI串行编程,则芯片将通过以下方式进入SPI编程状态:

   外部将SPI端口的SCK引脚拉低,然后外部在RESET引脚上施加至少2个系统周期或更长时间的低电平脉冲;

   延迟20毫秒后,允许SPI编程的指令通过AVR的SPI端口从外部发送到芯片。

   如果外围连接显示强上拉或强下拉(最极端的情况是连接到高电平或GND ),那么为了确保AVR SPI功能的正常运行,三个隔离电阻应该串联,如图所示。2 - 20,电阻值约2K。

   AVR熔丝位配置:

   对于刚刚开始学习使用AVR的读者,建议更改的熔丝位为:

   系统时钟使用内部4M RC振荡器。它的优点是速度适中,误差最小( 0。2 % )。

   禁用片内JTAG端口功能。代替使用JTAG在线模拟,释放4针PC2-PC5作为正常I / O。

   启用低压检测复位功能。检测级别设置为4。0V。

在线客服
  • 在线客服