AVR单片机的I.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
AVR单片机的I

AVR单片机的I/O操作(ATmega16为例) 1、简介 AVR的I/O端口 ATmega16,共有32个I/O端口,分别是PA(8位),PB(8位),PC(8位),PD(8位)。这32个I/O端口都是可以作为双向I/O端口使用的,和51比起来要强些。PA,PB,PC,PD这些端口,既可以作为普通的I/O端口使用又有其他附加功能。 下面是简要介绍: PA:PA口可以作为8路ADC使用。 PB:PB7~PB4是SPI接口。 PC:PC0~PC1是双线串行总线接口,亦可以作为I2C接口。PC2~PC5是JTAG接口,PC6~PC7为定时器外部的时钟源。 ? 2、输入输出端口的使用 AVR单片机的I/O端口标准的双向口,每个端口对应3个寄存器,即DDRX,PORTX,和PINX(X为相应端口,如对于PA口来说,X为A)。其端口定义如下表: DDRXn ?PORTXn ?I/O 上拉? ?备注 ?0 ?0 ?输入 ?关闭 ?三态(高阻) ?0 ?1 ?输入 ?打开 ?提供弱上拉,低电平必须有外电路拉低, ?PXn脚输出电流 ?1 ?0 ?输出 ?关闭 ?输出0 ?1 ?1 ?输出 ?关闭 ?输出1 ATmega16的T/C1为16位定时器一共有15种工作模式,其他2个8位定时器(T0/T2)相对简单,除了T2有异步工作模式用于RTC应用外(可以利用溢出中断和比较匹配中断作定时功能)? 符号定义:? BOTTOM 计数器计到0x0000 时即达到BOTTOM? MAX? ???计数器计到0xFFFF ( 十进制的65535) 时即达到MAX? TOP? ???计数器计到计数序列的最大值时即达到TOP。? ? ?? ???TOP 值可以为固定值0x00FF、0x01FF或 0x03FF,或是存储于寄存器?OCR1A或ICR1里的数值,具体有赖于工作模式? ------注意MAX和TOP是不同的,在表格[波形产生模式的位描述]可以看到它们的作用? ? ?分5种工作类型? ? ?1? ?普通模式 WGM1=0? ? ???跟51的普通模式差不多,有TOV1溢出中断标志,发生于MAX(0xFFFF)时? ? ???1 采用内部计数时钟? ?? ?用于 ICP捕捉输入场合---测量脉宽/红外解码? ? ?? ?? ?(捕捉输入功能可以工作在多种模式下,而不单单只是普通模式)? ? ???2 采用外部计数脉冲输入? ?用于 计数,测频? ? ???其他的应用,采用其他模式更为方便,不需要像51般费神? ? ?? ? ? ?2 CTC模式 [比较匹配时清零定时器模式] WGM1=4,12? ? ?? ?跟51的自动重载模式差不多? ? ?? ?1 用于输出50%占空比的方波信号? ? ?? ?2 用于产生准确的连续定时信号? ? ?? ?WGM1=4时, 最大值由OCR1A设定,TOP时产生OCF1A比较匹配中断标志? ? ?? ?WGM1=12时,最大值由ICF1设定, TOP时产生ICF1输入捕捉中断标志? ? ?? ?? ?? ?------如果TOP=MAX,TOP时也会产生TOV1溢出中断标志? ? ?? ?注:WGM=15时,也能实现从OC1A输出方波,而且具备双缓冲功能? ? ?? ?计算公式: fOCn=fclk_IO/(2*N*(1+TOP))? ? ?? ?? ?? ?? ?? ???变量N 代表预分频因子(1、8、64、256、1024),T2多了(32、128)两级。? ?? ?? ? ?? ?? ? ?3 快速PWM模式 WGM1=5,6,7,14,15? ? ? ???单斜波计数,用于输出高频率的PWM信号(比双斜波的高一倍频率)? ? ???都有TOV1溢出中断,发生于TOP时[不是MAX,跟普通模式,CTC模式不一样]? ? ???比较匹配后可以产生OCF1x比较匹配中断.? ? ?? ? WGM1=5时, 最大值为0x00FF, 8位分辨率? ? ?? ? WGM1=6时, 最大值为0x01FF, 9位分辨率? ? ?? ? WGM1=7时, 最大值为0x03FF,10位分辨率? ? ? ?? ?WGM1=14时,最大值由ICF1设定, TOP时产生ICF1输入捕捉中断 (单缓冲)? ? ?? ?WGM1=15时,最大值由OCR1A设定,TOP时产生OCF1A比较匹配中断(双缓冲,但OC1A将没有PWM能力,最多只能输出方波)? ? ?? ?改变TOP值时必须保证新的TOP值不小于所有比较寄存器的数值? ? ???注意,即使OCR1A/B设为0x0000,也会输出一个定时器时钟周期的窄脉冲,而不是一直为低电平? ? ???计算公式:fPWM=fclk_IO/(N*(1+TOP))? ? ?4 相位修正

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档