实验:MSP430F249 按键控制四个灯,并消抖
创始人
2024-06-03 11:58:20

实验:MSP430F249 按键控制四个灯,并消抖

Date: March 13, 2023


基础设定:

IAR基础设置:设置设备与输出文件及格式

Untitled

Untitled




实验内容:MSP430F249 按键控制四个灯,并消抖

具体要求:

  1. 四个按键控制四个灯亮灭
  2. 消抖按键

仿真图:

Untitled

代码:

  • Code:

    #include
    void delay()//延时函数
    {unsigned int i;i = 50000;                              do (i--);while (i != 0); 
    }
    void main(void)
    {//预处理&启动程序WDTCTL = WDTPW + WDTHOLD;   //关闭看门狗P3DIR |= 0XFF ;             //初始化设定p3P1DIR |= 0x00 ;             //初始化设定p1char k;for(;;){//功能:消抖  确认按键是否按下,采用消抖技术if ((P1IN&0x0f)!=0x0f) //判断p1.0-p1.3{delay(); //延时消抖if((P1IN&0x0f)!=0x0f) //确认判断p1.0-p1.3{if((P1IN&BIT0)==0) k=0;if((P1IN&BIT1)==0) k=1;if((P1IN&BIT2)==0) k=2;if((P1IN&BIT3)==0) k=3;}while((P1IN&0x0f)!=0x0f);//等待按键松开}switch(k){case 0:P3OUT=~0x01;break;case 1:P3OUT=~0x02;break;case 2:P3OUT=~0x04;break;case 3:P3OUT=~0x08;break;default:break;}}
    }
    

运行结果:没有任何报错与警告

Untitled

问题&解决:

  1. 仿真运行时,按键按下灯不亮,或者一直亮

    解决:重启proteus软件

  2. 仿真报Unrecognized opcode at 0x000006: 0x0000的错误

    解决:设备问题,IAR软件中选中MSP430F249

相关内容

热门资讯

从“急需保护”到“传承有序”:... 转自:新华网  “我骑着阔力(神鹰),飞过千层云、万重山;我骑着胡萨(天鹅),跨过千条河、万条江;我...
古巴调整外汇管理措施,部分放宽... 2025年12月11日, 古巴官方公报正式发布一系列法令与决议,对外汇管理进行了多项重大调整。其核心...
南湖区低空经济 产业研讨会举行 (来源:嘉兴日报)转自:嘉兴日报  ■记者 冯思家 通讯员 周 波  本报讯 冬日南湖,热潮涌动。昨...
当九旬老作家对话三百年鬼狐 (来源:嘉兴日报)转自:嘉兴日报   九十一岁的老作家王蒙,还在读书,还在出书。新作《极限聊斋:王蒙...
40余处点位定格银装京城   本报讯(记者 代丽丽)每年降雪后,市属公园便会换上银装素裹的“冬日限定盛装”。昨天,市公园管理中...