按键控制灯(寄存器)

编程入门 行业动态 更新时间:2024-10-28 06:26:13

按键控制灯(<a href=https://www.elefans.com/category/jswz/34/1768029.html style=寄存器)"/>

按键控制灯(寄存器)

核心:基地址加偏移地址,然后通过位操作

main.c

void delay(int time)
{while(time --);}
int main()
{//使能GPIOCunsigned int *pRcc = (unsigned int *)(0x40021000 +  0x18);*pRcc |= (1<<4); //使能GPIOApRcc = (unsigned int *)(0x40021000 + 0x18);*pRcc |= (1<<2);//设置GPIOC 13为输出模式unsigned int *pMode = (unsigned int *)(0x40011000 + 0x04);*pMode |= (0x01 << 20);//设置GPIOA 10为输入模式pMode = (unsigned int *)(0x40010800 + 0x04);*pMode &= ~(0x01 << 8);*pMode |= (0x01 << 10);//浮空输入while(1){//GPIOC13输出1unsigned int *pOutput = (unsigned int *)(0x40011000 + 0x0C);
//    *pOutput |= (1 << 13);unsigned int *pInput = (unsigned int *)(0x40010800 + 0x08);//     //延时
//     delay(1000000); 
//    //GPIOC13输出0      
//    *pOutput &= (0 << 13);        
//    delay(1000000);//如果GPIOA 10读取的是高电平,灯就灭if((*pInput &= (1<<10)) > 0){*pOutput |= (1 << 13);//灭}else{*pOutput &= (0 << 13); //亮}}//    return 0;
}

更多推荐

按键控制灯(寄存器)

本文发布于:2023-11-15 16:14:59,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1602579.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:寄存器   按键

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!