找回密码
 立即注册
搜索
0赞
赞赏
手机版
扫码打开手机版
把文字装进口袋

控制LED灯的亮灭的2种开关检测方案

无奈的剑侠站 2022-8-22 09:56:43
开关检测案例一:
        具体电路图如下: K1--K4闭合,控制 D1—D4 亮灭
       

        产生的问题:
        1、关于 R8 R9 R7 R10 的阻值选择问题,倘若太大的话, 比如10K 不管开关断开还是闭合,好像都没什么用,电阻上部分电流被拉低,一直为低电平,虽然仿真对,但终究有问题
        倘若选择一般大,则为灰色,表示电平不确定,最后不得已选择 20Ω 电阻,电平可以确定,开关闭合,电平拉低,那么实际电路中, 电阻的取值究竟怎样呢????
        2、需要掌握 按位与 的用法
        参加运算的两个数据,按二进制位进行“与”运算。
        运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1;
        即:两位同时为“1”,结果才为“1”,否则为0
        例如:3&5 即 0000 0011 & 0000 0101 = 0000 0001 因此,3&5的值得1。
        参考程序如下以及电路图:
       

        #include《reg52.h》
        #include《intrins.h》
        #define uchar8 unsigned char
        #define uint16 unsigned int
        #define LED P1
        /*****************************/
        // 函数名称: DelayMS( )
        // 函数功能: 延时
        // 入口函数: 延时毫秒
        // 出口函数: 无
        /************************* *******************/
        void DelayMs(uint16 val)
        {
        uint16 i,j;
        for( i=0;i《val;i++)
        for(j=0;j《113;j++);
        }
        void main()
        {
        while(1)
        {
        uchar8 temp;
        LED=0xff; // P1.1—P1.3 置1 高电平 ,LED熄灭 ,高四位默认高电平,作为输入
        temp=P1&0xf0; // 读 P1口 ,并且屏蔽其低四位,送入temp
        temp=temp》》4; // temp内容 右移四位,也就是说 P1口高4位状态移动至低四位 ,两者状态一样
        LED=temp; // temp 的数据送 P1口输出
        DelayMs(1000);
        }
        }
        开关检测案例二:
       

        参考程序代码:(目的: 通过 K1 K2 按键的组合00 01 10 11 来控制 LED 的灯的亮灭)
        #include《reg52.h》
        #include《intrins.h》
        #define uchar8 unsigned char
        #define uint16 unsigned int
        #define LED P1
        void main()
        {
        uchar8 state;
        do
        {
        P2=0xff; // 设置 P2口输入
        state=P2; // 读 P2口的状态,送入 state
        state=state&0x03; // 屏蔽 高6位
        switch(state)
        {
        case 0 : LED=0xFE;break; // 14 0x0e 1110
        case 1: LED=0xFD;break; // 13 0x0d 1101
        case 2: LED=0xFB;break; // 11 0x0b 1011
        case 3: LED=0xF7;break; // 7 0x07 0111
        }
        }while(1);
        }

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

使用道具 举报

您需要登录后才可以回帖 立即登录
太赞了
2022-8-22 10:45:07
2022-8-22 13:12:05
不错
2022-8-22 16:21:26
既然你诚心诚意地发贴了,那我就大发慈悲地回你一贴。为了防止论坛被破坏,为了维护此楼的和平!贯彻爱与真实的邪恶可爱又迷人的顶贴角色!---穿梭在银河之间的顶贴队
2022-8-27 05:42:05
好帖啊。。。难得一见的好贴。。。楼主的文章简直是惊天地。。。泣鬼神。。。 图文并茂。。。嬉笑怒骂
。。。指点系词。。。激扬文字。。。  带给我们的仅仅是视觉上的感受吗。。。大错特错。。。楼主的文
章带给我们的是心灵深处的震撼。。。楼主的文章是宣言书。。。楼主的文章是宣传队。。。楼主的文章是播
种机。。。楼主的文章带来的是读者的欣喜和系词的繁荣。。楼主的文笔实在用笔墨难以形容。。。熄了灯。
。。打着赤脚。。。将整个人都倦在大班椅里。。。
2022-8-28 16:18:53
靠,你又来这里吹牛了,害我找了几个社区, 翻了几百页帖子,终于找到你了。工头让我告 诉你,明天去工地早些,要搬3车水泥两车砖 头,如果搬不完,连昨天的工钱也不给你了
2022-8-28 16:18:56
谢谢楼主,,,收藏ing
2022-8-28 20:12:45
支持,赞
2022-8-29 00:06:34
好像还不错!
2022-8-29 04:00:22
123下一页
返回顶部