当前位置: 移动技术网 > IT编程>脚本编程>Python > 基于mini2440轮询控制LED(裸机代码)

基于mini2440轮询控制LED(裸机代码)

2019年04月05日  | 移动技术网IT编程  | 我要评论

永泽江里菜,字体转换器下载,莘县网

[cpp] 
#define global_clk   
#include "def.h"  
#include "option.h"  
#include "2440addr.h"       
#include "2440lib.h"  
#include "2440slib.h"     
 
#define led1_on  rgpbdat = ((0xf<<5)^(1<<5))    //gpb5=0  
#define led2_on  rgpbdat = ((0xf<<5)^(1<<6))    //gpb6=0  
#define led3_on  rgpbdat = ((0xf<<5)^(1<<7))    //gpb7=0  
#define led4_on  rgpbdat = ((0xf<<5)^(1<<8))    //gpb8=0  
#define led1_3_on  rgpbdat = ((0xf<<5)^(5<<5))  //gpb5=0,gpb7=0  
#define led2_4_on  rgpbdat = ((0xf<<5)^(5<<6))  //gpb6=0,gpb8=0  
#define led_off  rgpbdat = (0xf<<5) //gpb5=1,gpb6=1,gpb7=1,gpb8=1  
#define led_on  rgpbdat = ~(0xf<<5) //gpb5=0,gpb6=0,gpb7=0,gpb8=0  
 
 
int main()     /*gpg0 gpg3  gpg5  gpg6   gpg7   gpg11 设置为输入*/  
{   rgpgcon = ((0<1)|(0<7)|(0<11)|(0<13)|(0<15)|(0<23)); 
    rgpbcon = ((1<10)|(1<12)|(1<14)|(1<16));//b口gpb5-6-7-8设为输出   
    led_off; 
     
    while( 1 ) 
    { 
 
        if (rgpgdat&(1<<0)) //如果k1没有被按下   
        { 
            led_off; 
        } 
        else 
        { 
            led1_on; 
        } 
        if (rgpgdat&(1<<3)) //如果k2没有被按下  
        { 
            led_off; 
        } 
        else 
        { 
            led2_on; 
        } 
        if (rgpgdat&(1<<5)) //如果k3没有被按下  
        { 
            led_off; 
        } 
        else 
        { 
            led3_on; 
        } 
        if (rgpgdat&(1<<6)) //如果k4没有被按下  
        { 
            led_off; 
        } 
        else 
        { 
            led4_on; 
        } 
        if (rgpgdat&(1<<7)) //如果k5没有被按下  
        { 
            led_off; 
        } 
        else 
        { 
            led1_3_on; 
        } 
        if (rgpgdat&(1<<11)) //如果k6没有被按下  
        { 
            led_off; 
        } 
        else 
        { 
            led2_4_on; 
        } 
    } 
    return 0; 

     

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网