您好,欢迎来到欧得旅游网。
搜索
您的当前位置:首页AVR介绍

AVR介绍

来源:欧得旅游网
AVR参数简介

以下讲述以ATmega16为例:

 有PORTA、PORTB、PORTC、PORTD,共32路通用I/O接口,分别对应于芯片上32个I/O引脚,

所有的管脚都是复用的,其中第一功能作为数字通用I/O使用,复用功能为其他功能。  使用AVR的I/O口,首先是要设置其工作方式,确定其工作在输出还是输入方式,否则无法正常使用。  当设置为输入时,要考虑是否启用上拉电阻。

 I/O口复位以后的初始状态全部是输入工作方式,内部上拉电阻无效,因此,I/O外部引脚呈现三态高

阻的输状态。

 当I/O工作在输入状态时,如果要读取外部引脚的电平,必须是读取PINxn的值,而不是PORTxn的

值,PINxn反映的才是真实电平。

 一旦将I/O口由输出设置为输入方式后,必须等待1个时钟周期后才能正确的读到外部引脚PINxn的

值。

 AVR的IO口灌电流能力与拉电流能力均达30mA  51的拉电流能力<100uA,灌电流能力10mA  拉电流能力: 灌电流能力:

能够从IO口流出的最大电流。 能够流入IO口的最大电流。

I/O口输出功能时设计要点

 使用方法

先定义I/O口的工作方式为输出,通过设置PORTx,可以控制I/O口对外输出“0”或“1”。

1

 IO口与IO寄存器的映射(x代表A~D)

方向寄存器:DDRx 数据寄存器:PORTx 输入寄存器:PINx

 C语言变量与寄存器的映射

io.h这个文件中将所有寄存器映射为同名的变量,对这些变量的读写相当于对寄存器的读写

 输出状态IO寄存器设置

DDRx某一位置1,相应位的IO口被设置为输出

PORTx某一位置1或0,对应IO口相应位的电平高低

 当输出“1”时,可提供20mA左右的驱动电流;当输出“0”时,可吸收20mA左右的灌电流(最大

为40mA)。

 当连接的外围器件和电路需要大电流驱动或者有大电流灌入时时,应该考虑使用功率驱动电路。  IO口输出操作总结

 第一步:IO设置为输出  DDRB = 0xff;

 DDRB |= (1 << 5); //第五位设为输出  第二步:对应位输出数据  输出1: PORTB |= (1 << 5); //第五位输出高电平  输出0: PORTB &= ~(1 << 5); //第五位输出低电平  对应位取反:PORTB ^= (1 << 5); //第五位取反

2

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- ovod.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务