新闻中心

EEPW首页>嵌入式系统>设计应用> AVR定时器CTC模式的测试

AVR定时器CTC模式的测试

作者: 时间:2016-12-03 来源:网络 收藏
CTC模式是输出标准方波,可以是设定从OC1B(PD4),OC1A(PD5) 。


输入频率算法公式;

本文引用地址://m.amcfsurvey.com/article/201612/325114.htm

例:在 11.0592MHz 下 输出 2KHz 的方波

1, 11059200 / 2 /2000 = 2764.8 // 2kHz方波
2, 2764.8 - 1 = 2763.8 //1分频,就是无预分频
3, OCR1A = 2764 // 即赋值十进制数 2764 (取近似整值)

代码:

#include

/************************************************/

void CTC_Init(void)
{
DDRD_Bit4 = 1; // OC1B 管脚设置为输出
DDRD_Bit5 = 1; // OC1A 管脚设置为输出

TCCR1A=(1< // TCCR1A ==> COM1A1 , COM1A0 , COM1B1 , COM1B0 , FOC1A , FOC1B , WGM11 , WGM10
// 1 1 1 1 无关 无关 0 0
TCCR1B=(0< // TCCR1B ==> ICNC1 , ICES1 , - , WGM13 , WGM12 , CS12 , CS11 , CS10
// 无关 无关 0 1 0 0 1
OCR1A=2764; // 设定 2KHz 方波 ,晶振频率 11.0592MHz
}

/********************************************************************************/
void main(void)
{
CTC_Init();
}



关键词:AVR定时器CTC模

评论


技术专区

关闭