原创 ATmega16产生16位PWM输出

2009-7-25 20:11 6619 6 7 分类: MCU/ 嵌入式

/*****************************************************
www.avrdiy.com     panxiaoyi
CodeWizardAVR V1.25.9 Professional
Chip type           : ATmega16L
Program type        : Application
Clock frequency     : 8.000000 MHz
Memory model        : Small
External SRAM size  : 0
Data Stack size     : 256
*****************************************************/

#include <mega16.h>

void main(void)
{    

  TCCR1A = 0b10100010;   //快速PWM
  TCCR1B = 0b00011001;   //时钟1分频
  ICR1H  = 0xFF;         //TCNT计数上限(最高16位)
  ICR1L  = 0xFF; 
  DDRD   = 0x30;         //PWM输出
  
  while (1)
  {  
  
    OCR1AH=0x7F;         //设置OCR0A的占空比1:2
    OCR1AL=0xFF;
    
    OCR1BH=0x3F;         //设置OCR0B的占空比1:4
    OCR1BL=0xFF;
    
  };
}


看了这个程序才知道,原来用Mega16产生16位PWM,需要使用模式15的设置方法(见datasheet),并且设置OCR1A或OCR1B,由OCR输出。此程序可同时生成两路16位PWM(OCR1A,OCR1)。


转自:http://www.ouravr.com/bbs/bbs_content.jsp?bbs_sn=1169297

文章评论1条评论)

登录后参与讨论

用户377235 2014-11-4 14:31

两路占空比都可以调吗?
相关推荐阅读
用户132855 2012-03-20 18:10
IAR和谐文件在WIN7下需以管理员身份运行
IAR和谐文件在WIN7下需以管理员身份运行   今天安装IAR FOR STM8 1.30,能够通过安装,但是运行编译则会出现“Fatal Error[Cp001]: Copy protec...
用户132855 2010-09-16 08:15
51单片机复位电路和ISP下载冲突问题
51单片机复位电路和ISP下载冲突问题单片机型号:AT89S52复位电路:标准的MAX812L带按键(手动复位)高电平复位电路;下载工具:广州双龙电子180元的USBISP下载线;问题:下载后出现0X...
用户132855 2010-01-26 14:36
如何测试单片机系统的可靠性
如何测试单片机系统的可靠性       有读者希望了解用用什么方法来测试单片机系统的可靠性,邓宏杰指出:“当一个单片机系统设计完成,对于不同的单片机系统产品会有不同的测试项目和方法,但是有一些是必须测...
用户132855 2010-01-26 14:35
485总线稳定性解决方法
485总线稳定性解决方法485总线稳定性解决方法一、关于485 总线的几个概念:1、485 总线的通讯距离可以达到1200 米。根据485 总线结构理论,在理想环境的前提下,485 总线传输距离可以达...
用户132855 2010-01-26 14:29
单片机中的看门狗研究
单片机中的看门狗研究技术分类: 嵌入式系统  | 2006-11-07 来源:电子产品世界 | 作者:上海电机学院 章锐转自:http://article.ednchina.com/Embeded/2...
用户132855 2010-01-13 20:30
MSP430单片机选型
在MSP430选型时,我们主要着重介绍现在较流行使用的FLASH型单片机.因为目前主流单片机也是以FLASH型为主,使用得非常广泛.所以在此也针对MSP430 的FLASH型作出了其选型列表.若想了解...
我要评论
1
6
关闭 站长推荐上一条 /2 下一条