Byron_njit 发表于 2013-5-8 16:04:28

新手求助,关于AVR的AT90S8535串口通信

本人写了一个通信程序,要求PC通过串口助手(以前没用过)发送数据给单片机控制PA口的输出,但得不到结果,发信息的时候看见单片机的RXD脚高低电平是变化的,但PA口就是没反应
可以的话请大神留个QQ我还有点其他关于单片机的问题
#include<io8535v.h>
#include<macros.h>
#include<eeprom.h>
#pragma interrupt_hander UART_RXC:13
char Data;
void UART_RXC(void)
{
char i=0;
CLI();
Data=UDR;

if(!(i==8))
{
i=i+1;
Data=UDR;
}
UCR=0x68;
PORTA=Data;

}



void main(void)
{   
unsigned char temp;
DDRD=0xff;
DDRA=0xff;

TCNT1=00;//T/C1初始化
TCCR1A=0xA1;      
TCCR1B=0x09;    //匹配时清零,TOP:255,频率:8M/256=31.25K
OCR1A=85;      //占空比:1/3
OCR1B=128;    //占空比:1/2

// T/C2 初始化
TCCR2=0x72;    //匹配时清零,TOP:255,频率:31.25K
OCR2=60;      //占空比:2/3

UCR=0x90;
UBRR=51;
SREG=0x80;
while (1);
   
}




shacha1234 发表于 2013-5-9 21:09:37

f(!(i==8))
{
i=i+1;
Data=UDR;
}
UCR=0x68;
PORTA=Data;
这一段代码是不是有点太业余了?
页: [1]
查看完整版本: 新手求助,关于AVR的AT90S8535串口通信