标题:
PIC单片机EUSART通信
[打印本页]
作者:
jianduo
时间:
2023-6-6 13:33
标题:
PIC单片机EUSART通信
程序如下:
#include "EUSART.h"
#include "Delay.h"
void Eusart_Init()
{
/*端口配置*/
RXDTSEL = 1; //置1则RC5上具有 RX/DT 功能
TXCKSEL = 1; //置1则RC4上具有 TX/CK 功能
/*将TX和RX端口配置为输入模式(输出模式的串口会显示乱码)*/
TRISC5 = 1; //RC4 RX 接收(输入)数据
TRISC4 = 1; //RC5 TX 输入数据
ANSELC = 0; //RC全数字
/*波特率配置*/
SYNC = 0; //置0为异步模式
BRG16 = 1; //置1为16位波特率发生器位,置0为8位波特率发生器位
BRGH = 1; //异步模式高速状态
/*Baud rate 115200*/
SPBRGH = 0x00;
SPBRGL = 0x44;
/*串口发送和接受配置*/
//配置串口发送
TXEN = 1; //使能发送
SCKP = 0; //置0为将同相数据发送到 TX/CK 引脚
TX9 = 0; //8位数据发送
//配置串口接收
SPEN = 1; //使能串口(将 RX/DT 和 TX/CK 引脚配置为串口引脚)
RX9 = 0;
CREN = 1; //使能接收器
//配置接受中断
GIE = 1;
PEIE = 1;
RCIE = 1;
}
void Eusart_TXByte(uchar Data)
{
TXREG = Data;
while(!TRMT);
}
void Eusart_TXBuffer(uchar *str)
{
while(*str != '\0')
{
Eusart_TXByte(*str);
str++;
}
}
void interrupt ISR()
{
if(RCIE && RCIF)
{
TXREG = RCREG;
while(!TRMT);
}
}
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1