freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

多功能mp3播放器-畢業(yè)論文(編輯修改稿)

2025-07-21 01:08 本頁面
 

【文章內(nèi)容簡介】 被連接到雙向的開漏管腳上。,要注意主機(jī)和各個(gè)從機(jī)之間要共GND,而且要在信號(hào)線SCL和SDA上接有適當(dāng)?shù)纳侠娮鑂p(PullUp Resistor)。(3)起始和停止條件I2C總線的協(xié)議定義了兩種狀態(tài):起始和停止。當(dāng)SCL為高電平時(shí),在SDA線上從高到低的跳變被定義為起始條件;而當(dāng)SCL為高電平時(shí),在SDA線上從低到高的跳變則被定義為停止條件。如圖18:圖18 I2C總線起始條件和停止條件(4)應(yīng)答數(shù)據(jù)傳輸必須帶有應(yīng)答。與應(yīng)答相關(guān)的時(shí)鐘脈沖由主機(jī)產(chǎn)生。發(fā)送器在應(yīng)答時(shí)鐘脈沖期間釋放SDA線。接收器必須在應(yīng)答時(shí)鐘脈沖期間拉低SDA,使得它在應(yīng)答時(shí)鐘脈沖的高電平期間保持穩(wěn)定(低電平)。 (5)帶有7位地址的數(shù)據(jù)格式數(shù)據(jù)傳輸?shù)母袷饺鐖D19所示。從機(jī)地址在起始條件之后發(fā)送。該地址為7位,后面跟的第8位是數(shù)據(jù)方向位,這個(gè)數(shù)據(jù)方向位決定了下一個(gè)操作是接收(高電平)還是發(fā)送(低電平),0表示傳輸(發(fā)送);1表示請(qǐng)求數(shù)據(jù)(接收)。 圖19 帶7位地址的完整數(shù)據(jù)傳輸 首字節(jié)的前面7位組成了從機(jī)地址(見圖20)。第8位決定了消息的方向。首字節(jié)的R/S位為0表示主機(jī)將向所選擇的從機(jī)寫(發(fā)送)信息。該位為1表示主機(jī)將接收來自從機(jī)的信息。 圖20 在第一個(gè)字節(jié)的R/S位(6)數(shù)據(jù)地址(子地址) 帶有I2C總線的器件除了有從機(jī)地址(Slave Address)外,還有數(shù)據(jù)地址(也稱子地址)。從機(jī)地址是指該器件在I2C總線上被主機(jī)尋址的地址,而數(shù)據(jù)地址是指該器件內(nèi)部不同部件或存儲(chǔ)單元的編址。 數(shù)據(jù)地址實(shí)際上也是像普通數(shù)據(jù)那樣進(jìn)行傳輸?shù)模瑐鬏敻袷饺匀皇桥c數(shù)據(jù)相統(tǒng)一的,區(qū)分傳輸?shù)牡降资堑刂愤€是數(shù)據(jù)要靠收發(fā)雙方具體的邏輯約定。數(shù)據(jù)地址的長度必須由整數(shù)個(gè)字節(jié)組成,可能是單字節(jié),也可能是雙字節(jié),還可能是4字節(jié),這要看具體器件的規(guī)定。 時(shí)鐘芯片DS1339DS1339是美國達(dá)拉斯半導(dǎo)體公司的串行實(shí)時(shí)時(shí)鐘芯片,實(shí)時(shí)時(shí)鐘(RTC)記錄秒、分、時(shí)、星期、日、月、年信息,具有有效至2100年的閏年補(bǔ)償。2線串口接口;可編程的方波輸出;自動(dòng)電源失效檢測(cè)與轉(zhuǎn)換電路及電池充電功能。其引腳圖如圖21:圖21 DS1339管腳圖SDA和SCL為I2C總線,SQW/INT為中斷輸出管腳,當(dāng)鬧鐘時(shí)間到時(shí),SQW/INT會(huì)產(chǎn)生中斷。VBACKUP電池電源管腳,電路這個(gè)腳接紐扣電池正端,系統(tǒng)斷電后時(shí)鐘芯片依然能夠工作。電路圖如圖22:圖22 DS1339電路圖DS1339采用I2C總線接口,和TMP175掛載在同一條總線上,但器件地址不同,DS1339的器件地址為0X68,TMP175則為0X49??刂破鲗?duì)時(shí)鐘芯片的操作主要是對(duì)寄存器的操作,讀取時(shí)間、設(shè)定時(shí)間、設(shè)定鬧鐘等都是對(duì)寄存器的操作。例如,讀寄存器00H就能把時(shí)間的秒數(shù)讀出來,01H則是分鐘。注意,讀寫數(shù)據(jù)采用BCD碼格式。DS1339的寄存器如圖23:圖23 DS1339內(nèi)部寄存器讀寫時(shí)序如圖24:圖24 DS1339讀寫時(shí)序圖 SD卡SD卡(Secure Digital Memory Card)是基于FLASH儲(chǔ)存介質(zhì)的新一代記憶設(shè)備,具有體積小、容量大、數(shù)據(jù)傳輸快、移動(dòng)靈活、安全性能好以及兼容MMC卡等特點(diǎn)。SD卡有SD和SPI兩種工作模式,相對(duì)于SD模式,SPI模式可以簡化主機(jī)設(shè)計(jì),降低成本。因LM3S9B95單片機(jī)沒有SD總線接口,所以只能使用SPI模式。SD卡管腳定義,如圖25:圖25 SD管腳定義在SPI模式下,1腳8腳保留(未使用)、2腳片選端、3腳數(shù)據(jù)輸入端、4腳6腳電源端、5腳時(shí)鐘信號(hào)端、7腳數(shù)據(jù)輸出端。~。電路圖如圖26:圖26 SD卡電路圖系統(tǒng)中SD卡的主要作用是存儲(chǔ)歌曲文件、圖片、中文字庫以及錄音文件。相對(duì)于Flash芯片,SD卡容量更大,而且驅(qū)動(dòng)程序較為簡單。SD卡采用SPI總線模式。LM3S9B95集成了2個(gè)SPI接口,方便系統(tǒng)的控制。5 軟件部分 開發(fā)工具介紹程序的開發(fā)采用IAR Embedded Workbench for ARM這個(gè)軟件。IAR Embedded Workbench for ARM(下面簡稱IAR EWARM)由全球領(lǐng)先的嵌入式系統(tǒng)開發(fā)工具和服務(wù)的供應(yīng)商IAR SYSTEM開發(fā),是一個(gè)針對(duì)ARM 處理器的集成開發(fā)環(huán)境,它包含項(xiàng)目管理器、編輯器、C/C++編譯器和ARM 匯編器、連接器XLINK和支持RTOS 的調(diào)試工具CSPY。在EWARM 環(huán)境下可以使用C/C++和匯編語言方便地開發(fā)嵌入式應(yīng)用程序。比較其他的ARM 開發(fā)環(huán)境,IAR EWARM 具有入門容易、使用方便和代碼緊湊等特點(diǎn)。目前IAR EWARM支持ARM CortexM3 內(nèi)核的最新版本是 ,該版本支持Luminary全系列的MCU。 程序框圖軟件流程圖如圖27:圖27 程序流程圖 文件系統(tǒng)文件系統(tǒng)是操作系統(tǒng)用于明確磁盤或分區(qū)上的文件的方法和數(shù)據(jù)結(jié)構(gòu);即在磁盤上組織文件的方法。也指用于存儲(chǔ)文件的磁盤或分區(qū),或文件系統(tǒng)種類。操作系統(tǒng)中負(fù)責(zé)管理和存儲(chǔ)文件信息的軟件機(jī)構(gòu)稱為文件管理系統(tǒng),簡稱文件系統(tǒng)。目前,常見的文件系統(tǒng)有FAT、NTFS、exFAT、AW、RAW以及GNU/Linux中的ExtExtExt4等。目前應(yīng)用的最多是FAT文件系統(tǒng)。本系統(tǒng)采用的是Fatfs文件系統(tǒng)。 FatFs簡介FatFs是一個(gè)通用的文件系統(tǒng)模塊,用于在小型嵌入式系統(tǒng)中實(shí)現(xiàn)FAT文件系統(tǒng)。 FatFs 的編寫遵循ANSI C,因此不依賴于硬件平臺(tái)。它可以嵌入到便宜的微控制器中,如 8051, PIC, AVR, SH, Z80, H8, ARM 等等,不需要做任何修改。FATFS文件系統(tǒng)時(shí)一個(gè)完全免費(fèi)且開源的FAT文件系統(tǒng)模塊。本系統(tǒng)采用的版本是Fatfs09。Fatfs源碼包中的文件有7個(gè),分別是:“”文件:FATFS文件系統(tǒng)的配置;“”文件:FATFS文件系統(tǒng)API函數(shù)聲明;“”文件:FATFS源碼;“”文件:FATFS與儲(chǔ)存設(shè)備接口函數(shù)聲明;“”文件:FATFS與儲(chǔ)存設(shè)備接口函數(shù);“”文件:FATFS用到的所有變量類型的定義;“”文件:FATFS長文件名編碼轉(zhuǎn)換表;FatFs 提供下面的函數(shù):f_mount 注冊(cè)/注銷一個(gè)工作區(qū)域(Work Area)f_open 打開/創(chuàng)建一個(gè)文件f_close 關(guān)閉一個(gè)文件f_read 讀文件f_write 寫文件f_lseek 移動(dòng)文件讀/寫指針f_truncate 截?cái)辔募_sync 沖洗緩沖數(shù)據(jù) Flush Cached Dataf_opendir 打開一個(gè)目錄f_readdir 讀取目錄條目f_getfree 獲取空閑簇 Get Free Clustersf_stat 獲取文件狀態(tài)f_mkdir 創(chuàng)建一個(gè)目錄f_unlink 刪除一個(gè)文件或目錄f_chmod 改變屬性(Attribute)f_utime 改變時(shí)間戳(Timestamp)f_rename 重命名/移動(dòng)一個(gè)文件或文件夾f_mkfs 在驅(qū)動(dòng)器上創(chuàng)建一個(gè)文件系統(tǒng)f_forward 直接轉(zhuǎn)移文件數(shù)據(jù)到一個(gè)數(shù)據(jù)流 Forward file data to the stream directlyf_gets 讀一個(gè)字符串f_putc 寫一個(gè)字符f_puts 寫一個(gè)字符傳f_printf 寫一個(gè)格式化的字符磁盤I/O接口 文件系統(tǒng)的移植文件系統(tǒng)能以文件的形式打開文件并進(jìn)行讀寫、刪除、重命名等操作。在本系統(tǒng)當(dāng)中,可以通過文件系統(tǒng)打開歌曲文件送至音頻解碼芯片進(jìn)行解碼播放,也可以打開圖片送至液晶顯示。在做這些工作之前,先要對(duì)文件系統(tǒng)進(jìn)行移植。文件系統(tǒng)的移植其實(shí)就是更改底層驅(qū)動(dòng)。由于系統(tǒng)的存儲(chǔ)器是SD卡,所以底層驅(qū)動(dòng)即是SD卡的驅(qū)動(dòng)程序。SD卡的時(shí)序圖如圖28:圖28 SD卡時(shí)序圖前面已經(jīng)介紹了SD卡的相關(guān)內(nèi)容。SD卡采用SPI總線方式驅(qū)動(dòng)。SD卡的相關(guān)驅(qū)動(dòng)在“”中。分別是:SELECT – 打開SD卡片選DESELECT – 關(guān)閉SD卡片選xmit_spi 寫一個(gè)字節(jié)rcvr_spi 讀一個(gè)字節(jié)wait_ready 等待SD卡準(zhǔn)備好send_initial_clock_train – 時(shí)鐘初始化power_on – 端口初始化set_max_speed – 配置SPI接口的速度移植過程中只需將更改這幾個(gè)底層驅(qū)動(dòng)即可,最主要的是SD卡的讀寫操作函數(shù)rcvr_spi和xmit_spi以及端口的正確配置。系統(tǒng)對(duì)SD卡的驅(qū)動(dòng)是采用SPI0。這樣就完成了移植的基本步驟。 文件系統(tǒng)長文件名的支持。超過8字節(jié)的文件名是不支持的。也就是說文件名不能超過8個(gè)英文字母或者4個(gè)中文漢字,多余部分只能顯示出“~”。因此,系統(tǒng)為方便對(duì)文件的控制,增加了對(duì)長文件名的支持。,具體做法如下:define _CODE_PAGE 936 // 936為中文編碼轉(zhuǎn)換表define _USE_LFN 1 /* 0 to 3 */ // 是否支持長文件這樣做完之后。轉(zhuǎn)換函數(shù)其實(shí)是一個(gè)查表函數(shù),這個(gè)兩個(gè)數(shù)組非常大,有將近9萬個(gè)元素。如果這兩個(gè)數(shù)組放在控制器當(dāng)中,將占用大量的flash,雖然LM3S9B95有256KB的flash能夠存下這兩個(gè)數(shù)組,但是代碼量過大將影響調(diào)試過程。在這里解決的辦法是將這兩個(gè)數(shù)組轉(zhuǎn)換成BIN文件放在SD當(dāng)中,從SD卡里讀取相關(guān)數(shù)據(jù)完成轉(zhuǎn)換。具體代碼如下:res=f_open(amp。file,FA_OPEN_ALWAYS|FA_WRITE)。//新建一個(gè)名為“GBU2”的文件,并寫入數(shù)據(jù),程序如下:for(j=0。j2724。j++)//每次32個(gè)字節(jié),一共2724次{ for(i=0。i32。i+=2) { b=oemunicode[k/2]amp。0xff。//低位 c=((oemunicode[k/2]amp。0xff00)8)。//高位 table4[i]=b。//低位在前,第一個(gè)元素 table4[i+1]=c。//高位在后 k=k+2。 } res=f_write(amp。file,table4,32,amp。b1)。//讀到的32個(gè)字節(jié)寫入文件中 res=f_close(amp。file)。//關(guān)閉,相當(dāng)于保存 res=f_open(amp。file,FA_OPEN_ALWAYS|FA_WRITE)。 f_lseek (amp。file,32*(j+1))。 } res=f_close(amp。file)。//關(guān)閉,相當(dāng)于保存res=f_open
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1