mini2440gpio输出的电平为什么不发生变化

做了LED的定时器的实验。此时LED1到4能够正常点亮与熄灭,但是为什么对应的GPIO接口即GPIO4到8测到的电平都不会发生变化?实际就是我不知道怎么改变GPIO的输出的电平 ?请问是因为中间缺少了什么步骤吗?

DIANJI.H
#ifndef __DIANJI_H__
#define __DIANJI_H__

#define LEFT_On()   {GPBDAT|=(1<<6);}      
#define LEFT_Off()  {GPBDAT&=(~(1<<6));}      
#define RIGHT_On()  {GPBDAT|=(1<<8);}
#define RIGHT_Off() {GPBDAT&=(~(1<<8));}    
#define On1()  {GPBDAT&=(0<<5);}  
#define On2()  {GPBDAT|=(1<<13);}  

void DIANJI_Init(void);

#endif


DIANJI.C
#include<s3c2440.h> 
#include"dianji.h"


void DIANJI_Init(void)
{
 GPBCON&=~((3<<10)|(3<<12)|(3<<16)|(3<<26)|(3<<18)|(3<<28));  
 GPBCON|=((1<<10)|(1<<12)|(1<<16)|(1<<26)|(1<<18)|(1<<28));   

 GPBUP&=~((1<<5)|(1<<6)|(1<<8)|(1<<13)|(1<<9)|(1<<14));     
                        
 GPBDAT|=((0<<5)|(1<<6)|(0<<8)|(0<<13)|(1<<9)|(1<<14));      


TIME.C
 #include<s3c2440.h>   
  #include"timer.h"
void  Timer0_Init(void)
{
 TCFG0&=~(0xff);    
 TCFG0|=99;

 TCFG1&=~(0xf);     
 TCFG1|=0x02;        
                                
 TCNTB0=125000;              
 TCON|=(1<<1); 
 TCON=0x09;   
}

TIME.H
#ifndef __TIMER_H__
#define __TIMER_H__


void Timer0_Init(void);
#endif


MAIN.C
#include<s3c2440.h>
#include"timer.h"
#include"dianji.h"

int main()
{   
 
     int flag=0;
         DIANJI_Init();   
    Timer0_Init(); 
     while(1)
    {
        if(SRCPND&(1<<10))    
        {                                    
             flag=!flag;                     
             SRCPND|=(1<<10);     
         }
         if(1==flag)                      
                                         
        {
            RIGHT_On();
                LEFT_Off();
        }  
        else
       {
          RIGHT_Off();
            LEFT_On();
        }
       }
}

如果LED灯可以亮灭,你却量不到电压变化,那说明你的电压表坏了

贴图或者程序啊,要不然根本无从下手哦。