标题: [求助]郁闷,ds12c887搞不定,请各位大侠指教 [打印本页]

作者: sanchun    时间: 2010-7-31 15:12
标题: [求助]郁闷,ds12c887搞不定,请各位大侠指教

乱写的程序,用的是论坛板子,真的搞不定了,读数据时,P1置什么数据,读出的就是什么数据,887数据口接的是P1口

程序如下:


#include "reg52.h"
#define uchar unsigned char
#define uint unsigned int

void delay(uchar);
void ds_write(uchar,uchar);
uchar ds_read(uchar);
void set_time(); 
void init();


sbit ds_cs = P3^0;
sbit ds_as = P3^1;
sbit ds_rw = P3^2;
sbit ds_ds = P3^3;

sbit wei=P2^7;
sbit duan=P2^6;

uchar code table_d[]={
    0x3F,  //"0"
                0x06,  //"1"
                0x5B,  //"2"
                0x4F,  //"3"
                0x66,  //"4"
                0x6D,  //"5"
                0x7D,  //"6"
                0x07,  //"7"
                0x7F,  //"8"
                0x6F,  //"9"
    };
uchar code table_w[]={
    0xfe,
    0xfd,
    0xfb,
    0xf7,
    0xef,
    0xdf,
    0xbf,
    0x7f,
    };

 

void main()
{
 uchar miao;
 init();
 while(1)
 {
  miao=ds_read(0x00);
  
  wei=1;
  P0=table_w[0];
  wei=0;
  
  duan=1;
  P0=table_d[miao/10];
  duan=0;
  P0=0xff;
  delay(1);
  
  wei=1;
  P0=table_w[1];
  wei=0;
  
  duan=1;
  P0=table_d[miao%10];
  duan=0;
  P0=0xff;
  delay(1); 
 }
}


void init()
{
  ds_write(0x0a,0x20);
 ds_write(0x0b,0x86);
 ds_write(0x0b,0x06);
 set_time();
}


void delay(uchar z)
{
 uchar x,y;
 for(x=0;x<z;x++)
 {
  for(y=0;y<200;y++);
 }
}


//往DS12C887写数据函数
void ds_write(uchar add,uchar date)  
{
 ds_cs=0;
 ds_ds=1;
 ds_rw=1;
 ds_as=1;
 //P1=0xff;
 P1=add;
  ds_as =0;
 ds_rw=0;
 P1=0xff;
 //delay(1);
 P1=date;
 ds_rw=1;
 ds_as=1;
 ds_cs=1;
}

//读取DS12C887的数据
uchar ds_read(uchar add)
{
 uchar a;

 ds_rw=1;
 ds_ds=1;
 ds_as=1;
 //P1=0xff;
 ds_cs=0;
 P1=add;
 ds_as=0;
 ds_ds=0;
    P1=0xff;    //这里置什么数据,读出来的就是什么数据,晕死了
 //delay(1);
 a=P1;
 //delay(1);
 ds_ds=1;
 ds_as=1;
 ds_cs=1;

 return a;
}

void set_time()
{
 ds_write(0,0);
 ds_write(1,0);
 ds_write(2,48);
 ds_write(3,0);
 ds_write(4,14);
 ds_write(5,0);
 ds_write(6,6);
 ds_write(7,31);
 ds_write(8,7);
 ds_write(9,10); 
}

作者: admin    时间: 2010-8-1 16:05
你用杜邦线扩展的?等我有了这个芯片才能帮你搞定




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1