所有的I/O寄存器可以通过IN(I/O口输入)和OUT(输出到I/O口)指令访问,这些指令是在32个通用寄存器与I/O寄存器空间之间传输交换数据,指令周期为1个时钟周期。此外,I/O寄存器地址范围在$00-$1F之间的寄存器(前32个)还可通过指令实现bit位操作和bit位判断跳转。SBI(I/O寄存器中指定位置1)和CBI(I/O寄存器中指定位清零)指令可直接对I/O寄存器中的每一位进行位操作。使用SBIS(I/O寄存器中指定位为1跳行)和SBIC(I/O寄存器中指定位为0跳行)指令能够对这些I/O寄存器中的每一位的值进行检验判断,实现跳过一条指令执行下一条指令的跳转。
在I/O寄存器专用指令IN、OUT、SBI、CBI、SBIS和SBIC中使用I/O寄存器地址$OO~$3F。
当以SRAM方式寻址I/0寄存器时,必须将该其地址加上$0020,映射成在数据存储器空间的地址。本书中I/O寄存器地址均给出了两种地址表示:I/O寄存器空间地址以及在数据存储器空间中的映射地址(在圆括号中)。
补充:
ATmega128所有的I/O及外设都被放置于I/O空间。所有的I/O位置都可以通过IN 与OUT指令来访问,在32 个通用工作寄存器和I/O 之间传输数据。 地址为0x00 - 0x1F 的I/O 寄存器。还可用SBI 和CBI 指令直接进行位寻址,而SBIS 和SBIC 则用来检查某一位的值。更多内容请参见指令集。使用IN 和OUT 指令时地址必须在 0x00 - 0x3F 之间。如果要象SRAM 一样通过LD 和ST 指令访问I/O 寄存器,相应的地址要加上0x20。
关键字:AVR I 存储器操作
引用地址:
AVR的I/O存储器操作
推荐阅读最新更新时间:2024-11-04 16:40
I2C总线键盘电路以及驱动程序设计
一、概述 本文介绍一种采用MAX7348 的串行I2C 总线的键盘电路以及驱动程序的设计。 I2C 需要连线少,仅需一条串行时钟线和一条串行数据线。允许多主机控制,具有裁决和同步功能,可随意添加或摘除总线上的子器件等诸多优点,所以已经被广泛应用。 二、MAX7348 MAX7348 是美国MAXIM 公司生产的2 线接口、低EMI 键盘开关和发声控制器,可监控多达40 个按键,可对按键去抖并保存在FIFO 中,去抖时间用户可在9 ~ 40ms 之间任意设置,MAX7348 自带的音调发生器在控制器的作用下可自动发出按键声和报警声,在发声期间,输出还可以设置为高电平或低电平,以驱动电子发声器、继电器或指示灯。
[电源管理]
AVR架构发明人:与众不同 方能成功
微处理器架构之间从以前的显著差异到现在变得越来越细微的差别,这是一件非常值得关注的事。 从AVR过渡到ARM是一个漫长的过程,这个趋势要维持多久?下一步又将走向何方? 从上个世纪70年代开始,微控制器就已经快速取代了离散逻辑,并支持更多的功能,例如先行控制,复杂计算,高速通信,以及即使在低成本的微系统上仍然拥有直观的用户界面。 早期的大多数单片机代码使用汇编语言编写,并且这种接近硬件底层的编程已经成为嵌入式设计者的个性特征,因为没有人能够(或者应该)修改他人的代码。 在90年代早期工程师们就已经意识到了单片机系统的更多的功能需求,在8位微处理器中C语言一直扮演着重要角色。最大的问题是单片机不能很好的支持C语言,并且代码量越
[半导体设计/制造]
AVR单片机与串行时钟器件DS3231的接口设计
1 引言 由单片机构成的测控系统或智能显示屏经常需要用到实时日历或时钟信号。为节省CPU资源,本文介绍了串行时钟器件DS3231的应用及其与AVR单片机ATmega8的接口,该系统具有抗干扰能力强,计时准确且不随季节变化产生误差的特点。 2 DS3231的结构及工作原理 DS3231是低成本、高精度I2C实时时钟(RTC)器件,具有集成的温度补偿晶体振荡器(TCXO)。该器件包含电池输入端,断开主电源时仍可保持精确计时。集成的晶体振荡器可提高器件的长期精确度。DS3231的寄存器能保存秒、分、时、星期、日期、月、年和闹钟设置等信息。少于31天的月份,可自动调整月末日期,包括闰年补偿。时钟的工作格式为24小时或带AM/PM指示
[应用]
基于AVR的太阳能控制器设计
摘 要:为了控制太阳能发电系统中蓄电池的最优充放电,利用低功耗高性能的RISC:单片机AVR作为控制电路的核心,设计一种可靠性高,性能好的太阳能智能控制器,并对控制器的控制原理进行详细分析。测试结果表明,该控制器能正确监控和测量蓄电池的状态,充放电效果好,性能可靠,能减少充电损耗,延长蓄电池的使用寿命。 关键词:太阳能电池;PWM;控制器;AVR 随着能源危机和环境污染的加深,太阳能的研究和利用受到广泛的关注。太阳能是人类取之不尽用之不竭的可再生能源,也是清洁能源,不产生任何的环境污染,在太阳能的有效利用中,太阳能充电是近些年发展最快,最具活力的研究领域,是其中最受瞩目的项目之一。太阳能电池发电是基于“光生伏打效应”原理,将
[工业控制]
通过底层AVR方法实现SPI数据传输
主机端: 1 /********************************* 2 代码功能:通过底层AVR方法实现SPI数据传输(主机端) 3 创作时间:2016*10*17 4 使用资源: 5 更低阶的 aTmega(AVR) 库 6 SPI三个寄存器SPCR(控制寄存器),SPCR(状态寄存器),SPDR(数据的暂存器) 7 SPCR(SPI Control Register暂存寄存器) 8 7bit SPIE 片选使能,SPIE = 1;片选无效,SPIE = 0片选有效(主机无需片选)(单机通信也无需片选) 9 6bit SPE 10
[单片机]
盘点飞思卡尔i.MX多媒体处理器前世今生
现如今,移动处理器领域,大家关注最多的是德州仪器、高通、展讯、MTK,甚至包括Intel,但是请别忘记飞思卡尔,他的i.MX处理器已经发展到第六代。 那么我们今天就来盘点下i.MX的前世今生吧。 i.MX前世:DragonBall 现在提到DragonBall,也许大部分人会以为是七龙珠怀旧。不过确实,七龙珠出现的时间要早于摩托罗拉的DragonBall(即MC68328)。七龙珠1984年开始创作,而DragonBall则出现于1995年,设计者为当时在摩托罗拉公司实习的香港城市理工学院的电子工程系学生。 从名字我们就可以看出,MC68328基于摩托罗拉68000内核,但这款产品功耗与同类产品比较,功耗极低,因此非常适合
[手机便携]
Google I/O大会重点整理:18大看点
Google年度盛事Google I/O于25日起举行,会中发表多项软硬体产品,The Verge报导,这些产品主要包括Android One、Material Design、Android L、Android Auto以及多项与客厅及PC有关的新应用。 廉价手机Android One Android One是特别针对开发中市场所设计的手机参考平台,重点是售价仅100美元,拥有4.5吋萤幕、双卡双待、 MicroSD、FM收音机,也有Google Play并支援云端更新。 。 Google希望将android One能让他们在现有的10亿名活跃用户的基础上更上层楼,以渗透进另外数十亿可能负担不起智能型手机的广大消费
[手机便携]
基于AVR单片机的简易灭火机器人设计
引言 近年来,随着石化等基础工业的飞速发展,在生产过程中的易燃易爆和剧毒化学制品的使用急剧增长,由于设备和管理方面的原因,导致化学危险品和放射性物质泄漏、燃烧爆炸的事故增多。消防机器人作为特种消防设备可代替消防队员接近火场实施有效的灭火救援、化学检验和火场侦察。它的应用将提高消防部队扑灭特大恶性火灾的实战能力,对减少国家财产损失和灭火救援人员的伤亡将产生重要的作用。 1 设计要求 制作一个由计算机程序控制的机器人,在一间模拟平面结构的房间里运动,找到一根燃烧的蜡烛并尽快将它扑灭。 灭火要求:机器人不能运用任何破坏性的或危险的方法来扑灭蜡烛火焰。它可以运用类似水、空气等物质,或者使用机械方式,但是禁止使用任何危险的或可能
[单片机]