您的位置:首页 > 编程语言

u-boot下编写测试CPU的GPIO状态代码[转]

2017-12-12 16:38 253 查看
面对自己设计的新板子,基于freesclae的I.MX51 SOC,如果采购仿真器的话,据说连软件带硬件要7000美金,这实在是一笔不小的开销。但是,板子总是需要使用软件方法来测试的,特别是IO的基本功能。那么在u-boot下写一些有关的测试程序是很有必要的。虽然这个方法无法和仿真器相比,但是只要板子boot起来,那么使用底层的IO函数,进行适当的“裸奔”,对设计者来说,总算是有点“招”了。

    本文编写了一个gpio_ctrl程序,在u-boot启动后的命令行运行,直接对SOC的GPIO端口进行高低电平测试。实际就是对u-boot 的命令进行一次自己需要性的扩展。具体做的方法如下:

1、添加命令标志CONFIG_CMD_GPIOCTRL

      打开u-boot/include/config_cmd_default.h

添加:

#define CONFIG_CMD_GPIOCTRL

2、编写代码

     在u-boot/commom目录下,建立一个gpio_ctrl.c空文件,并编写代码:

#include

#include

#include

#include

#include

#include

 

struct gpio_out_list {

 char  strPinName[20];

 int   nGroup;

 int  bit;

 unsigned int PIN;

};

static struct gpio_out_list gpio_list[] = {

    {"EIM_D17",2,1,MX51_PIN_EIM_D17},

    {"EIM_D18",2,2,MX51_PIN_EIM_D18},

    {"EIM_D22",2,6,MX51_PIN_EIM_D22},

    {"EIM_A16",2,10,MX51_PIN_EIM_A16},

    {"EIM_A18",2,12,MX51_PIN_EIM_A18},

    {"EIM_A20",2,14,MX51_PIN_EIM_A20},

    {"EIM_A21",2,15,MX51_PIN_EIM_A21},

    {"EIM_A22",2,16,MX51_PIN_EIM_A22},

    {"EIM_A23",2,17,MX51_PIN_EIM_A23},

    {"EIM_A24",2,18,MX51_PIN_EIM_A24},

    {"EIM_A25",2,19,MX51_PIN_EIM_A25},

    {"EIM_A26",2,20,MX51_PIN_EIM_A26},

    {"EIM_A27",2,21,MX51_PIN_EIM_A27},

    {"EIM_CS1",2,26,MX51_PIN_EIM_CS1},

    {"EIM_OE",2,24,MX51_PIN_EIM_OE},

    {"EIM_DTACK",2,31,MX51_PIN_EIM_DTACK},

    {"NANDF_RB1",3,9,MX51_PIN_NANDF_RB1},

    {"NANDF_CS0",3,16,MX51_PIN_NANDF_CS0},

    {"NANDF_CS1",3,17,MX51_PIN_NANDF_CS1},

    {"NANDF_D0",4,8,MX51_PIN_NANDF_D0},

    {"NANDF_D1",4,7,MX51_PIN_NANDF_D1},

    {"NANDF_D3",4,5,MX51_PIN_NANDF_D3},

    {"NANDF_D4",4,4,MX51_PIN_NANDF_D4},

    {"NANDF_D5",4,3,MX51_PIN_NANDF_D5},

    {"NANDF_D6",4,2,MX51_PIN_NANDF_D6},

    {"NANDF_D14",3,26,MX51_PIN_NANDF
de39
_D14},

    {"NANDF_D15",3,25,MX51_PIN_NANDF_D15},

    {"CSI1_D9",3,13,MX51_PIN_CSI1_D9},

    {"CSI2_D12",4,9,MX51_PIN_CSI2_D12},

    {"CSI2_D13",4,10,MX51_PIN_CSI2_D13},

    {"CSI2_D18",4,11,MX51_PIN_CSI2_D18},

   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐