www.openedv.com
您好,欢迎您!    会员注册 | 登入 
公告:欢迎访问www.openedv.com开源电子网,开源共享共同进步,祝您新年快乐,万事如意!
设为首页 | 加入收藏
论坛首页 » AVR单片机 前往: 
我的AVR资料[程序篇]串口驱动源码(源码24)
发表人 内容
[Down] [Up]
[楼主位] 正点原子


等级:NO
注册时间:
2010/12/02 10:41
文章: 8089
来自: 湖南
在线

avr的串口程序,采用中断接收。源码如下:
#include <mega8.h>
#include <stdio.h>
#include <delay.h>
uchar data=0;

interrupt [USART_RXC] void usart_rx_isr(void)
{
    data=UDR;
    printf("\n\r The number you send is:") ;
    printf("%d",data);
}


void main(void)     
{               
    uchar t=0,i=0;   
    DDRC=0XFF;
    PORTC=0XFF;
    
    DDRD=0X00;
    PORTD=0XFF;
             
    UCSRB=0x98;
    UCSRC=0x86;
    UBRRH=0x00;
    UBRRL=0x33; 
    #asm("sei")
while (1)
      {
          
          printf("\n\r The next number is:") ;
          delay_ms(1000);
          printf("%d",t);   
          delay_ms(500);
          t++;
          PORTC=data;
          if(data==51){for(i=0;i<10;i++)printf("\n\r fuck you!");data=0;delay_ms(1000);}
          if(data==52){printf("\n\r good!");data=0;delay_ms(1000);}
          if(data==53){printf("\n\r betch!");data=0;delay_ms(1000);}
          if(data==54){printf("\n\r wish you luck!");data=0;delay_ms(1000);}
      };
}




我的淘宝小店:http://shop62103354.taobao.com
[加为好友] 回复 引用回复
 
前往: 

Powered by ALIENTEK工作室 © 粤ICP备12000418号-1