首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
ATMEAG16L的I/O端口特点及使用
来源:本站整理  作者:佚名  2011-09-17 08:24:56



  ATMEAG16L单片机有32个通用I/O口,分为PA、PB、PC和PD四组,每组都是8位。这些I/O口都可以通过各自的端口寄存器设置成输入和输出(即作为普通端口使用),有些I/O口还具有第二功能(我们在后面使用到这些第二功能时再介绍)。

  ATMEAG16L单片机的I/O口在不考虑第二功能时,其基本输入、输出功能都是相同的。下图为AT-MEAG16L单片机I/O口的结构图。每个端口对应方向寄存器DDRX(×=A、B、C、D)、端口寄存器PORTX(X=A、B、C、D)、输入引脚PINX(X=A、B、C、D)3个寄存器,各个端口的工作状况都可以通过对DDRX、PORTX和PINX的操作来完成。所有AVR单片机的I/0端口都具有读、写和修改功能。

AT-MEAG16L单片机I/O口的结构图

ATMEAGl6L的I/O端口的组合控制设置见附表。

<a target=ATMEAGl6L的I/O端口的组合控制设置表" width="514" height="482" border="0" onload="return imgresize(this);" style="cursor:pointer;" onclick="javascript:window.open(this.src);"/>

  ATMEAG16L单片机每一组I/O口的所有管脚都可以单独选择上拉电阻。引脚缓冲器可以吸收20mA的电流,能够直接驱动LED显示。如果设置了弱上拉电阻,当管脚被拉低时,引脚会输出电流。

  DDRX DDRX为端口方向寄存器,当DDRX的某一位置1时相应引脚作为输出使用。反之,当DDR×的某一位置O时,对应的引脚作为输入使用。

  例:DDRB=O×F0;∥此语句将PB端口的PBO~PB3位设为输入,  而PB4~PB7位设为输出。

  PORTX PORTX为端口数据寄存器,如果引脚设为输出,则对PORTX进行写操作即改变引脚的输出值。

  例:DDRB=OxFF;∥此语句将PB端口的PBO~PB7位设为输出。

  PORTB=0×55;  ∥PB  端  口  输出01010101。

  例:DDRB=O×00;∥此语句将PB端口的PBO~PB7位设为输入。

  PORTB=0×F0;∥PBO~PB3位不设上拉,无信号输入时处高阻态。PB4~PB7位设为上拉,无信号输入时处高电平。

  PINX PINX是相应端口的输入引脚地址,如果希望读取引脚的逻辑电平值,  一定要读取PINX,而不是PORTX。注意:PINX是只读的,不能对其赋值。

  例:DDRB=0x00;∥此语句将PB端口的PBO~PB7位设为输入。

  PORTB=0×FF;∥PB0~PB7位设为上拉,无信号输入时处高电平。

  temp=PINB;∥将PB口引脚信号读入变量temp中。

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:105,242.20000 毫秒