|
发表于 2007-5-24 17:25:46
|
显示全部楼层
不好意思,楼主占用你一下空间啊!问个问题
我想实现PB1(OC1A)脚输出PWM,采用溢出方式,可出现错误,不知错在哪里,请大家指示.
//*************************************
// 定时器/计数器(T/C1)溢出中断使能初始化
//*************************************
LDI TEMP1,0X04
OUT TIMSK,TEMP1 ;T/C1溢出中断使能(TOIE1=1)
OUT TIFR,TEMP1 ;T/C1溢出标志位(TOV1=1)
//********************************
//定时/计数器中断(T/C1)初始化
//*******************************
LDI TEMP1,0XC2
OUT TCCR1A,TEMP1 ;比较A输出模式,脉宽调制PWM1A使能
LDI TEMP1,0X88
OUT TCCR1B,TEMP1 ;T/C1预分频CK/128
LDI TEMP1,80
OUT OCR1A,TEMP1 ;T/C1计数计到OCR1A时产生比较匹配
LDI TEMP1,156
OUT OCR1C,TEMP1 ;T/C1计数计到OCR1C时产生比较匹配
LDI TEMP1,0X00 ;4.0M/256/156=100HZ
OUT TCNT1,TEMP1 ;初始值从0X00上向计数,计到OCR1C时匹配,溢出,从$00重新开始
错误在这里:D:\练习汇编\TN26中断\TN26中断.asm(86): error: Invalid character: '? (0xa3)
D:\练习汇编\TN26中断\TN26中断.asm(86): error: Invalid character: '? (0xac)
D:\练习汇编\TN26中断\TN26中断.asm(86): error: syntax error, unexpected INTEGER
错误的这一行是:LDI TEMP1,0XC2
OUT TCCR1A,TEMP1 ;比较A输出模式,脉宽调制PWM1A使能TEMP1=R16
没有错呀,错在哪一位? |
|