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

正文內(nèi)容

基于單片機的多功能數(shù)碼相框設(shè)計與實現(xiàn)-資料下載頁

2025-08-19 17:54本頁面

【導讀】審查意見,并作為畢業(yè)論文工作檢查的主要依據(jù)。系統(tǒng)的功能切換由KEY_ENTER、KEY_NEXT、KEY_PRE、KEY_UP、KEY_DOWN_EXIT完成。KEY_ENTER為“確認”鍵,當滿足一定條件時,按下此鍵進入相應功能程序,。KEY_UP為“向上”按鍵,實現(xiàn)鼠標向上移動。向下移動或退出功能。Protothreads簡稱pt)進行切換的,pt是一個占用內(nèi)存極小的C語言封裝宏函數(shù)庫,為一種無堆。而使程序?qū)崿F(xiàn)多線程操作。的解碼顯示速度上要求刷新一幅圖片所需時間在5秒以下。計算功能外,還具有靈活強大的控制功能,以便實時檢測系統(tǒng)的輸入量、控制系統(tǒng)的輸出量,專用復位電路等功能,內(nèi)部資源非常豐富,flash容量和RAM容量可選范圍寬。采用STC12C5A60S2單片機,它具有60k的程序存儲空間,1280Byte的RAM空間,在保證本系。SD卡設(shè)計成功后,將SD卡中的圖片數(shù)據(jù)讀出通過單片機控制彩屏顯示出來,從而實現(xiàn)電子相冊的功能。[16]李偉,張利華.BMP文件解碼的研究與實現(xiàn)[J].計算機工程與設(shè)計,2020,:1180-1182.

  

【正文】 于使程序運行出錯。一般是 RST引腳出現(xiàn) 5ms以上的高電平時,單片機就可以完成復位過程。復位有上電復位、開關(guān)復位。本設(shè)計同時使用了上電復位和開關(guān)復位。上電復位是上電時使單片機復位,而開關(guān)復位是在電源接通的條件下,在單片機運行期間,如果發(fā)生死機,用按鈕開關(guān)操作使單片機復位。如圖 43復位電路增加了二極管,在電源電壓 出現(xiàn)跳變 時 加快 電容 放電,一定寬度的電源毛刺 也可令系統(tǒng)可靠復位。 通常復位電容和復位電阻的值為 C1=10~30uF, R2=1~10K。單片機最小系統(tǒng)復位電路如圖 33所示: 圖 33 單片機最小系統(tǒng)復位電路 電源電路 在本系統(tǒng)中,各個模塊的工作電壓不盡相同, TFT液晶顯示屏和 SD卡工作電壓為 ,而單片機工作電壓為 5V。為了完成各模塊電壓匹配問題,需要設(shè)計一個電源電路,完成電壓轉(zhuǎn)換。其電路圖如圖 34所示: 宜春學院物理科學與工程技術(shù)學院畢業(yè)設(shè)計 5 圖 34 電源電路 在單片機系統(tǒng)中 ,電源轉(zhuǎn)換一般都是選用 。 AMS1117是一個正向低壓降三 端穩(wěn)壓器,其內(nèi)部集成過熱保護和限流電路,體積小,穩(wěn)壓特性好,輸出電壓精度高, 是便攜電子產(chǎn)品中最常用的穩(wěn)壓芯片。 在本設(shè)計中選擇該穩(wěn)壓芯片,簡化了電路設(shè)計與制作,同時又能解決整個系統(tǒng)電壓不匹配的問題。在設(shè)計中加入了濾波電容 C C C C6,使輸出電壓更平穩(wěn)。 SD 卡 接口 電路 SD卡( Secure Digital Memory Card)中文 名稱 為安全 數(shù)碼卡 ,是一種 基于半導體快閃記憶器的新一代記憶設(shè)備, 存儲容量大,數(shù)據(jù)傳輸快,使用方便且安全可靠。 它被廣泛地 用于 便攜式裝置上使用,例如數(shù)碼相機、 手機 和 MP MP4等 多媒體播放器。 SD卡有兩種通信協(xié)議, SD模式和 SPI模式。 SD模式允許強大的一線到四線數(shù)據(jù)信號設(shè)置。當默認的上電后, SD卡使用 DAT0。初始化之后,主機可以改變決定是使用多少根數(shù)據(jù)線,一般使用四根線,既 DAT0~DAT3,還要使用一根時鐘線 CLK和命令線 CMD。 SD總線上通信的命令和數(shù)據(jù)比特流從一個起始位開始,以停止位中止。采用 SD模式時傳輸速度非???,但是 傳輸?shù)拿罴皡f(xié)議復雜。SPI模式則一般采用 4線制,即時鐘線 CLK、片選線 CS、主機輸出,從機輸入線 MOSI以及從機輸出,主機輸入線 MISO。由于在傳輸期間,每次只使用一條數(shù)據(jù) ,傳輸速率低,但是相比于 SD模式而言,其傳輸協(xié)議及命令簡單,易于實現(xiàn)。而且, SD模式需要微處理器帶有相對應的控制器接口,而 51單片機是不支持 SD卡模式的,選用 SD模式則要增加硬件成本。相反, SPI總線接口很多 51單片機都帶有,選擇該模式不但可以簡化主機和程序的設(shè)計,還降低成本。雖然 SPI模式相對于 SD模式速率較低,但是在帶 有 SPI接口的 單片機上用 SPI模式讀取 SD卡里面的圖片數(shù)據(jù)在速度上還是能滿足本設(shè)計要求的,而且它只需要四根線,連接簡單,軟硬件設(shè)計方便。因此,在本設(shè)計中使用 SPI模式是最好的選擇。 SD卡接口電路如圖 35所示: 圖 35 SD 卡 接口 電路 SD卡的 CS、 MOSI、 MISO、 CLK分別與單片機的 、 ~。 SD卡的工作電壓為 ,而單片機的工作電壓一般為 5V,所以要進行電平轉(zhuǎn)換 , 實現(xiàn)各功能模塊間的電平匹配,電平轉(zhuǎn)換右電源電路實現(xiàn)。 按鍵電路 因為本課題設(shè)計了幾個功能,為了方便的 在各個功能件進行切換,使用了五個按鍵,分別是左宜春學院物理科學與工程技術(shù)學院畢業(yè)設(shè)計 6 移 KEY_PRE、右移 KEY_NEXT、上移 KEY_UP、下移 /退出 KEY_DOWN_EXIT、確定 KEY_ENTER五個按鍵。按鍵一般有矩陣按鍵和獨立按鍵,由于設(shè)計使用的按鍵不多,只有五個, I/O 口充足,所以使用獨立按鍵設(shè)計。 KEY_PRE、 KEY_NEXT、 KEY_DOWN_EXIT、 KEY_UP、 KEY_ENTER分別和單片機的 、 、 、 、 連接,當按下按鍵時,單片機相應引腳電平被拉低(為 0),通過檢測相應引腳電平狀態(tài)就可 以確定是哪個按鍵按下,從而執(zhí)行相對應的功能,操作方便,容易實現(xiàn)。按鍵電路如圖 36 所示: 圖 36 按鍵電路 LCD 液晶顯示電路 TFT(Thin Film Transistor)薄膜場效應晶體管,是值液晶顯示器上的每一個像素點都是 由集成在其后的薄膜晶體管來驅(qū)動。 從而可以做到高速高亮高對比度顯示液晶屏上的信息, TFT 液晶顯示屏是現(xiàn)在常用顯示器中的一種,普遍應用于手機、筆記本電腦、 MP MP4 等電子產(chǎn)品。 本系統(tǒng)采用的 TFT 彩屏為 英寸的 24 位真彩數(shù)字屏,由 ILI9325 控制器控制,分辨率 為240X320,數(shù)據(jù)傳輸是采用 8 位數(shù)據(jù)方式,通過 8 根數(shù)據(jù)線與單片機連接進行通信。顯示時,一個像素用 16 位表示,即采用 565RGB 方式,紅色分量用 5 位表示,綠色分量用 6 位表示,藍色分量用 5 位表示。要想液晶顯示屏正常工作,還要通過片選 CS、寫入 WR、數(shù)據(jù)命令選擇 RS、復位 RST、RD 寫五根線與單片機連接進行控制。液晶彩屏顯示電路如圖 37所示。系統(tǒng)整個電路圖設(shè)計見附錄1。 圖 37 LCD 液晶顯示電路 4 數(shù)碼相框的軟件設(shè)計 軟件總體設(shè)計 整個數(shù)碼相框的軟件系統(tǒng)可以分為三個功能模塊:系 統(tǒng)主任務、系統(tǒng)菜單顯示任務、系統(tǒng)時間顯示任務。 在主函數(shù)前,先創(chuàng)建三個以上三個任務。系統(tǒng)主任務主要完成的是系統(tǒng)各種設(shè)備的初始化操作以及不停的進行按鍵的掃描,通過按鍵掃描來確定鼠標移動到液晶顯示屏的哪個位置,從而調(diào)用相關(guān)函數(shù),按下確定鍵后轉(zhuǎn)到按鍵處理程序執(zhí)行對應的功能;系統(tǒng)菜單顯示任務主要完成的是菜單的選擇與 GUI 窗口的顯示以及各種應用程序的選擇處理程序;系統(tǒng)時間顯示任務主要完成的是系統(tǒng)時間的顯示功能,通過調(diào)用相關(guān)函數(shù)實現(xiàn)時間的顯示。 創(chuàng)建了以上三個任務以后,主函數(shù)在 while(1)死循環(huán)中調(diào)用三個任務,不停 的循環(huán)執(zhí)行,等待宜春學院物理科學與工程技術(shù)學院畢業(yè)設(shè)計 7 某個事件發(fā)生再轉(zhuǎn)到相應程序處理。程序流程圖如圖 41 所示: N Y N Y N Y 圖 41 主程序流程圖 Protothreads 極輕量級系統(tǒng) 介紹 Protothreads 是一種在小 RAM 單片機上實現(xiàn)多線程的方法,使用 Protothreads 可以很方便的在單片機上實現(xiàn)多任務操作,使得每個任務都有自己單獨的 while(1)循環(huán)。對于單片機這樣的小 RAM微處理器不能進行移植操作系統(tǒng),而使用 Protothreads 可以輕松實現(xiàn),達到一樣的效果,大大簡化了程序的設(shè)計。 Protothreads 最大的特點是占用內(nèi)存非常小,每個 Protothreads 只需占用 2 字節(jié)的RAM,而且代碼非常短,移植很方便,只需在工程中包含三個頭文件 、 、 即可。主函數(shù)中創(chuàng)建的三個任務就是利用 protothreads 創(chuàng)建的。以下幾個函數(shù)是 Protothreads 中比較重要的幾個函數(shù),分別對其進行說明 [11]: PT_INIT(pt): 初始化任務變量,只 需 在初始化函數(shù)中執(zhí)行一次 即可。 PT_BEGIN(pt): 啟動 任務處理,放在函數(shù) 的 開始處 。 PT_END(pt): 結(jié)束任務,放在函數(shù)的最后 。 PT_WAIT_UNTIL(pt, condition): 等待某個條件(條件可以為時鐘或其它變量, IO 等)成立,否則直接退出本函數(shù),下一次進入本函數(shù)就直接跳到 這個位置運行, 再次判斷運行條件是否滿足,并執(zhí)行后續(xù)程序或繼續(xù)阻塞。 開始 初始化任務 MAINTASK 初始化任務 MENUTASK 初始化任務 OSTIMETASK maintaskt==100? 運行任務 MainTask() 運行任務 MenuTask() menutaskt==200? 運行任務 OSTime() timetaskt==100? 宜春學院物理科學與工程技術(shù)學院畢業(yè)設(shè)計 8 驅(qū)動程序設(shè)計 SPI 驅(qū)動程序設(shè)計 SPI 總線接口是 STC12C5A60S2 單片機提供的高速串行外設(shè)接口, SPI 接口是一種 高速、 全雙工、同步的 串行 通信總線。與 SPI通信相關(guān)的特殊功能寄存器 主要有三個:控制寄存器 SPCTL、狀態(tài)寄存器 SPSTAT 以及數(shù)據(jù)寄存器 SPDAT。 ( 1)控制寄存器 SPCTL:確定單片機作為主機還是從機,使能 SPI,設(shè)定 SPI發(fā)送和接收的位順序以及設(shè)定 SPI 傳輸數(shù)據(jù)的時鐘速率。 ( 2)狀態(tài)寄存器 SPSTAT:用來判斷 SPI數(shù)據(jù)有沒有傳輸完成以及檢測是否對數(shù)據(jù)寄存器 SPDAT進行寫操作。 ( 3)數(shù)據(jù)寄存器 SPDAT:所要傳輸?shù)?8 位數(shù)據(jù),為 Bit7~Bit0。 SPI 驅(qū)動程序主要包括四個函數(shù): SPI 初始化函數(shù)主要對以上三個寄存器進行初始化操作; SPI時鐘速率設(shè)置函數(shù)用來設(shè)置 數(shù)據(jù)傳輸時的速率,為高速模式還是低速模式; SPI 發(fā)送數(shù)據(jù)函數(shù)用來發(fā)送指定數(shù)據(jù)到 SPI 總線上; SPI 接收數(shù)據(jù)函數(shù)則是用來接收來自 SPI 總線上的數(shù)據(jù)。 SD 卡驅(qū)動程序設(shè)計 SD 卡是在單片機的控制下進行通信的,單片機發(fā)送特定指令給 SD卡,并且接收來自 SD 卡的響應并確定 SD 卡是否初始化完成,再進行下一步的命令操作。 在對 SD 卡操作之前,應該首先確保單片機已選擇 SD卡,即將 SD卡的片選線 CS 置為低電平 , 再 發(fā)送相關(guān)命令 對 SD 卡進行讀寫 。單片機與 SD 卡之間通信的命令有幾十個,但是常用的只有 19 個,每個命令都會產(chǎn) 生不同的響應碼,用以判斷 SD 卡處于什么狀態(tài)。 SD 卡驅(qū)動程序設(shè)計主要有兩個函數(shù): SD 卡初始化函數(shù)和 SD 卡讀扇區(qū)函數(shù)。 ( 1) SD 卡初始化函數(shù):初始化函數(shù)主要完成 SD 卡的上電復位并將 SD 卡初始化為 SPI模式。初始化程序流程圖如 42 所示: N Y N Y 圖 42 SD 卡初始化流程圖 開始 發(fā)送 74 個時鐘周期 發(fā) 送復位命令 CMD0 進入 SPI 低速模式 應答信號 =01? 發(fā)送激活命令 CMD1 應答信號 =00? 結(jié)束 宜春學院物理科學與工程技術(shù)學院畢業(yè)設(shè)計 9 當單片機檢測到 SD 卡插入卡槽后,單片機會給 SD 卡發(fā)送至少 74 個時鐘周期,以便完成 SD卡的上電過程,然后再發(fā)送 SD 卡的復位命令 CMD0。如果此時 SD 卡的片選信號為低電平,則 SD卡進入 SPI模式,否則 SD 卡一直處于 SD模式。進入 SPI 模式后,單片機發(fā)送 CMD1,如果接收到的響應碼為 0,則說明 SD 卡初始化已經(jīng)完成,此時 SD 卡處于空閑狀態(tài),等待單片機給 SD卡發(fā)送下一個命令,否則單片機不停地給 SD 卡發(fā)送 CMD1 命令,直到返回的響應碼為 0。 ( 2) SD 卡讀扇區(qū)函數(shù): SD 卡有讀單個扇區(qū)和多個扇區(qū)的命令,分別為 CMD17 和 CMD18,一般單個扇區(qū)的大小為 512 個字節(jié)。 SD 卡讀扇區(qū)函數(shù)的流程圖如圖 43 所示 N Y N Y 圖 43 SD 卡讀扇區(qū)流程圖 ILI9325 驅(qū)動程序設(shè)計 在進行 TFT 彩屏的 顯示之前首先必須的進行初始化操作,配置 TFT 彩屏的各種寄存器, ILI9325控制的彩屏的寄存器有恨多個,每個都要正確配置,才有可能驅(qū)動彩屏顯示各種字符、漢字、圖片。下面就 ILI9325 中的幾個重要的寄存器進行說明 [12]: ( 1) R0 寄存器:這個寄存器的命令有兩個功能,對它寫則最低位為振蕩周期,啟動振蕩器。如果對它讀,則讀取到的是彩屏控制器的型號,有了控制器的型號就能方便的進行彩屏的初始化操作了。 ( 2) R1 寄存器:這個命令是驅(qū)動器輸出控制命令,控制輸出轉(zhuǎn)變方向是從 S1 到 S720還是從S720 到 S1。 ( 3) R3 寄存器:入口模式命令。對這個命令中的幾個重要位進行設(shè)置,就可以設(shè)置屏幕的顯開始 發(fā)送命令 CMD17 響應為 0xFE? 返回 接收 512 字節(jié)數(shù)據(jù) 接收 2 字節(jié) CRC 碼 CRC 校正碼對嗎? 結(jié)束 宜春學院物理科學與工程技術(shù)學院畢業(yè)設(shè)計 10 示方向,是從左開始寫入還是從右開始寫入,是從上開始寫入還是從下開始寫入。這個寄存器很重要,如果配置不正確,會導致字符、漢字、圖片顯示不出來或者是顯示出來的是倒置的,漢字可能是左右倒置或者是上下倒置,致使整個工程的顯示界面不正常。 ( 4) 水平和垂直位置的 RAM 地址 寄存器 (R50h, R51h,R52h, R53h):這 4 個 寄存器主要用來設(shè)置水平、垂直的起止位置,給 4 個寄存器配置不同的值,設(shè)定的顯示窗口的大小就不同,如果要顯
點擊復制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1