『壹』 用c51/c52單片機做一個錄音筆畢業設計,包括硬體及軟體,哪位大哥大姐可以幫下忙啊,兩天之內完成
現在做不知道會不會太慢了呢。其實c51/c52都是同款單片機,都屬51系列的,用哪個型號,就看你程序占內存多少了。如果需要,可以找我,我這里有很多資料。
『貳』 請問這個晶元上有單片機嗎 可以重新編程嗎 能編的話用什麼軟體
專用集成電路稱為單片機也行。廠家大規模定製的晶元一般不能再編程。你要寫出晶元上的型號,網友才好識別。
『叄』 請問各種MP3或者錄音筆之類的錄音產品裡面的晶振頻率都是多少謝謝各位!
128
『肆』 最先進的防干擾錄音筆
紅外線監控室內外解碼器,採用美國PIC系列單片機設計,具有抗干擾、防死機、低功耗、驅動能力強、防水等諸多優點。 通訊採用美國MAX485通訊晶元,通訊距離超過1200米。
『伍』 錄音設備帶入課堂有可能被檢測出來嗎如果能那它是什麼原理呢
摘要 我同學的畢業設計就是做一個錄音筆,我覺得錄音設備很難被檢測出來。這個東西無非是用麥克風採集聲波,然後將模擬信號轉換為數字信號,單片機處理數字信號信息,然後存儲。除非使用金屬探測器搜身。
『陸』 下述語音編解碼標准,哪個支持不壓縮方式提供優質話音質量
目前市場上有很多語音錄放系統,如錄放音玩具、錄音筆等,大多採用了單片機控制一個語音晶元,再接一個FLASH存儲器的結構。由於語音晶元都是固定的編碼演算法,使得系統用途單一,不利於進一步改進,缺乏靈活性
『柒』 求助,51單片機製作錄音筆
可以用 語音模塊實現,不過語音模塊錄音的時間比較短
『捌』 誰幫我把語音編解碼引擎解釋一下
目前市場上有很多語音錄放系統,如錄放音玩具、錄音筆等,大多採用了單片機控制一個語音晶元,再接一個FLASH存儲器的結構。由於語音晶元都是固定的編碼演算法,使得系統用途單一,不利於進一步改進,缺乏靈活性,如日本OKI公司的MSM6588隻能完成ADPCM編碼。
用SDA80D51晶元實現的語音錄放音系統,系統硬體簡單、工作可靠。所有的編解碼演算法都由軟體來完成,設計者可以編制自己的軟體,完成不同的功能。它既可以作為簡單的數字錄放音系統,也可以通過改變程序做語音識別、語音合成等多種系統。用途靈活、功能強大。該系統選用G.723.1語音編解碼演算法來完成語音的錄放。
1 SDA80D51晶元介紹
SDA80D51晶元是德國Infineon公司生產的適合語音處理的晶元,它採用0.18μm工藝,核的工作電壓為1.8V,I/O電壓為3.3V,模擬Codec部分電壓2.5V,功耗是150mW。該晶元相當於一個片上系統(SOC),內部集成了許多功能模塊,如圖1所示。由於它集成了許多功能模塊,如圖1所示。由於它集成了許多功能塊,幾乎只需要一片晶元就能完成語音處理和系統控制。
該晶元含有兩個處理器,分別是16位DSP(OAK)和8位MCU(M8051 E-Warp)。M8051 E-Warp核由美國Mentor Graphics公司設計,它是與一般8051兼容的MCU,具有很多的增強功能,最高工作速度可達50MIPS(Million Instruction per Second),是目前為止最快的增強8051。傳統8051的一個機器周期是12個時鍾周期,而這個核心只需2個時鍾周期,速度傳統8051的6倍。許多指令都能在一個機器周期內完成。由於指令與8051兼容,使得程序員不用花許多時間學習新指令,而直接採用傳統的8051編程方式就行。晶元集成有JTAG口,用Mentor Graphics公司的FS2(First Silicon Solutions)模擬器就可以實現在線模擬。
OAK核是美國DSP Group公司設計的16位低功耗、低電壓和高速定點DSP。採用雙金屬CMOS,在0.6μm或0.5μm以下工藝生產。工作電壓范圍在2.7V~5.5V。在5V 80MHz工作條件下,消耗電流38mA;在3.3V 80MHz條件下,消耗電流25mA。該核採用Harvard匯流排結構,工作速度可達100MIPS。
Codec部分由I2S、ADC和DAC組成。I2S口可用來外接一些通用的模/數晶元。兩路的12位8kHz采樣率的ADC,可接峰峰值為1.03V的差分電壓。片內有數字AGC,可放大0到42dB(8檔,6dB步長);模/數轉換採用Sigma-Delta調制技術並經過一度的換算,得到16bit的PCM碼流,送往處理器。兩路11位8kHz采樣率的DAC可軟體調節增益,可放大0到-18dB(-6dB步長)。所有Codec部分可通過ASI介面連到OAK或M8051上。
SDA80D51晶元還有I2C、SPI和PWM介面模塊,可以通過M8051來控制。另外在不同版本的晶元上還有多達50到250之間的GPIO(通用的輸入輸出口),這可以保證系統控制的靈活性。
該晶元最有特點的功能模塊是存儲器管理單元MMU(Memory Manage Unit),它可以管理兩個核的存儲區映射。物理存儲器(RAM或ROM)被看成由多個塊組成,每個塊的大小在不同版本的晶元上定義是不同的,本系統中,塊的大小是16K位元組(或8K節)。MMU既可以把塊(8K字)映射給OAK的程序區或數據區,也可以把塊(16K位元組)映射給M8051的程序區或數據區。這些完全由寫M8051的特殊功能寄存器來完成。存儲空間的自由掛接使得完成兩個核之間的數據轉換變得非常容易。此外,程序裝載和啟動也需要MMU的控制。
整個晶元的工作方式是M8051作為主控制晶元,完成對各種介面的控制和系統的配置。OAK作為協處理器,完成語音編解碼演算法等計算。兩個核之間還有兩個64字深的FIFO。它們用於雙核通信。
2 G.723.1語音編解碼
語音編解碼演算法一般分為三類:波形編碼、參數編碼(聲碼器)和混合編碼。波形編碼技術是在不建立語音模型的情況下,直接對語音波形用編碼方式逼近,可有時域的脈沖編碼調制和變換域編碼;參數編碼是在一定的語音模型基礎上,在編碼端分析出該模型參數,並選擇適當的方式對其進行高效率的編碼,而在解碼端利用這些參數和語音模型,用合適的激勵源(excitation)重新合成語音;混合編碼則保留了參數編碼的語音模型的假定,又利用了波形編碼的准則優化激勵信號。
G.723.1演算法屬於混合編碼。語音模型是基於線性預測理論的全極點模型。輸入是16bit的PCM碼流,然後採用合成分析、矢量量化等方法,以感覺加權後的語音基音殘差信號能量最小為准則進行編碼。有兩種類型編碼方式,一種是6.3kb/s多脈沖最大似然量化方法(壓縮率20:1),另一種是5.3kb/s代數碼本激勵線性預測ACELP(壓縮率24:1)。後者的壓縮率高,編碼速率低,這可以降低系統存儲語音時所需存儲器的容量。而且解碼演算法簡單,回放語音時不會有延遲感,語音清晰。
3 語音錄放音系統硬體設計
語音錄放音系統硬體電路的系統框圖如圖2所示。由於晶元內(虛線內)集成了許多功能模塊,使得電路的結構變得非常簡單。
SDA80D51的RS232串列口通過MAX3222匹配電壓後,連接到計算機。
晶元的啟動支持SPI、I2C和RS232串口三種方式。本系統採用I2C啟動方式,選用ATMEL公司的24C64。上電後,片內固化在ROM上的程序會從選定的I2C晶元拷貝256位元組客戶啟動程序到片內程序區ff00h~ffffh處,最後把程序指針指向ff00h,開始執行。
系統程序存在SST28LF040中,由啟動晶元中的用戶啟動程序把系統程序裝載到晶元內部的RAM里,然後處理器會執行RAM中的程序指令。
語音經過編碼壓縮後存儲在三星公司的KM29U128T(16M×8bit)內。它的定址採用串列方式,即8根數據線既作地址線也作數據線,先輸入地址,再傳送數據。這樣,用很少的SDA80D51地址線就可定址很大的空間,記錄大量的語音數據很方便。
用8根GPIO線實現一個4×4的小鍵盤,可用來作為控制介面。在錄放音時,可以通過對鍵盤的掃描來決定下一步驟。
4 軟體設計
由於要對晶元內的功能模塊、系統控制和編解碼演算法進行編程,這使得軟體設計量比較大。考慮到本文的篇幅,這里只介紹總程序結構和錄放音的控制部分。
總程序框架採用前後台的工作方式。前台輪尋各個任務引擎,判斷是否有任務需要處理。若有,切換狀態並執行該任務;若沒有,就繼續查詢。後台主要完成對硬體的介面、中斷處理程序以及緩沖硬體數據。前台和後台的通訊是靠共享緩沖區來完成的。這種前後台的工作方式可處理多任務,每個任務只佔用一個時間片。
數字錄放音程序在整個軟體設計中只有一個任務,它提供一個任務引警程序,由前台來調用。具體工作過程是OAK接CODEC模塊,負責採集數據、編碼和解碼演算法以及語音的回放;M8051負責配置系統工作寄存器和對FLASH的讀寫。兩個核之間通過FIFO發消息,消息的定義格式(C語言)如下:
typedef union tag_FIFO_MESSAGE
{
struct
{
struct
{
BYTE bIdSource://發送方ID
BYTE bIdDest: //接收方ID
WORD wMsgType; //發送消息類型
WORD wDataLen; //數據長度
WORD wSeq; //消息序號
}uHead;//消息頭
WORD wData[27]; //消息數據內容
WORD wCRC; //校驗
}uForm;
WORD wBuf[32];
}FIFO_MESSAGE;
兩個核的任務引擎程序分別用C語言編寫,程序結構基本相同,都採用狀態跳轉的方式,即每個子程序模塊都是一個狀態,滿足一定條件就跳到下一狀態;若都不滿足,就退回到前台輪尋程序。由前台程序在下一時間片繼續調用停留在當前狀態的程序。
如圖3所示,每個圓圈都是一個狀態,兩個核之間的橫向的箭頭表示消息,向下的箭頭表示狀態的跳轉。
在錄音時,M8051的「錄音初始化狀態」先做初始化並發送START消息,表明錄音開始,然後跳到「存語音數據狀態」,等待OAK的消息。OAK的「錄音初始化狀態」接收到START消息後,先做初始化,然後跳到「語音採集編碼狀態」,在這里會不停地採集語音並用G.723.1編碼,采滿8K字後,向M8051發送STORE消息。M8051收到消息後,用存儲器切換程序,拷貝數據到M8051的RAM區,並存到FLASH里,這由「存語音數據狀態」來完成。若FLASH存滿,M8051會發送STOP消息,然後OAK和M8051都進入「錄音結束狀態」。OAK結束後還會給M8051發送DONE消息,表明錄音結束。
在放音時,M8051的「放音初始化狀態」打開FLASH的文件系統並發送START消息。OAK收到後,發送INIT消息,請求M8051傳送第一個數據包。M8051的「初始化確認狀態」收到INIT消息後,從FLASH讀取一個數據包,傳送給OAK,若正確就發送ACK消息並跳轉到「讀語音數據狀態」。要是失敗的話,就發送STOP消息,這樣OAK和M8051都會結束語音。當OAK收到ACK消息和一個語音數據包時,會跳到「解碼放音狀態」,在這里不停的把數據解碼並發送給DAC。若放完這個語音數據包,就發LOAO消息,申請下一個,不停循環。同時M8051會准備語音數據包,並傳送給OAK,若沒有數據或按停止鍵,M8051會發STOP消息,結束發音。然後OAK會發FINISH消息,表明所有錄音結束。接著M8051的「放音結束狀態」會關閉文件系統,清空緩沖區。
由上面的描述可看出,整個數字錄放音的工作流程是M8051作主控制器,OAK作從控制器。M8051發起開始信號,收尾數字錄放音,而OAK主要負責編解碼。這種工作方式靈活可靠,程序很容易擴展,例如狀態數的增加和消息類型的擴展都很容易。
該系統的主要特點是充分利用SDA80D51的強大的功能集成,完成語音處理系統。完成一個大系統,幾乎只需要一個晶元。相信該晶元在語音及相關領域一定會有很好的應用前景
『玖』 單片機錄音筆怎麼做
最簡單的辦法,單片機控制語音錄放模塊如ISD1700系列實現.模塊淘寶有賣.單片機買開發板,很容易搭建系統.然後寫程序控制起來就行
『拾』 錄音筆的內存卡寫入的程序是什麼
這是一種通過開機識別文件格式然後自動燒錄\升級程序,是量產時提高生產效率的做法。新機在單板狀態時可以用電腦配合治具進行線刷,但是有很多情況會有個別機器不能刷機成功,那就用到了這種方法。還有一種情況是把程序存入內存卡,讓機器復制進機身內存根目錄下,拔掉卡重啟機器自動讀取刷機,這種是用於單整機狀態下免拆機使用的,也是為了提高效率,最終效果是一樣。這種程序是設計者根據不同CPU/單片機硬體結構腳位功能不同設計編寫出來的能被機器或者匯流排識別的文件格式的,方便電腦操作,如果是bin文件或者hex文件是單片機編程軟體寫的,這種是需要讀寫器或者編程器來直行的,就是對於單個晶元來說的。如果你一個單板機或者整機需要有很多晶元都要燒錄,用這種燒寫器就要燒錄很多次,很麻煩,也容易出錯,所以就有了上面那種類似傻瓜式刷機了。現在你明白了嗎?