代码问题出在哪? KEILL跑没问题,protues8.1 一跑就有 L121:improper fix !求高手解答!

2019-07-15 13:49发布

#include <reg52.h>                  
#include <intrins.h>
#define uint unsigned int               
#define uchar unsigned char            
uchar aa,numb,temp;                           
uint z;                                 
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e, 0x79,0x71,0x00};   
void delay(uint);                        
sbit m2=P2^6;                           
sbit m3=P2^7;
void main()
{
   TMOD=0x01;
   TH0=(65536-50000)/256;
   TL0=(65536-50000)%256;
   EA=1;
   ET0=1;
   TR0=1;
   m3=1;
   P0=0XC0;
   m3=0;
   m2=1;
   P0=table[0];
   m2=0;
   temp=0xfe;
   P1=temp;
   aa=0;
   numb=0;
   while(1)
   {
      delay(1000);
      temp=_crol_(temp,1);
      P1=temp;
     
      
      }   
   }
   
void delay(uint z)
   {
      uint x,y;
      for(x=z;x>0;x--)
  for(y=110;y>0;y--);
      }
void time_0() interrupt 1
      {
  TH0=(65536-50000)/256;
         TL0=(65536-50000)%256;
  aa++;
   if(aa==40)
      {
  aa=0;
  numb++;
  if(numb==16)
     numb=0;
  m2=1;
  P0=table[numb];
  m2=0;
  
  }
  }

2.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
高空66
1楼-- · 2019-07-15 16:08
头文件呢
米兰霸气
2楼-- · 2019-07-15 18:51
 精彩回答 2  元偷偷看……
米兰霸气
3楼-- · 2019-07-15 20:49
程序大小超出选定器件的内存大小,在设置中将 code room size 改为 large即可  这个选项可以在option for target里可以找到
米兰霸气
4楼-- · 2019-07-15 22:10
程序大小超出选定器件的内存大小,在设置中将 code room size 改为 large即可  这个选项可以在option for target里可以找到
nicemonk
5楼-- · 2019-07-15 23:12
米兰霸气 发表于 2016-5-28 21:12
程序大小超出选定器件的内存大小,在设置中将 code room size 改为 large即可  这个选项可以在option for target里可以找到

C是用protues8.1写的啊,你说的是keil的方法,问题是,器件内存 在 protues里面 也好改,改了没用啊问题是!
悦悦家
6楼-- · 2019-07-16 05:11
nicemonk 发表于 2016-5-30 17:25
C是用protues8.1写的啊,你说的是keil的方法,问题是,器件内存 在 protues里面 也好改,改了没用啊问题是!

那应该怎么办呢?

一周热门 更多>