No.55917 作者:xushuang00316 邮件:xushuang00316@eyou.com ID:21938 登陆:5次 文章数:1篇 最后登陆IP:222.36.6.66 最后登陆:2007/10/24 16:50:01 注册:2004/6/3 13:27:59 财富:59 发帖时间:2004/6/3 14:06:35 发贴者IP:218.25.35.17 标题:xushuang00316:用伟福仿真环境的请帮忙!! 摘要:No.55917用伟福仿真环境的请帮忙!! 我在伟福软件编译环境下有两个程序出现连接错误,以前的一些程序也没这样啊 ???不好意思,注释粘贴过来变成了乱码,这是一个8563的写入时间并读出时间的程序???请告诉我连接警告是怎么回事??? 那样的话是不是我就不能在硬件上实现了?? #include <reg51.h> /*Í·ÎļþµÄ°üº¬*/ #include <intrins.h> #define uchar unsigned char /*ºê¶¨Òå*/ #define uint unsigned int #define _Nop() _nop_() /*¶¨Òå¿ÕÖ¸Áî*/ #define PCF8563 0xa2 #define WRADR 0x00 #define RDADR 0x02 /*¶Ë¿Ú붨Òå*/ sbit SDA=P1^3; /*Ä£ÄâI2CÊý¾Ý´«ËÍλ*/ sbit SCL=P1^2; /*Ä£ÄâI2CʱÖÓ¿ØÖÆÎ»*/ bit ack; /*Ó¦´ð±ê־λ*/ data uchar time_ram[6]; void Start_I2c() { SDA=1; /*·¢ËÍÆðʼÌõ¼þµÄÊý¾ÝÐźÅ*/ _Nop(); SCL=1; _Nop(); /*ÆðʼÌõ¼þ½¨Á¢Ê±¼ä´óÓÚ4.7us,ÑÓʱ*/ _Nop(); _Nop(); _Nop(); _Nop(); SDA=0; /*·¢ËÍÆðʼÐźÅ*/ _Nop(); /* ÆðʼÌõ¼þËø¶¨Ê±¼ä´óÓÚ4¦Ìs*/ _Nop(); _Nop(); _Nop(); _Nop(); SCL=0; /*ǯסI2C×ÜÏߣ¬×¼±¸·¢ËÍ»ò½ÓÊÕÊý¾Ý */ _Nop(); _Nop(); } void Stop_I2c() { SDA=0; /*·¢ËͽáÊøÌõ¼þµÄÊý¾ÝÐźÅ*/ _Nop(); /*·¢ËͽáÊøÌõ¼þµÄʱÖÓÐźÅ*/ SCL=1; /*½áÊøÌõ¼þ½¨Á¢Ê±¼ä´óÓÚ4¦Ìs*/ _Nop(); _Nop(); _Nop(); _Nop(); _Nop(); SDA=1; /*·¢ËÍI2C×ÜÏß½áÊøÐźÅ*/ _Nop(); _Nop(); _Nop(); _Nop(); } void SendByte(uchar c) { uchar BitCnt; for(BitCnt=0;BitCnt <8;BitCnt++) /*Òª´«Ë͵ÄÊý¾Ý³¤¶ÈΪ8λ*/ { if((c < <BitCnt)&0x80)SDA=1; /*ÅжϷ¢ËÍλ*/ else SDA=0; _Nop(); SCL=1; /*ÖÃʱÖÓÏßΪ¸ß£¬Í¨Öª±»¿ØÆ÷¿ªÊ¼½ÓÊÕÊý¾Ýλ*/ _Nop(); _Nop(); /*±£Ö¤Ê±ÖÓ¸ßµçÆ½ÖÜÆÚ´óÓÚ4¦Ìs*/ _Nop(); _Nop(); _Nop(); SCL=0; } _Nop(); _Nop(); SDA=1; /*8λ·¢ËÍÍêºóÊÍ·ÅÊý¾ÝÏߣ¬×¼±¸½ÓÊÕÓ¦´ðλ*/ _Nop(); _Nop(); SCL=1; _Nop(); _Nop(); _Nop(); if(SDA==1)ack=0; else ack=1; /*ÅжÏÊÇ·ñ½ÓÊÕµ½Ó¦´ðÐźÅ*/ SCL=0; _Nop(); _Nop(); } uchar RcvByte() { uchar retc; uchar BitCnt; retc=0; SDA=1; /*ÖÃÊý¾ÝÏßΪÊäÈ뷽ʽ*/ for(BitCnt=0;BitCnt <8;BitCnt++) { _Nop(); ......
>>返回讨论的主题
|