proteus 仿真好像单片机根本没有加载我写的程序。
我用proteus仿真,用的51单片机,但是我点击右键加载了我写的程序(在keil里跑通过了的hex文件)后,单片机的三个并行的端口都是高电平,我写了一个小小的程序把它们...
我用proteus仿真,用的51单片机,但是我点击右键加载了我写的程序(在keil里跑通过了的hex文件)后,单片机的三个并行的端口都是高电平,我写了一个小小的程序把它们全改成低电平,好像也没有用,似乎程序就更本没有加载上去。是不是给单片机供电后,它自动就把几个引脚全部至成高电平?我把所有的引脚都去掉它们还都是高电平,似乎就没有什么反应???
展开
4个回答
展开全部
单片机上电后各端口自动被置为高电平
经过程序的改变后发生变化,按你说的情况,可能有两种原因,一是程序的问题,二是程序加载的问题
经过程序的改变后发生变化,按你说的情况,可能有两种原因,一是程序的问题,二是程序加载的问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我想是这样的,就是你的程序没有等待或没有死循环,程序一下子就跑完了,你还没有来得及看。程序跑完之后就是复位时的状态了。最好在程序后加sjmp $(汇编),或是while(1);(C语言)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//你的程序有问题,看看下面的我给你写的,这个肯定没问题;
#include
sbit
led=p2^7;
sbit
key
=
p1^0;
void
main()
{
led=0;
key=1;
while(1)
{
if(key==0)
{
while(!key);
led=!led;
}
}
}
#include
sbit
led=p2^7;
sbit
key
=
p1^0;
void
main()
{
led=0;
key=1;
while(1)
{
if(key==0)
{
while(!key);
led=!led;
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询