找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2223|回復: 2
收起左側(cè)

沒道理啊 TM2003語音模塊播報 不正常 附程序

[復制鏈接]
ID:167675 發(fā)表于 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));  
}

/**************************************************************************/
////////函數(shù):Read_DS1302;
////////內(nèi)容:讀DS1302指定地址數(shù)據(jù)
/**************************************************************************/
unsigned char Read_DS1302(unsigned char Add)
{
    unsigned char Data;
    OUT_SCLK;                                            //時鐘和數(shù)據(jù)控制引腳輸出
        OUT_SDATA;
        OUT_CE;  
        asm("nop");                                            //延遲
        asm("nop");
        CE_0;
        SCLK_0;
        CE_1;
        Write_Ds_Byte(Add);                                   //寫地址
        Data = Read_Ds_Byte();                                  //讀數(shù)據(jù)
        SCLK_1;
        CE_0;
        return  Data;
}
//讀取時間 并給語音模塊發(fā)送命令
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 文件夾內(nèi)播放
                }
        }
        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卡
                }
        }
}

回復

使用道具 舉報

ID:172927 發(fā)表于 2017-3-19 16:33 | 顯示全部樓層
額,先看看程序
回復

使用道具 舉報

ID:167675 發(fā)表于 2017-3-21 17:15 | 顯示全部樓層

哪里有問題了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表