PC和ATMEGA128串口通信
时间:11-10
来源:互联网
点击:
/*PC和ATMEGA128通信,ATMEGA以轮循方式发送,中断方式接受*/
#include
#define RXEN0 4
#define TXEN0 3
#define RXCIE0 7
#define UDRE0 5
#define UCSZ00 1
#define UCSZ01 2
#define UCSZ02 2
#define RXC0 7
char str[20];
unsigned char in;
void Uar_init(void);
void COM_send(void);
interrupt[19] void uart0(void)
{
bit flag=1;
str[in]=UDR0;
if(str[in]==$) //$为停止标志
{
UCSR0B&=~(1
COM_send(); //发送接受的字符串
in=0;
flag=0;
UCSR0B|=(1
if(flag)
in++;
}
void Uar_init(void)
{
in=0;
UCSR0B=(1
UBRR0H=0x00;
UCSR0C=(1
}
void COM_send(void)
{
unsigned char point=0;
while(str[point]!=\0)
{
while(!(UCSR0A&(1
point++;
}
}
void main(void)
{
Uar_init();
#asm("sei");//全局中断开启
while(1);
}
PCATMEGA128串口通 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)