找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1625|回复: 2
打印 上一主题 下一主题
收起左侧

没道理啊 TM2003语音模块播报 不正常 附程序

[复制链接]
跳转到指定楼层
楼主
ID:167675 发表于 2017-3-17 17:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
昨天 近五点的时候播报了一下四点的音乐 (其余时间正常) 今天又上演了这一幕 我是截取的部分用的到的代码  
请大神帮我看看

void Read_Data(void)
{
    Hour = BCD_16((Read_DS1302(0x85) & 0x3f));                                            //读小时
        Minute = BCD_16((Read_DS1302(0x83) & 0x7f));                                          //读分钟
    Second = BCD_16((Read_DS1302(0x81) & 0x7f));                                          //读分钟
    Year = BCD_16((Read_DS1302(0x8D)));
        Month = BCD_16((Read_DS1302(0x89) & 0x1f));
        Day = BCD_16((Read_DS1302(0x87) & 0x3f));  
}

/**************************************************************************/
////////函数:Read_DS1302;
////////内容:读DS1302指定地址数据
/**************************************************************************/
unsigned char Read_DS1302(unsigned char Add)
{
    unsigned char Data;
    OUT_SCLK;                                            //时钟和数据控制引脚输出
        OUT_SDATA;
        OUT_CE;  
        asm("nop");                                            //延迟
        asm("nop");
        CE_0;
        SCLK_0;
        CE_1;
        Write_Ds_Byte(Add);                                   //写地址
        Data = Read_Ds_Byte();                                  //读数据
        SCLK_1;
        CE_0;
        return  Data;
}
//读取时间 并给语音模块发送命令
void Time_read(void)
{

        Read_Data();   //读取时间
        if(Hour == 9 && Minute == 0 && Second == 0)
        {        
                if(Flag==1)
                {
                        Flag=0;
                        Play_music(1);    //指定Flash 文
                }
        }
        else if(Hour == 11 && Minute ==59 && Second ==30)
        {        
                if(Flag==1)
                {
                        Flag=0;
                        Play_music(2);    //指定Flash 文件
                }
        }
        else if(Hour == 13 && Minute == 0 && Second == 0)
        {        
                if(Flag==1)
                {
                        Flag=0;
                        Play_music(3);    //指定Flash 文件
                }
        }
        else if(Hour == 16 && Minute == 0 && Second == 0)
        {        
                if(Flag==1)
                {
                        Flag=0;
                        Play_music(4);    //指定Flash 文件
                }
        }
        else if(Hour == 18 && Minute == 30 && Second == 0)
        {        
               
                if(Flag==1)
                {
                        Flag=0;
                        Play_music(5);    //指定Flash 文件夹内播放
                }
        }
        else
        {
                Flag=1;
        }
}


int main(void)
{
        Init();
        while(1)   
        {
                Time_read();
                if(SetTime_flag==1)
                {
                         SetTime_flag=0;
                         DS1302_Init();        
                }
                if(Copy_flag==1)
                {
                        Copy_flag=0;
                        UART0_SendStr(Ta_1,5); //复制SD卡
                }
        }
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:172927 发表于 2017-3-19 16:33 | 只看该作者
额,先看看程序
回复

使用道具 举报

板凳
ID:167675 发表于 2017-3-21 17:15 | 只看该作者

哪里有问题了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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