CODE类型 数码管

来源:百度知道 编辑:UC知道 时间:2024/05/13 23:59:28
用C语言编译单片机出现的问题 数码管
unchar code dis_7[11]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00};
P0=dis_7[6];
共阴极数码管能显示出"6"这个数字
但是如果把unchar code dis_7[11]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00};
中的code去掉改为
unchar dis_7[11]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00};
加上P0=dis_7[6];
屏幕出现不了"6" 且开始乱闪 为什么呢?

那可能是你的RAM太多,也就是说,你去掉CODE后,那你这个数组就放在data区,沾用系统的RAM,使读出的数出错了。
CODE是放在程序存储区,只有调用时才会用