社区
下载资源悬赏专区
帖子详情
AV2636单片机实例下载
weixin_39821228
2020-04-10 09:00:18
AV2636单片机实例
相关下载链接:
//download.csdn.net/download/kahn178/216659?utm_source=bbsseo
...全文
10
回复
打赏
收藏
AV2636单片机实例下载
AV2636单片机实例 相关下载链接://download.csdn.net/download/kahn178/216659?utm_source=bbsseo
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
AV2636
单片机
实例
AV2636
单片机
实例
基于 AVR 的单片嵌入式系统原理与实践应用
马潮老师编写的avr教材。 书中以m16为例举了实际应用的例子。 很不错。 书中片断 2.2 ATmega16
单片机
的组成 ATMEL公司的AVR
单片机
是一种基于增强RISC结构的、低功耗、CMOS技术、8位微控制器(Enhanced RISC Microcontroller),目前有Tiny、Mega两个系列50多种型号。它们的功能和外部的引脚各有不同,小到8-12个引脚,多到100个引脚,但它们内核的基本结构是一样的,指令系统相容。本书将以性能适中的ATmega16为主线,介绍和讲述AVR
单片机
的组成,以及如何应用在嵌入式系统中。在正式的产品开发与设计时,设计者可根据系统的实际需要选择合适型号的AVR
单片机
。 2.2.1 AV R
单片机
的内核结构 图 2-2 AVR
单片机
的内核结构示意图 华东师范大学 电子科学技术系 马潮 2-4 基于 AVR 的单片嵌入式系统原理与实践应用 尽管AVR
单片机
系列有几十种的型号,但它们有着相同的内核结构,指令兼容。图2-2为典型的AVR
单片机
的内核结构图。 为了提高MCU并行处理的运行效率,AVR
单片机
采用了程序存储器和数据存储器使用不同的存储空间和存取总线的Harvard结构。算术逻辑单元(ALU)使用单级流水线操作方式对程序存储器进行访问,在执行当前一条指令的同时,也完成了从程序存储器中取出下一条将要执行指令的操作,因此执行一条指令仅需要一个时钟周期。 在AVR的内核中,由32个访问操作只需要一个时钟周期的8位通用工作寄存器组成了“快速访问寄存器组”。“快速访问”意味着在一个时钟周期内执行一个完整的ALU操作。这个ALU操作中包含三个过程:从寄存器组中取出两个操作数,操作数被执行,将执行结果写回目的寄存器中。这三个过程是在一个时钟周期内完成的,构成一个完整的ALU操作。 在32个通用工作寄存器中,有6个寄存器可以合并成为3个16位的,用于对数据存储器空间进行间接寻址的间接地址寄存器(存放地址指针),以实现高效的地址计算。这3个16位的间接地址寄存器称为:X寄存器,Y寄存器和Z寄存器。其中Z寄存器还能作为间接寻址程序存储器空间的地址寄存器,用于在Flash程序存储器空间进行查表等操作。 AVR的算术逻辑单元(ALU)支持寄存器之间,立即数与寄存器之间的算术与逻辑运算功能,以及单一寄存器操作。每一次运算操作的结果将影响和改变状态寄存器(SREG)的值。 使用条件转移、无条件转移和调用指令,可以直接访问全部Flash程序存储器空间以及控制程序的执行顺序。大部分AVR指令为单一16位格式,只有少数指令为32位格式。因此,AVR的程序存储器单元为16位,即每个程序地址(两字节地址)单元存放一条单一的16位指令字。而一条32位的指令字,则要占据2个程序存储器单元。 ATmega16
单片机
的Flash程序存储器空间可以分成两段:引导程序段(Boot program section)和应用程序段(Application program section)。两个段的读写保护可以分别通过设置对应的锁定位(Lock bits)来实现。在引导程序段内驻留的引导程序中,可以使用SPM指令,实现对应用程序段的写操作(实现在应用自编程IAP功能,使系统能够自己更新系统程序)。 在响应中断服务和子程序调用过程时,程序计数器PC中的返回地址将被存储于堆栈之中。堆栈空间将占用数据存储器(SRAM)中一段连续的地址。因此,堆栈空间的大小仅受到系统总的数据存储器(SRAM)的大小以及系统程序对SRAM的使用量的限制。用户程序应在系统上电复位后,对一个16位的堆栈指针寄存器SP进行初始化设置(或在子程序和中断程序被执行之前)。 在AVR中,所有的存储器空间都是线性的。数据存储器(SRAM)可以通过5种不同的寻址方式进行访问。 AVR的中断控制由I/O寄存器空间的中断控制寄存器和状态寄存器中的全局中断允许位组成。每个中断都分别对应一个中断向量(中断入口地址)。所有的中断向量构成了中断向量表,该中断向量表位于Flash程序存储器空间的最前面。中断的中断向量地址越小,其中断的优先级越高。 I/O空间为连续的64个I/O寄存器空间,它们分别对应MCU各个外围功能的控制和数据寄存器地址,如控制寄存器、定时器/计数器、A/D转换器及其他的I/O功能等。I/O寄存器空间可使用I/O寄存器访问指令直接访问,也可将其映射为通用工作寄存器组后的数据存储器空间,使用数据存储器访问指令进行操作。I/O寄存器空间在数据存储器空间的映射地址为 $020~$05F。 AVR
单片机
的性能非常强大,所以它的内部结构相对8031结构的
单片机
要复杂。对于刚开始接触和学习
单片机
的人员,以及了解8051结构
单片机
的人来讲,在这里尽管不会马上理解AVR内核的全部特点,但通过以后的逐步学习,应逐渐深入的体会和掌握它的原理, 华东师范大学 电子科学技术系 马潮 2-5 第 2 章 AVR
单片机
的基本结构 这对于熟练的应用AVR设计开发产品,以及将来学习使用更新的
单片机
都会有很大的帮助。技术是在不断的发展的。 2.2.2 典型 AVR芯片ATmega16特点 AVR系列
单片机
中比较典型的芯片是ATmega16。这款芯片具备了AVR系列
单片机
的主要的特点和功能,不仅适合应用于产品设计,同时也方便初学入门。其主要特点有: (1)采用先进RISC结构的AVR内核 131条机器指令,且大多数指令的执行时间为单个系统时钟周期; 32个8位通用工作寄存器; 工作在16MHz时具有16MIPS的性能。 配备只需要2个时钟周期的硬件乘法器 (2)片内含有较大容量的非易失性的程序和数据存储器 16K字节在线可编程(ISP)Flash程序存储器(擦除次数>1万次),采用Boot Load技术支持IAP功能; 1K字节的片内SRAM数据存储器,可实现3级锁定的程序加密; 512个字节片内在线可编程EEPROM数据存储器(寿命>10万次); (3)片内含JTAG接口 支持符合JTAG标准的边界扫描功能用于芯片检测; 支持扩展的片内在线调试功能 可通过JTAG口对片内的Flash、EEPROM、配置熔丝位和锁定加密位实施
下载
编程; (4)外围接口 2个带有分别独立、可设置预分频器的8位定时器/计数器; 1个带有可设置预分频器、具有比较、捕捉功能的16位定时器/计数器; 片内含独立振荡器的实时时钟RTC; 4路PWM通道; 8路10位ADC 面向字节的两线接口TWI(兼容I2C硬件接口); 1个可编程的增强型全双工的,支持同步/异步通信的串行接口USART; 1个可工作于主机/从机模式的SPI串行接口(支持ISP程序
下载
); 片内模拟比较器; 内含可编程的,具有独立片内振荡器的看门狗定时器WDT; (5)其它的特点 片内含上电复位电路以及可编程的掉电检测复位电路BOD; 片内含有1M/2M/4M/8M,经过标定的、可校正的RC振荡器,可作为系统时钟使用; 多达21个各种类型的内外部中断源; 有6种休眠模式支持省电方式工作; (6)宽电压、高速度、低功耗 工作电压范围宽:ATmega16L 2.7—5.5v,ATmega16 4.5—5.5v; 运行速度:ATmega16L 0—8M,ATmega16 0—16M; 低功耗:ATmega16L工作在1MHz、3v、25度时的典型功耗为,正常工作模式 1.1mA,空闲工作模式 0.35mA,掉电工作模式 <1uA; (7)芯片引脚和封装形式 ATmega16共有32个可编程的I/O口(脚),芯片封装形式有40引脚的PDIP、44引脚的TQFP和44引脚的MLF封装。 华东师范大学 电子科学技术系 马潮 2-6 基于 AVR 的单片嵌入式系统原理与实践应用 2.2.3 外部引 脚与封装 ATmega16
单片机
有三种形式的封装:40脚双列直插PDIP、44脚方形的TQFP和MLF形式(贴片形式)。其外部引脚封装如图2-3所示。 图2-3 ATmage16 外部引脚与封装示意图 其中,各个引脚的功能如下: (1)电源、系统晶振、芯片复位引脚 Vcc: 芯片供电(片内数字电路电源)输入引脚,使用时连接到电源正极。 AVcc:为端口A和片内ADC模拟电路电源输入引脚。不使用ADC时,直接连接到电源正极;使用ADC时,应通过一个低通电源滤波器与Vcc连接。 AREF:使用ADC时,可作为外部ADC参考源的输入引脚。 GND: 芯片接地引脚,使用时接地。 XTAL2:片内反相振荡放大器的输出端。 XTAL1:片内反相振荡放大器和内部时钟操作电路的输入端。 RESET:RESET为芯片复位输入引脚。在该引脚上施加(拉低)一个最小脉冲宽度为1.5us的低电平,将引起芯片的硬件复位(外部复位)。 (2)32根 I/O引脚,分成PA、PB、PC和PD四个8位端口,他们全部是可编程控制的双(多)功能复用的I/O引脚(口)。 四个端口的第一功能是通用的双向数字输入/输出(I/O)口,其中每一位都可以由指令设置为独立的输入口,或输出口。当I/O设置为输入时,引脚内部还配置有上拉电阻,这个内部的上拉电阻可通过编程设置为上拉有效或上拉无效。 如果AVR的I/O口设置为输出方式工作,当其输出高电平时,能够输出20mA的电流,而当其输出低电平时,可以吸收40mA的电流。因此AVR的I/O口驱动能力非常强,能够直接驱动LED发光二极管、数码管等。而早期
单片机
I/O口的驱动能力只有5mA,驱动LED时,还需要增加外部的驱动电路和器件。 芯片Reset复位后,所有I/O口的缺省状态为输入方式,上拉电阻无效,即I/O为输入高阻的三态状态。 以上我们简单介绍了ATmega16
单片机
的主要特性以及引脚封装。可以看出,小小的一 华东师范大学 电子科学技术系 马潮 2-7 第 2 章 AVR
单片机
的基本结构 块芯片,其内部的组成结构却是相当复杂的。也正式这种复杂,加上多样的程序,才使得
单片机
在实际应用中变化无穷。 下面,我们从ATmega16的内部结构出发,逐步的介绍它的工作原理和使用方法。 2.3 ATmega16内部结构 图2-4 ATmage16 的结构框图 华东师范大学 电子科学技术系 马潮 2-8 基于 AVR 的单片嵌入式系统原理与实践应用 图2-4是ATmage16 的结构框图。它是在AVR内核(图2-3)的基础上,具体化的一个
实例
。从图中可以看出,ATmega16内部的主要构成部分有:
简单的avr c语言程序,AVR
单片机
实用C语言程序设计与典型
实例
.pdf
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
AVR
单片机
实用C语言程序设计与典型
实例
...
单片机
中使用NTC求温度值
最近使用华大HDSC.HC32L136 MCU,上面有个测量计算NTC温度。 //NTC电阻值表 const float NTC_R_Value_Table[110]= { 163450,155350,147700,140450,133600,127100,120950,115100,109600,104400, //0-9 99450,94800,90350,86150,82200,78450,74900,71500,68300,65300, ...
学习
单片机
的几本好书推荐
导语: 想学习好
单片机
手上必须得有几本相关的书籍,最近就
单片机
学习整理了下几本相关书籍,推荐给大伙,用心看看还是可以的,尤其比较合适初学者。以下几本相关书籍都是经过我相应的选择,其中半数以上有过相关阅读。希望给这方面学习的同学带来帮助。 AVR
单片机
嵌入式系统原理与应用实践(第2版) 马潮编著的《AVR
单片机
嵌入式系统原理与应用实践(第2版)》以ATMEL公司新一代AV...
下载资源悬赏专区
12,882
社区成员
12,435,895
社区内容
发帖
与我相关
我的任务
下载资源悬赏专区
CSDN 下载资源悬赏专区
复制链接
扫一扫
分享
社区描述
CSDN 下载资源悬赏专区
其他
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章