uart.c

来自「AVR单片机解码普通PC键盘码值」· C语言 代码 · 共 34 行

C
34
字号
#include <iom16v.h>
#include <macros.h>
//常量定义
#define BAUDRATE        	9600	//波特率
#define F_CPU				16000000 //这个已经在makefile里面定义了




void init_USART(void)//USART 初始化
{
    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);
}

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

void put_s(unsigned char *ptr)
{
	while (*ptr)
	{
		put_c(*ptr++);
	}
	put_c(0x0D);
	put_c(0x0A);  //结尾发送回车换行
}

⌨️ 快捷键说明

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