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

正文內(nèi)容

基于arm的智能門禁系統(tǒng)設(shè)計本科畢業(yè)設(shè)計(參考版)

2025-07-07 10:33本頁面
  

【正文】 you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation。Olexa 著 李根 強 匡 泓 文志成 (譯 ) RFamp。LideDobkinAiello 總之,這次畢業(yè)設(shè)計不是簡簡單單的完成了一個課題,而 是使我初步的掌握了科學研究的步驟與方法,擴展了我的專業(yè)知識,鍛煉了我的實際操作能力和分析解決問題的能力,為今后的科研工作打下了堅實的基礎(chǔ)。 在程序設(shè)計方面,看懂協(xié)議,通過協(xié)議來編寫程序也是很重要的,不同平臺之間的通信有時候就是通過協(xié)議來完成的,還有怎樣通過協(xié)議來翻譯成我們普通人能看懂的語言,還是我以后需要解決的問題。 對于外文資料的翻譯與理解。因此,對于相關(guān)文獻資料的檢索顯得尤為重要 。 圖 讀取電子標簽上信息所顯示的通信過程 通過協(xié)議編寫程序 下圖為 IC 卡讀寫器指令一覽表 攀枝花學院本科畢業(yè)設(shè)計(論文) 應(yīng)用軟件的設(shè)計 27 命令的一些具體說明:( _ 上位機送給 下位機 _ 下位機送給上位機) 啟動 _ 02 0B 0F (02 為長度, 0B 為命令字,測試蜂鳴器器, 0F 蜂鳴器響的時間 ) _ 01 00 ( 01 為長度, 00 為測試成功) 參數(shù)設(shè)置 _01 0C(0C 為命令字 ) _01 00 數(shù)據(jù)讀 (扇區(qū) 1塊 0塊 1 塊 2) _02 02 52( 02 為命令字, 52為 PICC_REQALL) _03 00 04 00(04 為 RegFIFOLength) _01 03( 03 為命令字) _05 00 52 00 75 7A( 52 00 75 7A 為卡號) _01 04( 04 為命令字) _03 00 08 00 _04 05 06 01 04( 05 為命令字, 60為 PICC_AUTHENTIA( PICC_AUTHENT1B), 01 為扇區(qū), 04 為 RegFIFOLength) _01 00 _02 08 04 ( 08 為命令號, 04 為塊號) _11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00( 16 個 00 為數(shù)據(jù)) _02 08 05 ( 08 為命令號, 05 為塊號) _11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00( 16 個 00 為數(shù)據(jù)) _02 08 06 ( 08 為命令號, 06 為塊號) _11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00( 16 個 00 為數(shù)據(jù)) _02 08 07 ( 08 為命令號, 07 為塊號) _11 00 00 00 00 00 00 ff 07 80 69 ff ff ff ff ff ff (第一個 00 為返回 代碼,后面 6 個 00為密碼, ff 07 80 69 為控制位,后 面 6個 ff為 密碼 B) _02 0B 0F _01 00 上面的通信協(xié)議中的命令用的是十六進制,在向串口發(fā)送指令時,需要將兩位的十六進制轉(zhuǎn)化為十進制發(fā)送信息,同時在接受到下位機發(fā)送的信息時,也需要將十進制信息轉(zhuǎn)化為十六進制,然后通過查閱通信協(xié)議,“翻譯”出所得到的信息。初始化設(shè)備包括設(shè)置上位機端的波特率、校驗碼、數(shù)據(jù)位、停止位等基本操作。 圖 PC 機端測試程序采集到的通信協(xié)議 下圖即為設(shè)計上位機的總體流程圖。軟件的設(shè)計通過 PC 端與射頻模塊連接,在 PC 上的測試程序來查看射頻模塊與控制器端的通信協(xié)議,以通信協(xié)議為基礎(chǔ)實現(xiàn)射頻模塊與主控制之間的通信。這也是本課題需要實現(xiàn)的具體工作,下圖即為射頻模塊讀取電子標簽的具體工作流程。 1)創(chuàng)建一個新的文件下,在該文件夾下創(chuàng)建如下文件夾: etc bin dev home lib mnt proc root sbin sys tmp usr opt 一共十四個根文件系統(tǒng)必要的文件; 2) 解壓 Busybox tar xvjf ,編譯 Busybox,修改源目 錄中的 Makefile,指定編譯路徑 , 3)修改 inittab 文件、 fatab 文件、 、 profile 文件, 4)制作 yaffs2 根文件系統(tǒng)鏡像, 5)再將文件系統(tǒng)鏡像下載到 nand flash 并啟動。但命令方式比圖形方式的效率要高。 制作根文件系統(tǒng)的基本方法就是創(chuàng)建各個目錄以及目錄中的文件。在根文件系統(tǒng)中存放著內(nèi)存鏡像、各種系統(tǒng)配置文件以及一些其他的重要文件(例如設(shè)備文件、命令程序等)。 1)在 drivers 目錄下新建一個驅(qū)動目 錄即 mkdir usb_serial 2)將驅(qū)動程序拷貝到新建的目錄下 cp /workspace/3)在該目錄新建一個 Makefile vim Makefile 添加程序 obj $(CONFIG_USB_SERIAL) += 5) 在 driver 那一層的 Makefile 中添加 obj y += usb_serial/ 6) 在 usb_serial 文件中新建 Kconfig vim Kconfig Menu “ usb to serial” config USB_SERIAL booll “ Support USB To Serial” endmenu 7) 在 driver 那層目錄中的 Kconfig 添加 source“ drivers/usb_serial/Kconfig” 8) 在主目錄下 make menuconfig,在圖形界面中選擇 Device Server,選擇 Support USB To Serial 如下圖所示 : 圖 選擇設(shè)備驅(qū)動選項 攀枝花學院本科畢業(yè)設(shè)計(論文) 系統(tǒng)詳細設(shè)計與實施 22 9) 在 FORLINX6410_CFG 中查看是否 CONFIG_USB_SERIAL_PL2303=y 如下圖 圖 查看內(nèi)核配置是否選擇編譯了所選驅(qū)動 10) 在主目錄下 make zImage,這樣需要的驅(qū)動設(shè)備就被編譯進了內(nèi)核。 圖 根文件系統(tǒng)與設(shè)備驅(qū)動之間的關(guān)系圖 隨著 Linux操作系統(tǒng)內(nèi)核版本的不同基于 PL2303的設(shè)備驅(qū)動也會略微有區(qū)別,攀枝花學院本科畢業(yè)設(shè)計(論文) 系統(tǒng)詳細設(shè)計與實施 21 相應(yīng)的設(shè)備驅(qū)動程序的安裝就是是根據(jù)不同的操作系統(tǒng)的需求。要在 Makeflie文件中指定需要開發(fā)的處理器體系結(jié)構(gòu)就行了,在編譯時使用的編譯器、庫文件和部分頭文件等都與具體處理器結(jié)構(gòu)有很大的關(guān)系。而設(shè)備驅(qū)動程序則是 一種可以使計算機和設(shè)備通信的特殊程序 ,可以說相當于硬件的接口 的軟件實現(xiàn)。 \ fi ) 修改為: export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= arm CROSS_COMPILE ?= /usr/local/arm/ 3)在主目錄下輸入 make menuconfig 選擇 System Type 選擇 指定的 CPU,本設(shè)計 使用的是 S3c6410 因此選擇 Samsung S3c64XX 如圖所示: 攀枝花學院本科畢業(yè)設(shè)計(論文) 系統(tǒng)詳細設(shè)計與實施 20 圖 內(nèi)核芯片配置選項截圖 4)將需要添加的驅(qū)動程序到在需要編譯的內(nèi)核文件里面,需要添加的主要驅(qū)動包括 USB 轉(zhuǎn)串口驅(qū)動即 PL2303 驅(qū)動。 1)解壓內(nèi)核 tar zxvf 2)指定內(nèi)核編譯路徑,將 Mikefile 中的 export KBUILD_BUILDHOST := $(SUBARCH) ARCH ?= arm CROSS_COMPILE ?= $( shell if [ f .cross_pile ]。為了提高定制的效率, Linux 內(nèi)核一方面嚴格按照模塊化設(shè)計,優(yōu)化代碼結(jié)構(gòu),盡量減少或避免定制過程中對源代碼的修改,另一方面,通過定制Makefile 文件的方式來控制源文件的編譯過程,以此來避免直接對內(nèi)核的源文件進行添加和刪除。 7)刪除以前編譯的文件: make clean 8)編譯 uboot: make 內(nèi)核的定制 內(nèi)核的定制的根本目的是使內(nèi)核能夠根據(jù)嵌入式系統(tǒng)的軟硬件需求為應(yīng)用程序提供一個專用的平臺。 4)在 include/config 根目錄下添加 ,它定義了全局的宏定義等。 Uboot的編譯 1)解壓源碼: tar zxf 2)在 board 目錄下創(chuàng)建 forlinx_nand_ram256_config 目錄添加 、 、 、 和 。本次設(shè)計所使用的是 VMware 公司的虛擬軟件 workstation,建立虛擬機,并在虛擬機上安裝。在搭建開發(fā)板系統(tǒng)平臺的過程中,需要按照順序分別將 Uboot、剪裁后的 Linux 內(nèi)核、 YAFFS2文件系統(tǒng)燒錄到本次設(shè)計中所用到的開發(fā)板中去。因此,本文設(shè)計的門禁系統(tǒng)采用 Linux 內(nèi) 核,因此作為嵌入式系統(tǒng),對內(nèi)核的裁剪是相當有必要的,所以,綜合考慮系統(tǒng)所需要的功能,對內(nèi)核進行裁剪,保留需要的那些部分,也是嵌入式 Linux 系統(tǒng)開發(fā)中非常關(guān)鍵的步驟之一,如果對內(nèi)核的制定有不妥當?shù)?,在后續(xù)開發(fā)過程中很有可能導(dǎo)致系統(tǒng)不支持的現(xiàn)象,到時候只能對內(nèi)核重新定制和編譯。因此本設(shè)計采用的 Yaffs2 文件系統(tǒng)。如文件頭的部分元數(shù)據(jù),免去 讀文件獲取這些數(shù)據(jù)的時間,塊分配序列號的采用加載時還會以此作為參考之一,判斷該塊是否適合回收,同時垃圾回收策略也有改進。提供了損耗平衡和掉電保護,可以有效地避免意外掉電對文件系統(tǒng)一致性和完整性的影響。支持在 Flash上運行的常用嵌入式文件系統(tǒng)有 Cramfs、 Jffs、 JffsYaffs、 Yaffs2 等, Cramfs 文件系統(tǒng)是只讀文件系統(tǒng),通常在 NOR Flash 上多選用 Jffs 及 Jffs2 文件系統(tǒng),在 NAND Flash 上選用 Yaffs 或 Yaffs2 文件系統(tǒng)。之所以選擇 UBoot,是因為 UBoot 具有一下一些優(yōu)點: ( 1)開放源代碼; ( 2)支持多種嵌入式操作系統(tǒng)內(nèi)核,如 Linux、 NetBSD, VxWorks, QNX, RTEMS, ARTOS, LynxOS; ( 3)支持多個體系結(jié)構(gòu),如 PowePC、 ARM、 x8 MIPs、 XSeale; ( 4)較高的可靠性和穩(wěn)定性; ( 5)高度靈活的功能設(shè)置 ,適合 UBoot 調(diào)試、操作系統(tǒng)不同引導(dǎo)要求、產(chǎn)品 發(fā)布等; ( 6)豐富的設(shè)備驅(qū)動源碼,如串口、以太網(wǎng)、 SDRAM、 FLASH、 LCD、 NVRAM、 EEPROM、 RTC、鍵盤等; ( 7)較為豐富的開發(fā)調(diào)試文檔與強大的網(wǎng)絡(luò)技術(shù)支持 文件系統(tǒng)的選擇 嵌入式文件系統(tǒng) 是嵌入式操作系統(tǒng)的一部分,它的任務(wù)是對邏輯文件進行管理,提供對邏輯文件操作的接口,如檢索、修改、刪除、復(fù)制等,以方便用戶的使用。 UBoot 全稱 Universal Boot Loader,是遵循GPL 條款的開放源碼項目。目前,常用的 Boot Loader主要為 ViVi 、 Uboot、 Redboot,其中 Uboot 又占據(jù)了絕大部分份額。 Bootloader 是嚴格地依賴于硬件壞境實現(xiàn)的 ,特別是在嵌入式系統(tǒng)。 第二部分主要負責內(nèi)存映射、加載內(nèi)核等任務(wù)。 攀枝花學院本科畢業(yè)設(shè)計(論文) 總體設(shè)計和軟硬件平臺的選擇 16 第一部分是與硬件密切相關(guān)的代碼(例如負責初始化硬件的代碼)。一般它只在系統(tǒng)啟動時運行非常短的 時間,但對嵌入式系統(tǒng)來說,這是一個非常重要的系統(tǒng)組成部分。 bootloader就是在操作系統(tǒng)內(nèi)核運行之前運行的一段小程序 ,被用作系統(tǒng)從硬件啟動到操作系統(tǒng)啟動的過渡,是嵌入式系統(tǒng)中非常重要且必不可少的一段程序。Bootloader 啟動首 先要對硬件進行初始化、建立內(nèi)存映射等,其目的是為了內(nèi)核準備好軟硬件運行環(huán)境。 在嵌入式系統(tǒng)中是沒有 BIOS 程序的,從開機硬件初始化到啟動操作系統(tǒng)內(nèi)核全部是由 Bootloader 程序完成的。 BIOS 程序的主要任務(wù)是對各種硬件設(shè)備進行自檢和初始化,然后運行位于硬盤 MBR( Master Boot Record)上的操作系統(tǒng)加載程序。如對文件和目錄實現(xiàn)的讀、寫權(quán)限的控制,有有效的進程監(jiān)控系統(tǒng),實時查看內(nèi)存運行狀態(tài), Roo
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1