当前位置:首页 > 单片机 > 单片机
[导读]AVR的IO有三个寄存器,DDRX,PORTX,PINX。DDRX 方向,DDRX=1,输出;DDRX=0,输入。例如设置PA0口为输入,即可写成DDRA&=~(1<PORTX 分两种情况如果DDR=1,即在输出状态的话,那么通过设置PORTX的值改变IO端口的电平如

AVRIO有三个寄存器DDRX,PORTX,PINX。

DDRX 方向,DDRX=1,输出;DDRX=0,输入。

例如设置PA0口为输入,即可写成DDRA&=~(1<

PORTX 分两种情况

如果DDR=1,即在输出状态的话,那么通过设置PORTX的值改变IO端口的电平

如果DDR=0,即在输入状态的话,那么PORT=1则使能上拉电阻,否则不使能。

PINX 此寄存器表示了该端口的实际电平,所以读IO口的话,应该读PINX,而不是PORTX。

每个IO口可以输出或吸纳20mA的电流,这一点在设计上要注意。

比如连接LED,键盘等。

以LED为例,LED上的压降是2v左右,正常的工作电流应该是10mA-20mA,可以通过此计算限流电阻的值。

如供电电压为5V,则限流电阻应为(5-2)/10mA=300(Ohm).

一旦将IO口的工作方式设为输入方式后,必须等待一个时钟周期才能正确读到PIN值。

AVR单片机复位之后所有的IO均为输入方式,上拉电阻不使能,所以呈现三态高阻输入态。

AVR的IO寄存器被分配在SRAM地址空间中,可以通过IN、OUT、SBI、CBI这些指令直接访问IO寄存器,也可以通过访问SRAM访问它们。

如数据手册中所示,例如PORTA,前面的$1B是IO寄存器的空间地址,括号内的$3B是数据存储器的实际映射地址。

可以通过SBI和CBI指令方便地设置某一位,但是只能对$00-$1f即前32个IO寄存器进行这种操作。

例如SBI 0x1B,0即是设置PORTA0为1,在速度要求很高的情况下可以直接嵌入这种汇编语句。

扩展阅读:AVR单片机硬件电路设计

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

74LS175是一款4D触发器集成电路,它包含6个D触发器,这些触发器可以组合起来形成寄存器或抢答器等多种功能部件。

关键字: 74ls175 触发器 寄存器

单片机复位电路的作用是:使单片机恢复到起始状态,让单片机的程序从头开始执行,运行时钟处于稳定状态、各种寄存器、端口处于初始化状态等等。

关键字: 复位电路 单片机 寄存器

寄存器变量是计算机中一种重要的存储方式,它使用CPU中的寄存器来存储数据和指令。寄存器直接与CPU的运算和控制部件相连,因此访问速度非常快,通常在一个CPU周期内就能完成数据的读写操作。相比于内存和硬盘等存储设备,寄存器...

关键字: 寄存器 存储器

寄存器和存储器是计算机及其它电子设备中的两种重要存储组件,它们在存储方式、存储容量和访问速度等方面存在明显的差异。

关键字: 寄存器 存储器

寄存器和内存是计算机系统的两个重要组成部分,它们之间存在着密切的关系。本文将介绍寄存器和内存的基本概念、功能、类型以及它们之间的关系,旨在帮助读者更好地理解计算机系统的运行原理。

关键字: 寄存器 内存

南京2023年9月16日 /美通社/ -- 今日,由中国 "双一流"建设高校南京医科大学、全球基因测序和芯片技术的领导者因美纳与"Nature Research Custom Media&q...

关键字: IO BSP GO OV

寄存器是计算机硬件中的重要组件,用于临时存储数据和指令。正确地使用寄存器能够提高程序的执行效率,然而不正确的使用也可能导致各种问题。本文将详细介绍寄存器的使用方法以及在使用时需要注意的事项。

关键字: 寄存器 计算机硬件

寄存器和暂存器都是计算机硬件中的重要组件,它们在计算机系统中发挥着不同的作用。下面我们来详细了解一下它们的区别以及各自的特点和应用。

关键字: 寄存器 暂存器

寄存器是一种重要的计算机硬件组件,用于临时存储数据或指令。在计算机架构中,寄存器是CPU内部的一部分,用于加速数据的处理速度。寄存器通常由高速缓存(cache)和随机存取存储器(RAM)组成。

关键字: 寄存器 计算机硬件

香港2023年9月5日 /美通社/ -- 狮子集团控股有限公司(Lion Group Holding Ltd.)("狮子集团"或"该集团")(纳斯达克股票代码:LGHL),是一家为...

关键字: PHOENIX LG AI技术 IO
关闭
关闭