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

相关内容

热门资讯

华数传媒涨0.31%,成交额5... 6月15日,华数传媒涨0.31%,成交额5634.33万元,换手率0.51%,总市值120.44亿元...
宏力达股价连续3天上涨累计涨幅... 6月15日,宏力达涨1.03%,截至发稿,报39.08元/股,成交7953.17万元,换手率1.47...
博瑞传播涨0.73%,成交额5... 6月15日,博瑞传播涨0.73%,成交额5293.66万元,换手率1.17%,总市值45.15亿元。...
联美控股涨2.52%,成交额5... 6月15日,联美控股涨2.52%,成交额5771.41万元,换手率0.42%,总市值138.03亿元...
多利科技股价连续10天下跌累计... 6月15日,多利科技跌0.98%,截至发稿,报18.19元/股,成交1.06亿元,换手率3.27%,...