ARM学习之S3C2440_GPIO编程

2805阅读 0评论2012-04-26 kangear
分类:LINUX

ARM学习之S3C2440_GPIO编程

作者:kangear

             Email

             Blogkangear.blog.chinaunix.net

       GPIO输入输出端口,有GPBCON,GPBDAT,GPBUP常用寄存器。GPBCON是配置寄存器,GPBDAT是数据寄存器,GPBUP是上拉电阻使能寄存器。通过下面一个函数体现这三个寄存器配置。

 

       寄存器             功能描述

      GPBCON            配置管脚(输入or输出)

      GPBDAT            数据寄存器(如:LEDor灭)

      GPBUP             上拉电阻使能寄存器(是否使用上拉电阻)

 

       寄存器地址不用考虑,因为S3C2440.h中已经配置好,直接可以用。

程序:

#include

void delay(int times)

{

    int i;

    for(;times>0;times--)

      for(i=0;i<400;i++);

}

int main(void)

{    

    int i;

    GPBCON =10000000000;                               /*配置GPB5为输出 (参考图1)*/   

       GPBUP  =~100000;                                        /*配置GPB5上拉电阻使能(参考图2)*/

    for(i=0;i<10000;i++)

    {

           /* LED1 */

           GPBDAT =    ~100000;                          /*GPB5低电平*/

   

           delay(1000);

   

           /* LED1 */

           GPBDAT =     100000;                             /*GPB5高电平*/

          

           delay(1000);

    }

}

Tu1:

Tu2:

Tu3:

运行结果:

       当然这个程序有很多漏洞,只考虑了自己把人家都强行置1或置0 。这个只是初步学习用,以后真正编程要考虑的要多的多了。


上一篇:MDK4.23+Jlink平台S3C2440裸机程序
下一篇:ARM状态和Thumb状态通俗理解