Date: March 13, 2023
IAR基础设置:设置设备与输出文件及格式
具体要求:
仿真图:
代码:
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;}}
}
运行结果:没有任何报错与警告
问题&解决:
仿真运行时,按键按下灯不亮,或者一直亮
解决:重启proteus软件
仿真报Unrecognized opcode at 0x000006: 0x0000的错误
解决:设备问题,IAR软件中选中MSP430F249
下一篇:实验01:吃鸡蛋问题