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

📄 usart.h

📁 430做的一种门控系统的程序
💻 H
字号:
/*********************************************************** 
文件名称: USART.H 
作 者: ADVANCE-007
版 本: V1.0
说 明: 关于串口的最底层函数,供上层调用 , 晶体:4MHZ
修改记录: 20070308 
***********************************************************/ 

#ifndef __USART_H__
#define __USART_H__

#include "DATATYPE.H"

/***************************************************************
 **********              预定义说明区       ********************
 ***************************************************************/


/***************************************************************
 **********          常,变量定义区 *        *********************
 ***************************************************************/
#define  COM1         0        //com1  port.
#define  COM2         1        //com2  port.
#define  BPSASK       0
#define  BPS4800      1
#define  BPS9600      2
#define  BPS19200     3
#define  BPS28800     4
#define  BPS57600     5
#define  BPS115200    6

#define  UsartTXD	0        //com1  port.
#define  UsartRXD	1        //com1  port.
#define  UsartAll	2        //

#define  RecDataLen   12    
extern uchar g_aRecvBuf[RecDataLen];//接收数据缓冲区
extern uchar COM1_R_flag;
extern uchar COM2_R_flag;
#define  MutiMode_Addr         0        //com1  port.
#define  MutiMode_Idle         1        //com2  port.


//关于485部分
#define ConstManageIC 0x31
#define RotManageIC 0x37
#define RotCtrlIC 0x36
#define RS485_TRAN    0
#define RS485_REC    1

#define ConstManage_RS485_TRANSMIT   (P5OUT |=BIT1)     /*RS485发送*/
#define ConstManage_RS485_RECEIVE    (P5OUT &=~BIT1)    /*RS485接收*/
#define RotManage_RS485_TRANSMIT   (P4OUT |=BIT0)     /*RS485发送*/
#define RotManage_RS485_RECEIVE    (P4OUT &=~BIT0)    /*RS485接收*/


//基于中断的串口驱动程序

/*********************   I/O地址定义  ***************************/


/***************************************************************
 **********              函数说明           ********************
 ***************************************************************/
/*  com 的初始工作           *****************************************************
 *  comnum:输入:COM1       :初始化com1 port.
 *         输入:COM2       :初始化com2 port.
 *  bps:   输入:BPSASK      只返回现有bps 
 *              BPS4800     设置BPS:4800
 *              BPS9600     设置BPS:9600
 *              BPS19200            19200
 *              BPS28800            28800
 *              BPS57600            57600
 *              BPS115200           115200
 *              其他数值    只返回现有bps 
 *  返回:返回现有bps,值范围:BPSASK,BPS4800,BPS9600,BPS19200,BPS28800,BPS57600,BPS115200 ****/
void InitCom(uint8 comnum, uint8 bps); 

/*****************************************************************************
发送函数。采用查询方式。
pBuffer:指向发送数据缓冲区的指针
n_byte:发送的字节数
******************************************************************************/
uchar RecUartByte(uint8 comnum); 
void SendUartByte(uint8 comnum,uint8 databyte); 
void SendUartString(uint8 comnum,uint8 *datastring); 
void SendUart(uint8 comnum,uint8 *pBuffer,uint8 n_byte);
void UsartNewLine( uint8 comnum, uchar n );//回车 换行
void Usart_N_Space(uint8 comnum, uchar n );//N个空格
void Stop_COM(uint8 comnum,uint8 UsartTXDorRXD);//stop COMX's TXD or RXD
void Start_COM(uint8 comnum,uint8 UsartTXDorRXD);//start COMX's TXD or RXD
void SendUartHextoChar(uint8 comnum, uchar datt);//HEX型转CHAR型函数
void SendUartHextoString(uint8 comnum,uint8 *datastring);//数组元素的HEX型转String型函数
//interrupt [UART0RX_VECTOR] void usart0_rx(void);
void InitCom_MutiMode( uint8 comnum, uint8 MutiMode );

void RS485_Set(uchar ucIC, uchar ucT_or_R);
#endif

⌨️ 快捷键说明

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