本文内容列表:
位闪存; //闪烁标志位
sbit led=P0^0;
sbit P01=P0^1;
sbit P02=P0^2;
void main()
{
P01=P02=0;
闪光=0;
led=0;
同时(1)
{
扫描键();
ledflash();
}
}
void scankey()//键盘扫描
{
P01=1;//行线给出1
if(P02)//如果P02也为1,则表示已连接
{
delay(10);//去抖动10MS
if(P02)//再次按下确认按钮
{
while(P02){flash=flash}//按住按钮的动作
flash=~flash;//按下按钮后执行动作
}
}
}
void ledflash()
{
如果(闪光)
{
led=1;//点亮
delay(100);//延迟100MS
led=0;//关闭
}
else led=0;
}
无效延迟(unsigned int i)
{根据单片机频率编写带有形式参数的1MS演示程序}
这个程序现在就写好了。 。它应该是可执行的。有些细节就不写了。我可以自己修改。只是一个大盒子(比如函数声明、端口定义等)
按下时proteus灯闪烁,再次按下时熄灭。解决方案代码:
1。使用proteus绘制LED闪烁电路图。
2。编写了keilc程序。
3。编写完程序后,新建一个Project。
4。将keilc文件导入到工程中。
5。导入完成后,就意味着编译执行。选择左侧的两个按钮。左边第一个是编译,第二个是执行。
6。选择输出选项卡并生成十六进制文件即可解决问题。
#include“msp430x54x.h”
//************************************************ *** ******************
void main()
{
WDTCTL = WDTPW + WDTHOLD; //关闭看门狗
P2DIR = ~(BIT6 + BIT7); //P2.6 P2.7 设置为输入
P1DIR |= BIT0; //P1.0设置为输出
P7DIR |= BIT7; //P7.7设置为输出
P2REN |= BIT6 + BIT7; //上拉下拉电阻使能
P2OUT |= BIT6 + BIT7; //P2.6 P2.7 为上拉
P2IES |= BIT6 + BIT7; //P2.6 P2.7下降触发
P2IE |= BIT6 + BIT7; //P2.6 P2.7 中断使能
P2IFG =0; //清除中断标志,防止配置过程中出现中断标志。旗帜是 1
_EINT(); //启用总中断
LPM4; //输入低功耗4
}
/************************端口中断程序******************** *****/
#pragma 向量 = PORT2_VECTOR
__中断无效端口2(无效)
{
开关(P2IV)
{
情况 0x0e: P1OUT ^= BIT0;break; //LED1 亮和灭
情况 0x10: P7OUT ^= BIT7;break; //LED2 亮灭
默认:break;
}
}
如果您的jlink不是正版,那么您的固件可能已被阻止。刷新固件