📄 8.1 add1.c
字号:
/********************************************************************************
** 功能描述: 串行通信,SCIA将接收到的数据每字节+1后立即回送**
********************************************************************************/
#include "DSP28_Device.h"
Uint16 RecieveChar;
void Scia_init()
{
EALLOW;
GpioMuxRegs.GPFMUX.all = 0x0030; // 设置F4和F5为通信端口
EDIS;
SciaRegs.SCICTL2.all = 0x0000; // 禁止接收和发送中断
SciaRegs.SCILBAUD = 0x00E7; // 波特率=9600
SciaRegs.SCIHBAUD = 0x0001;
SciaRegs.SCICCR.all = 0x0007; // 1个停止位,禁止校验,8位字符
// 禁止自测试,异步空闲线协议
SciaRegs.SCICTL1.all = 0x0023; // 脱离复位状态,使能接收发送
}
void main(void)
{
InitSysCtrl(); // 系统初始化
DINT; // 禁止和清除所有的CPU中断
IER = 0x0000;
IFR = 0x0000;
Scia_init(); // SCIA初始化
while (1)
{
while(SciaRegs.SCIRXST.bit.RXRDY != 1){} // XRDY=1表示接收到数据
RecieveChar=SciaRegs.SCIRXBUF.all;
SciaRegs.SCITXBUF = RecieveChar+1; // 接收到的字符(RecieveChar)+1
while(SciaRegs.SCICTL2.bit.TXRDY == 0){}
while(SciaRegs.SCICTL2.bit.TXEMPTY == 0){}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -