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

正文內(nèi)容

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

2025-07-21 01:08 本頁面
 

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