读书人

嵌入式开发简略C语言程序

发布时间: 2013-01-06 15:44:47 作者: rapoo

嵌入式开发简单C语言程序
嵌入式开发简略C语言程序#include "systemInit.h"
#include <string.h>
#include <uart.h>

// UART初始化
void uartInit(void)
{


SysCtlPeriEnable(SYSCTL_PERIPH_UART2); // 使能UART模块
SysCtlPeriEnable(SYSCTL_PERIPH_GPIOG); // 使能RX/TX所在的GPIO端口

GPIOPinTypeUART(GPIO_PORTG_BASE,GPIO_PIN_0 | GPIO_PIN_1); // 配置RX/TX所在管脚为, 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(const char *s)
{
while (*s != '\0')
{
UARTCharPut(UART2_BASE, *(s++));
}
}


// 主函数(程序入口)
int main(void)
{
int c,len;
char s[300]="\nwjc:";
jtagWait(); // 防止JTAG失效,重要!
clockInit(); // 时钟初始化:晶振,6MHz


uartInit(); // UART初始化
uartPuts("cjw");

for (;;)
{
c = UARTCharGet(UART2_BASE); // 等待接收字符
UARTCharPut(UART2_BASE, c); // 回显,显示出输入的字符
if(c==13)
{
uartPuts(s);
len=strlen(s);
}
else if(c==8) //判断输入的是不是退格键
{
if(len==5) //判断已输入字符长度
{
uartPuts("\a"); //蜂鸣报警声
uartPuts(":");
}
else
{
len--;
}
} else
{
len++;
}
}
}

是这样的,这是一个用来开发控制台的程序,用C语言写的,上面那幅图片是打开这个程序的目录,这个只是一个main函数,还有其他函数,运行程序时是要将这个程序写入到开发板才能运行。我的目的是:当我输入退格键时,正常退格,输入回车键时,换行,这两个已经实现了,我用的是ASCII码中的十进制判断的;现在我也想用这种方法来判断上下左右方向键,也就是ASCII码中的37,38,39,40,但是我依葫芦画瓢后,貌似不能实现,不过我听有人说,这几个方向键不是一个ASCII码就能控制的,好像是需要几个,请问到底该怎样做啊。。雪地在线跪等。。。
[解决办法]
建议 LZ 先做个试验,去得到你想要的上下左右方向键键值,如果能得到,就用得到的键值;如果不能,再看你获取键值的代码。

读书人网 >WinCE

热点推荐