|
- /*******************************************************
- * 程序功能:2N分频系统设计
- * 接线说明:核心板JP2的PA0连接到示波器,JP79的2KHz接到核心板JP1的PB0
- * 实验现象:实现2N分频
- * 日 期 : 2014/7/29
- * 作 者 : 翟志刚
- *******************************************************/
- #include <iom16v.h>
- #include <macros.h>
- unsigned int counter = 0;
- /*******************************************************
- * 函数名称:timer0_ovf()
- * 函数功能:Timer 0 溢出中断服务
- ********************************************************/
- #pragma interrupt_handler timer0_ovf:10
- void timer0_ovf(void)
- {
- counter++;
- if(counter == 4)
- {
- TCNT0=0x83; // 重新设置TCNT0的初值
- PORTA ^= 0x01; // PA0翻转
- counter = 0;
- }
- }
- /*******************************************************
- * 函数名称:main()
- * 函数功能:程序主函数
- ********************************************************/
- void main(void)
- {
- PORTA=0x01; // PA0初始输出值为1
- DDRA=0x01; // 设置PA0输出方式
- PORTB=0x01; //PB0初始化为内部上拉
- DDRB=0x00; // 设置PB0(T0)为输入方式
- // T/C0 初始化
- TCCR0=0x07; // T/C0工作于普通模式,T0上升沿触发
- TCNT0=0x83;
- OCR0=0x00;
- TIMSK=0x01; // 允许T0溢出中断
- SREG = 0x80; //使能全局中断
- while (1)
- {
- };
- }
复制代码
|
|