导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→C51编程:我的程序如下:

* 17182: C51编程:有谁用过伟福调试软件

   password 
password发表的帖子 

 C51编程:我的程序如下:
我的程序是这样:void time1(void) interrupt 3   /*中断时间约<1毫秒*/
{
        TH1=0xfe;
        TL1=0x0c;
        TR1=0;
        key=0x00;
        dog();       /*喂狗脉冲*/
        an++;
        P2=0xff;
        switch(an)
        {
                case 1:
                     P21=led2;
                     P20=led6;
                     P27=0;
                     if(~P23) key=0x06;
                     if(~P22) key=0x02;
                     break;
                case 2:
                     P21=led3;
                     P20=led7;
                     P26=0;
                     if(~P23) key=0x07;
                     if(~P22) key=0x03;
                     break;
                case 3:
                     P21=led4;
                     P20=led1;
                     P25=0;
                     if(~P23) key=0x08;
                     if(~P22) key=0x04;
                     break;
                case 4:
                     P21=led5;
                     P24=0;
                     if(~P23) key=0x01;
                     if(~P22) key=0x05;
                     break;
                default:
                     an=0;
                     break;
         }   /*end_switch*/
    TR1=1;
}
an,key是字节,led1,led2....led7是位(bit),P20,P21...P27是 P2口的口线
我编译全通过,问题是:
用switch选折数据时出错,在CPU窗口中看到汇编程序是这样的:
先an+1,an送A,A+#0FEH,JZ 转为1时的代码段,A-1,JZ转为2时的代码段....

是否是在JZ是出错?
在仿真器设置中,关于连接的文件是否会出错?谢谢你!  ^_^



发表时间:2003年1月13日10:01:00

  
回复该帖

本主题共有 5 帖,分页:>>>>>该主题的所有内容[5]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:硬件:120ns的FLASH片子(29F040B)在DS80C320(25MHZ那种)上是否好用?
[下一篇帖子]:我少贴了一句。reg10读出来的就不正常,都是FF什么的程序我少贴了一句, ...... B