找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2135|回复: 6
收起左侧

请大神们帮我看看程序哪出错了?跪谢,本人菜鸟一枚,刚学单片机

[复制链接]
ID:126948 发表于 2016-6-16 20:42 | 显示全部楼层 |阅读模式
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int

uchar code DSY_CODE[]=
{
        0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90       
};
uchar code DSY_IDX[]=
{
        0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80
};
void DelayMS(uint x)
{
        uchar t;
        while(x--)
        {
                 for(t=120;t>0;t--);
        }
}

void main()
{
        uchar k,m;
        P0=0xff;
        P2=0x00;
        while(1)
        {
                 for(k=0;k<30;k++)
                {
                        for(m=0;m<8;m++)
                        {
                                P2=code DSY_IDX[k];
                                P0=DSY_CODE[m];
                                DelayMS(2);
                        }
                }
                P2=0x00;
                DelayMS(1000);
        }
}
总是显示这个错误:
8事牍?C(33): error C141: syntax error near 'code'


回复

使用道具 举报

ID:127004 发表于 2016-6-17 12:52 | 显示全部楼层
倒数第9排的P2=code DSY_IDX[k];中去掉code,code只在定义中用
回复

使用道具 举报

ID:54731 发表于 2016-6-18 10:15 | 显示全部楼层
楼主:首先却掉code标准字符, 请问楼主:你程序能运行吗?
回复

使用道具 举报

ID:100515 发表于 2016-6-18 13:44 | 显示全部楼层
  P2=code DSY_IDX[k];  此句的code要去掉,定义数组时加code,是为了把数组的内容放在程序空间而不占内存,所以定义数组时加code,用的时候不加
回复

使用道具 举报

ID:127023 发表于 2016-6-19 09:25 | 显示全部楼层
把P2=code DSY_IDX[k]; 这里的code去掉 看看能不能行, code只能定义数组
回复

使用道具 举报

ID:127266 发表于 2016-6-19 16:12 来自手机 | 显示全部楼层
倒数第九行的P2=code中的code去掉就可以了,那是关键字,调用时用后面的数组名就可以了。
回复

使用道具 举报

ID:51833 发表于 2016-6-19 20:42 | 显示全部楼层
倒数第九行的P2=code中的code去掉就可以了,那是关键字,调用时用后面的数组名就可以了,我帮试过了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表