实验:MSP430F249 跑马灯
Date: March 14, 2023
基础设定:
IAR基础设置:设置设备与输出文件及格式
实验:MSP430F249 跑马灯
具体内容:
实验名称:跑马灯(MSP430F249)
实验说明:
- 通设置系统主时钟(MCLK=8Mhz ) 、辅助时钟(ACLK=8Mhz )、子系统时钟(SMCLK=8Mhz )
- 实现如下D1~D8灯轮流亮,然后无限循环
仿真图:
-
Code:
/****************************************************************** * 实验名称:跑马灯(MSP430F249) * * 实验说明: * 通设置系统主时钟(MCLK=8Mhz ) 、辅助时钟(ACLK=8Mhz )、 * 子系统时钟(SMCLK=8Mhz ) *******************************************************************/ #include <MSP430x24x.h> #define uchar unsigned char #define uint unsigned int void delayms(uint t) { uint i; while(t--) for(i=1330;i>0;i--);//进过参数的调整 } void main(void) { uchar i; WDTCTL=WDTPW + WDTHOLD; // 关闭看门狗 P4DIR=0x01; P3SEL=0; // 设置为普通I/O 口 P3DIR=0xFF; // 设置方向 P3OUT=0xFF; // 设置初始值 while(1) { for(i=0;i<8;i++) { P3OUT=~(1<<i); delayms(50);//延时 } } }
运行结果:没有任何报错和警告
问题&解决:
-
仿真运行时,按键按下灯不亮,或者一直亮
解决:重启proteus软件
-
仿真报Unrecognized opcode at 0x000006: 0x0000的错误
解决:设备问题,IAR软件中选中MSP430F249