历史上的今天
返回首页

历史上的今天

今天是:2024年12月16日(星期一)

正在发生

2020年12月16日 | STC15F104W单片机四路按键循环开关程序

2020-12-16 来源:51hei

用一个按键控制四个继电器循环导通,程序由51单片机的程序改到STC15F104W上,第一次按键,第一个继电器吸合,第二次按键,第二个继电器吸合,第一个继电器释放,以此类推。最初的想法就是实现电风扇,三档开关,程序里面可以修改端口。
#include

sbit key = P3^4; //定义按键

void delayms(void);                         //延时
void led_refresh(unsigned char i);   //led显示
unsigned char keyscan(void);                 //按键
void init(void);                                         //初始化

void main(void)
{
   unsigned char m;

   init();
   while(1)
        {
          m = keyscan();
          led_refresh(m);
        }

}
               
void delayms(void)                   //延时函数
{
  unsigned int i;

  i = 10000;
  while(i--);
}

void led_refresh(unsigned char j)        //led显示
{
      switch(j)
           {
                  case 0 :  P3=0xFF; break;            // 全部熄灭
                  case 1 :  P3=0xFE; break;                // led1 点亮
                  case 2 :  P3=0XFD; break;                // led2 点亮
                  case 3 :  P3=0XFB; break;                // led3
                                  case 4 :  P3=0XF7; break;        
           }
}

unsigned char keyscan(void)                          //按键扫描
{
        static unsigned char count = 0;
        unsigned char z = 0;
    static bit keyflag = 1;
    static bit backup = 1;

       keyflag = key;
              if(keyflag != backup )
           {
                 delayms();
                     if(keyflag == key)
                       {
                             if(backup == 0)
                            {
                                     count++;
                                   if(count >= 5)
                                             {
                                       count = 0;
                            }         }
                          }
                }

推荐阅读

史海拾趣

Easy Braid公司的发展小趣事

品质一直是Easy Braid公司的生命线。在竞争激烈的市场环境中,Easy Braid始终坚持使用高品质的材料和严格的生产工艺,确保每一件产品都达到最高标准。正是这种对品质的执着追求,让Easy Braid赢得了客户的信任和口碑。随着客户群的扩大,Easy Braid的品牌影响力也逐渐增强。

DIPTRONICS MANUFACTURING INC公司的发展小趣事

随着技术的不断进步,圜达实业不断投入研发,成功推出了一系列具有创新性和竞争力的产品,如旋转开关、滑动开关等。这些产品不仅满足了市场的需求,还为公司赢得了良好的口碑。此外,公司还获得了TS 16949及ISO-14001认证,进一步提升了产品品质和竞争力。

Curtis Instruments Inc公司的发展小趣事

1995年,Curtis在中国建立了独资企业科蒂斯仪器(中国)有限公司,其制造工厂于1997年投入生产。经过近20年的发展,Curtis在中国已经建立了完善的生产、研发和销售体系。2012年,Curtis在苏州工业园区成立了独立的科蒂斯技术(苏州)有限公司,进一步提升了在中国的研发和生产能力。如今,Curtis中国已成为Curtis在全球的第6个研发中心,也是中国最现代化的生产电动车辆驱动控制系统的厂商之一。

BEI Sensors公司的发展小趣事

自上世纪80年代起,Beckhoff便将基于PC的自动化新技术作为公司的发展理念。通过不断研发和创新,公司成功地将工业PC、现场总线模块、驱动产品和控制软件等整合为一套完整的、相互兼容的控制系统。这一创新为工控领域带来了革命性的变革,使得工业自动化系统更加开放、灵活和高效。

E Connector Solutions公司的发展小趣事

人才是企业发展的核心竞争力。E Connector Solutions公司高度重视人才培养和团队建设。公司建立了完善的人才培养机制,通过内部培训、外部引进等方式不断提升员工的专业技能和综合素质。同时,公司还注重团队建设,鼓励员工之间的协作与交流,营造积极向上的工作氛围。这种注重人才培养和团队建设的做法为公司的发展提供了坚实的人才保障。

请注意,以上故事均为虚构,旨在为您提供一个关于电子连接器解决方案公司发展起来的故事框架。如果您需要了解特定公司的具体发展情况,建议您查阅相关公司的官方网站或行业报告。

Elcoma公司的发展小趣事

Elcoma公司在其早期发展阶段,就致力于电子技术的研发和创新。他们成功研发出一种新型高效能的电子芯片,这一突破性的技术大大提高了电子设备的性能和效率。这一创新技术迅速在行业内引起了广泛关注,许多大型电子设备制造商纷纷与Elcoma合作,希望将这一技术应用到他们的产品中。Elcoma凭借这一技术突破,逐渐在电子行业中崭露头角。

问答坊 | AI 解惑

求助,汇编问题。

我刚开始学问个初级问题,希望诸位帮个忙。 CJNE R0,#100,LOOP 这句CJNE的意思是当R0不足100时跳LOOP。 问题是有没有当 RO 满足100时在跳LOOP的方法呢?…

查看全部问答>

CH372/CH375的Windows驱动程序/动态库

CH372/CH375的Windows驱动程序/动态库…

查看全部问答>

快快乐乐跟我学开关电源设计

转自ourdev,非常好的学习指导,推荐给大家。 “我想DIY开关电源,要具备哪些理论知识、实践技能和工程素质啊?”     “如何从给定的设计规格设计出开关电源?具体步骤是什么?”     “开关电 ...…

查看全部问答>

【视频分享】《AVR单片机十日通》

本帖最后由 paulhyde 于 2014-9-15 03:34 编辑 欣世纪电子阿迪老师单片机系列视频教程之《AVR单片机十日通》 这个是视频概述,粗略介绍该视频教程的内容和特点 $(\'swf_EK9\').innerHTML=AC_FL_RunContent(\'width\', \'550\', \'height\', \'4 ...…

查看全部问答>

PCB板子

我这个板子做得怎么样 大家指点指点 …

查看全部问答>

U盘文件无法删除的问题

文件无法删除,粉碎,格式化都试过啦,敬请大家帮忙,我该怎么办?…

查看全部问答>

美国军用品——免充气蜂巢轮胎

轮胎是一项非常巨大的发明,如果没有轮胎,而只是硬梆梆的轱辘,汽车也不会发展到今天。但是日前,一家美国公司却发明了这样一款无需充气的蜂巢轮胎。 它将本来的充气部分用蜂巢结构来代替,这样一来就可以起到与传统轮胎类似的减震作用了。最重要 ...…

查看全部问答>

串口转以太网设计

串口转以太网设计新产品研发申请 LM3S8962评估板…

查看全部问答>

定时器中TACCIE和TAIE 两个允许位有什么区别

定时器中TACCIE和TAIE 两个允许位有什么区别…

查看全部问答>

[原创文章] 【R7F0C809】个人入门中遇到的问题总结

[原创文章] 【R7F0C809】个人入门中遇到的问题 1、导入例子出错,不支持该型号 解决:r7f0c809_dif中的Device_Custom文件夹,直接复制该文件夹到C:\\Program Files\\Renesas Electronics\\CubeSuite+路径就可以了! 2、信息提示,可以手动操 ...…

查看全部问答>