⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uart.h

📁 Atmel AVR Mega324 的Uart驱动
💻 H
字号:
#ifndef __UART_H__
#define __UART_H__

#include <iom324p.h>
#include "typedef.h"

#define OFF                     (0)
#define ON                      (1)

//内部使用的宏定义
#define CONCAT(a, b)       a ## b
#define CONCAT3(a, b, c)   a ## b ## c

//端口以及位定义
#define PORTREG(No)        CONCAT(PORT, No)
#define PINREG(No)         CONCAT(PIN, No)
#define UDRREG(No)         CONCAT(UDR, No)
#define DDRREG(No)         CONCAT(DDR, No)
#define TXCBIT(No)         CONCAT(TXC, No)
#define RXCBIT(No)         CONCAT(RXC, No)
#define RXENBIT(No)        CONCAT(RXEN, No)
#define TXENBIT(No)        CONCAT(TXEN, No)
#define URSELBIT(No)       CONCAT(URSEL, No)

//串口初始化需要寄存器
#define UBRRHREG(No)       CONCAT3(UBRR, No, H)
#define UBRRLREG(No)       CONCAT3(UBRR, No, L)
#define UCSRAREG(No)       CONCAT3(UCSR, No, A)
#define UCSRBREG(No)       CONCAT3(UCSR, No, B)
#define UCSRCREG(No)       CONCAT3(UCSR, No, C)
#define UCSZBIT(No1, No2)  CONCAT3(UCSZ, No1, No2)

extern void UartInit (uint8 port);
extern void UartPuts (uint8 port, uint8 *buffer, uint8 len);
//extern void UartPutChar (uint8 port, uint8 ch);
extern void UartTxCtrl(uint8 port, uint8 opt);
//extern uint8 Add_byte_to_receive_buf(uint8 Uart_num, uint8 * receive_buf, uint8 data);
extern uint8 Uart_enable_send(uint8 Uart_num);

#endif

⌨️ 快捷键说明

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