本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要 登录 才可以下载或查看,没有账号?注册会员
×
我写了一个程序,是用DS18B20和DS1302在液晶上显示的,但是现在在驱动DS1302是遇到的问题,部分程序如下
uchar code set_rtc_code[7]={0x00,0x30,0x18,0x04,0x16,0x06,0x05};
uchar code write_rtc_add[7]={0x80,0x82,0x84,0x86,0x88,0x8a,0x8c}; //写寄存器
uchar code read_rtc_add[7]={0x81,0x83,0x85,0x87,0x89,0x8b,0x8d};//读寄存器
uchar code *day[7]={"Mon","Tue","Wen","Thu","Fri","Sat","Sun"};
uchar read_rtc_code[7];
uchar read1302(uchar add)
{
uchar i,temp=0x00,temp1;
ce=0;
sclk=0;
ce=1;
write1302_byte(add);
for(i=0;i<8;i++)
{
if(dio)
{
temp|=0x80;
sclk=0;
temp>>=1;
sclk=1;
}
}
ce=0;
temp1=temp/16;
temp=temp%16;
temp=temp+temp1*10;
return(temp);
}
/////////////////////读取时间///////////////////////////////
void read_rtc(void)
{
uchar i,*p;
p=read_rtc_add;
for(i=0;i<7;i++)
{
read_rtc_code[i]=read1302[*p];
p++;
}
}
编译的时候一直提示DS1302时钟.C(157): error C216: subscript on non-array or too many dimensions,请各位帮帮我啊,谢谢了 |
|