首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

(高手帮忙)51单片机proteus仿真环境下的有关问题

2012-02-25 
(高手帮忙)51单片机proteus仿真环境下的问题程序片段1:P3scan[i]switch(i){case0:P1seven_seg[now.minu

(高手帮忙)51单片机proteus仿真环境下的问题
程序片段1:
P3=scan[i];
switch(i)
{
  case   0:
                      P1=seven_seg[now.minute%10];
break;
case   1:
P1=seven_seg[now.minute/10];
break;
case   2:
P1=seven_seg[now.hour%10];
P1_7=1;
break;
case   3:
P1=seven_seg[now.hour/10];
break;
  }
i++;
if(i==4)i=0;

与程序片段2:
switch(i)
{
  case   0:
                      P1=seven_seg[now.minute%10];
break;
case   1:
P1=seven_seg[now.minute/10];
break;
case   2:
P1=seven_seg[now.hour%10];
P1_7=1;
break;
case   3:
P1=seven_seg[now.hour/10];
break;
  }
P3=scan[i];
i++;
if(i==4)i=0;
的区别?其中scan为片选信号,seven_seg为7段led显示器(7SEG-MPX4-CC-BLUE)
实验是在proteus的仿真环境下做的,但2个结果明显不一样,
程序段1正常显示,但程序段2就显示乱码了。
还有,如果改成用4个7SEG-COM-AN-BLUE,进行实验,结果是每个管都在左右2个管的值上乱跳不停。而且对单片机的CPU使用率居然达到95%或以上,如果达到100%程序就死了。我想应该不是驱动问题吧?!(我猜测会不会是仿真软件有问题!)
    小人单片机刚入门,经老师介绍使用这个仿真软件,因为是准备学嵌入式,以后要转ARM处理器学习,单片机只是个过渡性芯片,所以不想买个开发板学习。望各位高手勿嫌弃,帮帮小弟的忙!

程序是每秒200次T0中断,每次中断走过上面程序段一次。

[解决办法]
先和你说个事:单片机的开发和ARM的开发是两回事.

会不会单片机对ARM开发影响不大...

热点排行