导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→请教关于DS1302时钟程序设计的问题

* 57010: 请教关于DS1302时钟程序设计的问题

   pcb_diy 
pcb_diy发表的帖子 

 请教关于DS1302时钟程序设计的问题
我正在参加一个从实践中学会单片机的活动,要求用51单片机设计一个DS1302时钟程序。

这是活动的地址和详细的要求 

我在设计过程中遇到无法读出DS1302内部数据问题,读出来的数据是错误的.

下面我把读写程序发出来,大家帮我看看是哪地方出了问题...是不是时序或别的什么方面...

希望高手进行指导。呵呵,只有从实践中才能学会单片机,这也是我第一次认真做这类开发,对回帖的人先谢过!

void Write_DS_Byte(uint8 Command,uint8 Write_Data)
{
    uint8 i=0;
    DS_CE=0;
    DS_IO=0;
    DS_SCK=0;                                        //初始化各端口;
    for(i=0;i  <8;i++)                                  //写入8位命令;
        {
            DS_CE=1;
            DS_IO=Command&0x01;             //并行数据转为串行;
            DS_SCK=0;
            _nop_();
            DS_SCK=1;
            Command>  >  =1;                         //送下一位串行数据;
        }
    for(i=0;i  <8;i++)                                 //写入8位数据;
        {
            DS_CE=1;
            DS_IO=Write_Data&0x01;           //并行数据转为串行;
            DS_SCK=0;
            _nop_();
            DS_SCK=1;
            Write_Data>  >  =1;                       //送下一位串行数据;
        } 
    DS_CE=0;                                        //禁止传输;
}

uint8 Read_DS_Byte(uint8 Command)
{
    uint8 value=0;
    uint8 i=0;
    DS_CE=0;
    DS_IO=0;
    DS_SCK=0;
    for(i=0;i  <8;i++)                                    //写命令进DS1302内部;
        {
            DS_CE=1;
            DS_IO=Command&0x01;                //送8位数据;
            DS_SCK=0;
            _nop_();
            DS_SCK=1;
            Command>  >  =1;                          //数据移位;
        }
    for(i=0;i  <8;i++)                                   //读取DS1302返回的数据;
        {
            DS_SCK=1;
            DS_SCK=0;
            if(DS_IO!=0)                               //把串行数据转为并行;
                {
                    value|=0x01  <  <i;   //移位 ;
                }
            //value>  >  =1;
        }
    DS_CE=0;
    return (value);                                    //返回读取数据;
}


发表时间:2009年7月13日15:49:59

  
回复该帖

本主题共有 2 帖,分页:>>>>>该主题的所有内容[2]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  57814.[详细]仔细看下,
摘要:看看告诉你,代码真多......(20字)
- [单片机深圳][545次] 2009年7月19日

[上一篇帖子]:8019的中断设置最近在处理8019中断的问题,我的原来也不会产生中断,后来我配置了一下IMR,处理
[下一篇帖子]:欢迎了解欢迎大家来了解~~8月1号有免费的嵌入式说明会,金牌讲师主讲,电话即可预约~~