qq28628820 2016-05-10 07:10 采纳率: 0%
浏览 1166

Atmel studio 6.0 编译之后PWM无输出,求大神指点

使用的是atmega48芯片,程序如下:
#include
#include
#include
#define F_CPU 8000000UL
#include
#include

#define uchar unsigned char
#define uint unsigned int

//控制单个io口
省略

uint a;
//各端口初始化
void PORT_INIT(void)
{
DDRD=(1<<PD1)|(1<<PD2)|(1<<PD3)|(1<<PD4)|(1<<PD6)|(1<<PD7); //PD2,PD3,PD4,PD7,PD6为输出端口
PORTD=0x00;
DDRC=(1<<PC3)|(1<<PC4)|(1<<PC5); // 将AD转换口设置成输入
PORTC=0x00; // 不带上拉电阻
DDRB=(1<<PB1)|(1<<PB2) |(1<<PB3)|(1<<PB4)|(1<<PB5); //PORTB口的PB0,PB1,PB2设为输出口,其它为输入口
PORTB=0x00;//不带上拉电阻
}
void USART0_INIT(void)
{
cli(); //关总中断;
UCSR0B=0x00; //关闭USART0,包括使能和中断
UCSR0A=0x00; //不使用倍速发送
UCSR0C=(1<<UCSZ01)|(1<<UCSZ00); //字符长度为8位,1位停止位,无校验位
UBRR0L=103; //波特率的计算,此为8M的数值,4M时为51;
UBRR0H=0;
UCSR0B=(1<<RXEN0)|(1<<TXEN0)|(1<<RXCIE0); //接收使能和发送使能,开接收中断使能
sei(); //开总中断
}

void time0_init()
{

TCCR0A=(1<<COM0A1)|(1<<WGM01)|(WGM00);//快速PWM模式
TCCR0B=(1<<CS00);//无分频,启动时钟
OCR0A=0x60;
LEDG0;

}

void time1_init()
{
TCCR1A=(1<<COM1B1)|(WGM10);
TCCR1B=(1<<WGM12)|(1<<CS10);//wu分频、8位快速PWM
OCR1B=0xd9;
LEDR0;
}
void time2_init()
{

TCCR2A=(1<<COM2B1)|(1<<WGM21)|(WGM20);
TCCR2B=(1<<CS20);
OCR2B=0x0b;
LEDY0;

}

int main(void)
{
uint ADD_AVE,MUX; //AD转换后得到的数据
uint i=0;
a=0;
PORT_INIT();
//USART0_INIT();
wdt_enable(WDTO_2S);
wdt_reset();
PWM0;LEDG1;LEDR1;LEDY1;wdt_reset();
_delay_ms(1000);wdt_reset();
_delay_ms(1000);wdt_reset();
_delay_ms(1000);wdt_reset();
while(1)
{
if (a==0)
{
a=1;
time0_init();
time1_init();
time2_init();
}
OCR2B=20;
wdt_reset();
}
}

之前也做了许多程序没有问题,不知道怎么了之后重新编译之后都不能输出pwm

各种尝试没有结果,泪目...

  • 写回答

1条回答 默认 最新

  • 普通网友 2016-10-07 17:29
    关注

    #include
    #include
    #define F_CPU 8000000UL
    #include
    #include
    #define uchar unsigned char
    #define uint unsigned int
    //控制单个io口
    省略
    uint a;
    //各端口初始化
    void PORT_INIT(void)
    {
    DDRD=(1<<PD1)|(1<<PD2)|(1<<PD3)|(1<<PD4)|(1<<PD6)|(1<<PD7); //PD2,PD3,PD4,PD7,PD6为输出端口
    PORTD=0x00;
    DDRC=(1<<PC3)|(1<<PC4)|(1<<PC5); // 将AD转换口设置成输入
    PORTC=0x00; // 不带上拉电阻
    DDRB=(1<<PB1)|(1<<PB2) |(1<<P

    评论

报告相同问题?

悬赏问题

  • ¥60 全一数分解素因子和素数循环节位数
  • ¥15 ffmpeg如何安装到虚拟环境
  • ¥188 寻找能做王者评分提取的
  • ¥15 matlab用simulink求解一个二阶微分方程,要求截图
  • ¥30 乘子法解约束最优化问题的matlab代码文件,最好有matlab代码文件
  • ¥15 写论文,需要数据支撑
  • ¥15 identifier of an instance of 类 was altered from xx to xx错误
  • ¥100 反编译微信小游戏求指导
  • ¥15 docker模式webrtc-streamer 无法播放公网rtsp
  • ¥15 学不会递归,理解不了汉诺塔参数变化