📄 uart.c
字号:
//========================================================
// 文件名称: UART.c
// 功能描述: 通过UART实现串行通讯,将温度数据传到PC机
// 维护记录: 2005-11-22 v1.0
//========================================================
#include "SPCE061A.h"
//========================================================
// 语法格式: void Init_Uart(void)
// 实现功能: 初始化串行口
// 参数: 无
// 返回值: 无
//========================================================
void Init_Uart(void)
{
unsigned int uiDir;
unsigned int uiAttrib;
unsigned int uiData;
uiDir = *P_IOB_Dir; //初始化IOB7为输入口
uiDir &= 0xff7f;
*P_IOB_Dir = uiDir;
uiAttrib = *P_IOB_Attrib;
uiAttrib |= 0x0080;
*P_IOB_Attrib = uiAttrib;
uiData = *P_IOB_Data;
uiData &= 0xff7f;
*P_IOB_Data = uiData;
uiDir = *P_IOB_Dir; //初始化IOB10为输出口
uiDir |= 0x0400;
*P_IOB_Dir = uiDir;
uiAttrib = *P_IOB_Attrib;
uiAttrib |= 0x0400;
*P_IOB_Attrib = uiAttrib;
uiData = *P_IOB_Data;
uiData &= 0xfbff;
*P_IOB_Data = uiData;
*P_UART_BaudScalarLow = 0x0000; //设置波特率9600/
*P_UART_BaudScalarHigh = 0x0005;
*P_UART_Command1 = 0x0000; //允许发送
*P_UART_Command2 = 0x0040;
}
//========================================================
// 语法格式: void Send_Data(unsigned int)
// 实现功能: 发送数据
// 参数: 需要发送达数据
// 返回值: 无
//========================================================
void Send_Data(unsigned int uiData_s)
{
unsigned int uiHigh; //高字节
unsigned int uiLow; //低字节
uiHigh = uiData_s;
uiLow = uiData_s;
uiHigh = uiHigh >> 8;
uiLow = uiLow & 0x00ff;
*P_UART_Data = 0xaa; //验证信号
while((*P_UART_Command2 & 0x0040) == 0);
*P_UART_Data = uiHigh;
while((*P_UART_Command2 & 0x0040) == 0);
*P_UART_Data = uiLow;
while((*P_UART_Command2 & 0x0040) == 0);
*P_UART_Data = 0x55; //验证信号
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -