新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > IAR For AVR USART 應(yīng)用

IAR For AVR USART 應(yīng)用

作者: 時間:2016-12-03 來源:網(wǎng)絡(luò) 收藏
#include

#define uchar unsigned char
#define uint unsigned int

本文引用地址:http://butianyuan.cn/article/201612/325107.htm

//###########################################################
/*串口初始化函數(shù)*/
voidUart_Init(void)
{
UCSRB = (1<UCSRC = (1<

UBRRH=0x00; //設(shè)置波特率寄存器低位字節(jié)
UBRRL=47; //9600 //設(shè)置波特率寄存器高位字節(jié)

DDRD_Bit1=1; //配置TX為輸出(很重要)
}
//###########################################################
/*發(fā)送一個字符數(shù)據(jù),查詢方式*/
voidUart_Transmit(uchar data)
{
while(!(UCSRA&(1< //while(UCSRA_UDRE==0); /* 等待發(fā)送緩沖器為空*/
UDR = data; /* 發(fā)送數(shù)據(jù)*/
}
//###########################################################
//發(fā)送一串?dāng)?shù)據(jù) 帶回車符
voidUart_Puts(uchar *str)
{
while(*str)
{
Uart_Transmit(*(str++));
}
Uart_Transmit(0x0a);//回車換行
Uart_Transmit(0x0d);
}
//###########################################################
//發(fā)送一串?dāng)?shù)據(jù) 不帶回車符
voidUart_Put(uchar *str)
{
while(*str)
{
Uart_Transmit(*(str++));
}
}
//###########################################################
/*數(shù)據(jù)接收,查詢方式*/
unsigned charUart_Receive( void ) {

while (!(UCSRA & (1<return UDR;
}
//###########################################################



關(guān)鍵詞: IARAVRUSAR

評論


技術(shù)專區(qū)

關(guān)閉