📄 main.c
字号:
#include "systemInit.h"
#include <uart.h>
#define LED1 GPIO_PIN_0
#define LED2 GPIO_PIN_2
// UART初始化
void uartInit(void)
{
SysCtlPeriEnable(SYSCTL_PERIPH_UART2); // 使能UART 模块
SysCtlPeriEnable(SYSCTL_PERIPH_GPIOG); // 使能RX/TX所在的 GPIO
GPIOPinTypeUART(GPIO_PORTG_BASE, // 配置RX/TX所在管脚为
GPIO_PIN_0 | GPIO_PIN_1); // UART收发功能
UARTConfigSet(UART2_BASE, // 配置UART 端口
9600, // 波特率:9600
UART_CONFIG_WLEN_8 | // 数据位:8
UART_CONFIG_STOP_ONE | // 停止位:1
UART_CONFIG_PAR_NONE); // 校验位:无
UARTEnable(UART2_BASE); // 使能UART 端口
}
// 通过UART 发送字符串
void uartPuts(char *s)
{
while (*s != '\0')
{
UARTCharPut(UART2_BASE, *(s++));
}
}
void uartGets(char *s)
{
int i;
for(i=0;i<=7;i++)
{
*(s+i)=UARTCharGet(UART2_BASE);
}
}
// 主函数(程序入口)
int main(void)
{
char i=0;
char receive_buff[15]={0};
jtagWait(); // 防止JTAG失效,重要!
clockInit(); // 时钟初始化:晶振,6MHz
uartInit() ;
SysCtlPeriEnable( SYSCTL_PERIPH_GPIOD); //使能GPIOD端口
SysCtlPeriEnable( SYSCTL_PERIPH_GPIOG);
GPIOPinTypeOut( GPIO_PORTD_BASE,LED1); //设置为输出
GPIOPinTypeOut( GPIO_PORTG_BASE,LED2);
GPIOPinWrite(GPIO_PORTD_BASE,LED1,0x01); //turn off led1
GPIOPinWrite(GPIO_PORTG_BASE,LED2,0x04); //turn off led1
for(i=0;i<=14;i++)
{
receive_buff[i]=UARTCharGet(UART2_BASE);
}
if(receive_buff[0]=='a'&&receive_buff[1]=='b'&&receive_buff[2]=='c'&&receive_buff[3]=='3'&&receive_buff[4]=='1')
GPIOPinWrite(GPIO_PORTD_BASE,LED1,0x00);
uartPuts("A za za fighting123456789abcdefghijklmnopqrstuvwxyz\r\n");
if(receive_buff[0]=='c'&&receive_buff[1]=='d'&&receive_buff[2]=='e'&&receive_buff[3]=='5'&&receive_buff[4]=='1')
GPIOPinWrite(GPIO_PORTG_BASE,LED2,0x00);
for (;;)
{
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -