国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

WM8805軟件控制程序設(shè)計

2017-06-29 12:07梁喜幸楊東斌
科技資訊 2017年15期
關(guān)鍵詞:單片機

梁喜幸+楊東斌

摘 要:介紹一款高性能消費模式S/PDIF收發(fā)器WM8805基于單片機的軟件控制模式。設(shè)計一個程序?qū)ζ溥M行軟件控制,加以一定的人機交互界面,挖掘其最大的性能優(yōu)勢,解析出更完美的S/PDIF信號。

關(guān)鍵詞:S/PDIF WM8805 單片機

中圖分類號:TP311.1 文獻標識碼:A 文章編號:1672-3791(2017)05(c)-0025-02

1 WM8805簡介

WM8805是一款高性能消費模式S/PDIF收發(fā)器,可支持8通道接收和單通道發(fā)送。其高品質(zhì)的主時鐘可通過一個內(nèi)部晶振衍生或由外部時鐘發(fā)生器提供,使得主時鐘所提供的S/PDIF信號實現(xiàn)低抖動恢復(fù)。所有常用的音頻時鐘幾乎都可以由內(nèi)置的高性能鎖相環(huán)(PLL)生成。通過一個專用的CLKOUT管腳,該器件可提供一個較高的驅(qū)動時鐘輸出信號。其“穿越(pass through)”功能可以使該器件被簡單地用于清除(去除抖動)所接收的數(shù)字音頻信號。該器件還可以在軟件控制或是獨立的硬件控制模式下使用。在軟件控制模式下,它可支持具有復(fù)讀功能的2線制接口模式及3線制接口模式。該器件包含了狀態(tài)與錯誤監(jiān)測功能,其結(jié)果反映控制接口上的復(fù)讀狀態(tài)、GPIO管腳的狀態(tài),以及在“標志位”模式(帶有附加狀態(tài)標志的音頻數(shù)據(jù))下,數(shù)據(jù)流由音頻數(shù)據(jù)接口輸入的狀態(tài)。此音頻數(shù)據(jù)接口支持I2S、左對齊、右對齊和16~24位字長的DSP音頻格式,其采樣率范圍為32~192 ks/s。該器件采用無鉛、28引腳的SSOP封裝。如圖1所示。

SDIN/HWMODE為工作模式控制引腳,當芯片上電或者復(fù)位時,如果SDIN/HWMODE電平為0時,芯片的工作模式是硬件控制模式;如其電平為1,則芯片工作模式為軟件控制模式。WM8805支持兩種控制方式:兩線和三線,由SWIFMODE引腳控制。其電平為0時,為兩線工作方式;電平為1時,為3線工作方式。在使用過程中,需要特別注意這兩個引腳,根據(jù)設(shè)計的需要對它們進行正確配置,否則將有可能無法正常使用芯片。該設(shè)計中使用的是I2C兩線控制方式,CLK為時鐘信號,SDIN/HWMODE數(shù)據(jù)信號端口。

2 WM8805軟件設(shè)計

2.1 寫數(shù)據(jù)

在兩線模式下,WM8805的寫數(shù)據(jù)時序圖如圖2所示,CSB為WM8805的片選信號引腳,當芯片工作于軟件控制模式下時,其復(fù)用為地址信號的選擇引腳。如果其電平為低,則芯片地址為0111010x,而如果其電平為高時,則芯片地址為0111011x。

其中x為讀寫狀態(tài)控制位,x=0時為寫命令,x=1時為讀命令。

相關(guān)程序如下:

void I2C_Write_WM8850_CMD(unsigned char ADDR,unsigned char dat)

{

Start_I2c() ; //啟動I2C總線

I2C_SendByte(DEVICE_W_ADDRESS); //發(fā)送寫數(shù)據(jù)地址命令

I2C_SendByte(ADDR&0x7f);

I2C_SendByte(dat); //寫數(shù)據(jù)

Stop_I2c(); //停止

}

2.2 讀寄存器

WM8805當中,有部分寄存器為只讀寄存器,該部分寄存器用作指示芯片的工作狀態(tài),數(shù)據(jù)信號的相關(guān)信息和芯片的相關(guān)參數(shù)等內(nèi)容。兩線工作模式下,只讀寄存器讀時序如圖3所示,其命令如下。

unsigned char I2C—Read—WM8805—Register(unsigned char ADDR)

{

unsigned char dat ;

Start—I2c();//啟動I2C總線

I2C—SendByte(DEVICE—W—ADDRESS;//發(fā)總寫數(shù)據(jù)地址命令)

I2C—Sendbyte(ADDR);//發(fā)送讀數(shù)據(jù)地址

Start—I2c();//發(fā)送重新開始信號

I2C—SendByte(DEVICE—R—ADDRESS);//發(fā)送讀數(shù)據(jù)地址命令

dat=I2C—RcvByte();//讀取數(shù)據(jù)

Stop—I2c();//發(fā)送停止信號

return dat;

}

3 結(jié)語

WM8805最高能正常解碼到192 kHz音頻,播放192KHz音頻的時候,音樂無雜音,信號鎖定穩(wěn)定,沒有出現(xiàn)斷續(xù)情況。同時對于44.1 kHz、48 kHz、88.2 kHz、96 kHz、176.2 kHz等頻率的音頻也能正常解碼播放。音質(zhì)溫暖柔和、通透、人聲表現(xiàn)優(yōu)異。能將系統(tǒng)時鐘恒定在24.576 MHz/22.5792 MHz,獲得指標出色的jitter,模擬部分為分立器件輸出電路,性能優(yōu)異,沒有運放電路深反饋帶來的壓抑感。

猜你喜歡
單片機
基于單片機MCU的IPMI健康管理系統(tǒng)設(shè)計與實現(xiàn)
淺析51單片機的特點與應(yīng)用
單片機在智能控制中的應(yīng)用
C8051F020與80C51單片機的異同點
MCS—51單片機多串口通訊技術(shù)應(yīng)用分析
一種單片機虛擬實驗室的建立方法
點陣式液晶顯示器lMl2864與51單片機的接口設(shè)計
單片機I/O口模擬串行通訊的C51實現(xiàn)方法
單片機調(diào)試方法的探討
用PIC單片機制作的時間繼電器