usart.c

来自「avr单片机利用18b20芯片测温」· C语言 代码 · 共 54 行

C
54
字号
/* 
******************************************************** 
*   文件:   usart.c 
*   功能:   用于单片机与计算机串口通讯 
*   工具:   (WINAVR-GCC) 
*   作者:   cht 
*   日期:   2/5/2007
*   版本:   0.1 
*   声明:  
******************************************************** 
*/ 


#include <avr/io.h>

//管脚定义
#define PIN_RXD			0 	//PD0   RXD
#define PIN_TXD			1 	//PD1   TXD

#define BAUDRATE        9600	//波特率

volatile unsigned char PC_COMMAND;




void put_c(unsigned char c) //发送采用查询方式
{
	while( !(UCSRA & (1<<UDRE)) );
	UDR=c;
}

void put_s(unsigned char *ptr)
{
	while (*ptr)
	{
		put_c(*ptr++);
	}
}

void init_USART(void)//USART 初始化
{

    //USART 9600 8n1  
    UCSRC = (1<<URSEL) | 0x06;

    UBRRL= (F_CPU/BAUDRATE/16-1)%256;
    UBRRH= (F_CPU/BAUDRATE/16-1)/256;
    UCSRA = 0x00;
    UCSRB = (1<<RXCIE)|(1<<RXEN)|(1<<TXEN);
    //使能接收中断,使能接收,使能发送
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?