实验: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

相关内容

热门资讯

比亚迪:公司海外业务保持良好增...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会! (来源:证券时报)人...
特朗普要求伊朗举白旗投降 转自:财联社【特朗普要求伊朗举白旗投降】财联社8月17日电,据美国福克斯新闻今天(8月17日)报道,...
哈尔斯:上半年归母净利润488... 哈尔斯8月17日披露半年报,公司上半年实现营业收入17.73亿元,同比增长12.83%;归属于上市公...
飞力达拟4000万元至6000... 8月17日,飞力达公告,公司拟以集中竞价交易方式回购股份。回购金额不低于4000万元且不超过6000...
远东传动半年报解读:扣非净利润... 财报解读营业收入:商用车市场复苏驱动增长25.94%2026年上半年,远东传动实现营业收入9.05亿...