YY111111电影院少妇影院无码,亚洲www啪成人一区二区麻豆 ,黑人video粗暴亚裔,熟女无套内射线观56

新聞中心

聯(lián)系方式

廣東速佑半導(dǎo)體有限公司
電  話:0755-81796865  

      400-160-3880
傳  真:0755-28171850
手  機(jī):13823368981
      15889550163
Q   Q:1321386535點(diǎn)擊這里給我發(fā)消息
郵  編:518109
Email:stchip@stchip.com
網(wǎng)  址:
 yixishe.cn

當(dāng)前位置: 首頁(yè) > 新聞中心 > 行業(yè)知識(shí)
行業(yè)知識(shí)

單片機(jī)如何加語(yǔ)音芯片做語(yǔ)音菜單提示功能?

現(xiàn)在產(chǎn)品說(shuō)明書(shū)動(dòng)則好幾頁(yè),看起來(lái)不勝其煩。而且剛買來(lái)時(shí)想到并不是每樣功能都會(huì)用到,所以不會(huì)去學(xué)習(xí)所有操作或問(wèn)題解答。但時(shí)間長(zhǎng)了偶爾想要用到某功能時(shí)卻束手無(wú)策,急忙去找說(shuō)明書(shū)卻又不知去向。 現(xiàn)在的智能電飯煲、智能電壓力鍋、智能洗衣機(jī),雖然智能了操作反而復(fù)雜了。就像某電熱水器有了定時(shí)預(yù)約功能后,操作起來(lái)卻很麻煩,有時(shí)也會(huì)忘記操作步驟。若有語(yǔ)音提示和閃爍的文字配合或與閃爍的LED 燈配合就能很好演示某些功能的操作,或者引導(dǎo)用戶如何操作。 

在產(chǎn)品開(kāi)發(fā)中可以用單片機(jī)語(yǔ)音芯片語(yǔ)音菜單提示功能,首先我們?cè)陂_(kāi)發(fā)產(chǎn)品時(shí)需要確定語(yǔ)音總時(shí)長(zhǎng)度和多少條語(yǔ)音地址選擇相應(yīng)型號(hào),如選一般常用語(yǔ)音芯片SC5180B支持語(yǔ)音總時(shí)長(zhǎng)180秒,支持255段地址,一線串行控制模式16級(jí)的音量控制,另外相同系列型號(hào)有支持20秒-1000秒語(yǔ)單長(zhǎng)度方便產(chǎn)品以后添加更多語(yǔ)音。首先把一些重復(fù)使用的語(yǔ)音先分好段編好地址盡量精簡(jiǎn)。然后用單機(jī)片程序組合成我們需要的語(yǔ)句。如“1-9”,“十”,“百”,“米“。現(xiàn)在我們要發(fā)“100米”的語(yǔ)音,我們先發(fā)一個(gè)“1”再發(fā)“百”為再發(fā)“米”就可以了,

 


參加電路:


TB2i94Ndo5O.eBjSZFxXXaaJFXa_!!2465732066_proc.jpg



控制時(shí)序圖:

fe766eb2021fadb26a3102d442e7215b_20150403_155653.JPG 


 SDA發(fā)送2ms-8ms低電平再發(fā)送高低電平3:1或1:3信號(hào)且數(shù)據(jù)低位先送。時(shí)序范圍為200us:600us到500us:1500us。如上圖發(fā)送的是56H。

6.3、數(shù)據(jù)與語(yǔ)音的對(duì)應(yīng)關(guān)系

地址

功能

01H

播放第1段語(yǔ)音

02H

播放第2段語(yǔ)音

XXH

播放第xx段語(yǔ)音

DFH

播放第223段語(yǔ)音

E0H~EFH

控制16級(jí)音量,E0H音量最小,EFH音量最大,默認(rèn)最大 

F2H

循環(huán)播放:第N語(yǔ)音地址+F2H,即循環(huán)播放第N地址語(yǔ)音

F3H

退出循環(huán)播放

FCH

打開(kāi)功放

FDH

關(guān)閉功放

FEH

停止播放

 

 

單片機(jī)一線控制語(yǔ)音芯片音量程序
/****************************************************
;http://yixishe.cn
;OTP語(yǔ)音芯片串行一線串口模式組合語(yǔ)音測(cè)試程序
;主芯片:MPC82L52(1T)
;工作頻率:6MHz
;適用型號(hào):SC5008M ,SC5340B ,SC5180B ,SC5080B ,SC5040B, SC5020B
;速佑半導(dǎo)體400-160-3880
****************************************************/

include "REG_MPC82L52.H"
 #include


void delay_ms(unsigned int count) ;
void delay_us(unsigned int count);
void SC_Speech(unsigned char cnt);
void SC_WBusy(void);
void SC_Speechs(void);

/**************端口定義*****************/
sbit SC_DATA=P3^1;     //P3.1是脈沖數(shù)據(jù)腳
sbit SC_BUSY=P3^2;     //P3.2是放音BUSY腳

unsigned int sp[3];    //定義一個(gè)組合語(yǔ)音用的數(shù)組變量

/*************主程序****************/
main (void)
{
  SC_DATA=1;
  sp[0]=0X00;
  sp[1]=0X00;
  sp[2]=0X00;
  while(1)
  {
 
        sp[0]=0X08; 
        sp[1]=0X05;
        sp[2]=0X09;
        SC_Speechs();      //組合8,5,9地址段放音
 //delay_ms(5000);    //延時(shí)放音時(shí)間5秒
   }
}
/**************************************
;延時(shí)X毫秒
;不同的工作環(huán)境,需要調(diào)整此函數(shù)
;入口參數(shù):count
;出口參數(shù):無(wú)
**************************************/
void delay_ms(unsigned int count)    
{
 unsigned int i,j;
 for(i=0;i<count;i++)
 {
    for(j=0;j<500;j++);
 }
}
/**************************************
;延時(shí)X微秒
;不同的工作環(huán)境,需要調(diào)整此函數(shù)
;入口參數(shù):count
;出口參數(shù):無(wú)
**************************************/
void delay_us(unsigned int count)
{
 unsigned int i,j;
 for(i=0;i<count;i++)
 {
    for(j=0;j<2;j++);
 }
}
/**************************************
;控制命令
;入口參數(shù):data;
;出口參數(shù):無(wú)
**************************************/
void SC_Speech(unsigned char data)
{   
     unsigned char i;  
   
     SC_DATA=0;
     delay_ms(5);           
     for(i=0;i < 8;i++)
     { 
        SC_DATA = 1;
        if(data&0x01)
        {
           delay_us(1500); 
           SC_DATA  = 0;
           delay_us(500); 
        }
        else
        {
           delay_us(500); 
           SC_DATA  = 0;
           delay_us(1500); 
        }
        data >>= 1;
     }
      SC_DATA =1; 
      delay_ms(30);
}
/**************************************
;控制地址段組合放音
;入口參數(shù):無(wú)
;出口參數(shù):無(wú)
**************************************/
void SC_Speechs(void)
{   
    SC_Speech(sp[0]);
    SC_WBusy();      //等待BUSY信號(hào)變高
    SC_Speech(sp[1]);
    SC_WBusy();
    SC_Speech(sp[2]);
    sp[0]=0X00;
    sp[1]=0X00;
    sp[2]=0X00;
}

/**************************************
;等待BUSY信號(hào)變高;
;入口參數(shù):無(wú)
;出口參數(shù):無(wú)
**************************************/
void SC_WBusy(void)
{
    unsigned int times;
    for(times=0;times<50;times++)        //等待超過(guò)5秒最長(zhǎng)語(yǔ)音段自動(dòng)退出;
    {
       delay_ms(100);                    //調(diào)節(jié)組合語(yǔ)音間隔
       if(SC_BUSY==1) break;
    }   
}


分享到:
點(diǎn)擊次數(shù):  更新時(shí)間:2024-05-25 12:05:09  【打印此頁(yè)】  【關(guān)閉