首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

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

2013-01-06 
嵌入式开发简单C语言程序#includesystemInit.h#include string.h#includeuart.h//UART初始化void ua

嵌入式开发简单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 先做个试验,去得到你想要的上下左右方向键键值,如果能得到,就用得到的键值;如果不能,再看你获取键值的代码。

热点排行