📄 uart.c
字号:
//========================================================
// 文件名称: UART.c
// 功能描述: UART初始化, UART接收中断服务
// 维护记录: 2007-08-9 v1.0
//========================================================
#include "UART.h"
#include "spce061a.h"
#include "Queue.h"
//======================================//
// 语法格式:UART_Init()
// 实现功能:初始化UART模块
// 参数: 无
// 返回值 :无
//======================================//
void Init_UART()
{
*P_IOB_Dir |= 0x0400; // IOB7 input IOB10 output
*P_IOB_Attrib |= 0x0480;
*P_UART_BaudScalarLow = 0x00; // 9600
*P_UART_BaudScalarHigh = 0x05;
*P_UART_Command1 = C_UART_RX_INT; // 激活UART接收中断
*P_UART_Command2 = C_UART_RX_EN; // Enable uart接收管脚
__asm("IRQ ON");
}
//======================================//
// 语法格式:void IRQ7(void)
// 实现功能:UART中断服务程序
// 参数: 无
// 返回值 : 无
//======================================//
int i = 0;
char I_Buf[100]; // 用于保存一条完整的消息
void IRQ7(void)__attribute__((ISR));
void IRQ7(void)
{
char ch;
ch = *P_UART_Data;
I_Buf[i ++ ] = ch;
if(ch == '\n')
{
Queue_Enter(I_Buf); // 当接收到一条完整的消息时,入队
i = 0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -