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

正文內(nèi)容

鉆具出入庫(kù)自動(dòng)檢測(cè)系統(tǒng)畢業(yè)設(shè)計(jì)論文正文(參考版)

2025-07-10 15:09本頁(yè)面
  

【正文】 char PcdRequest(unsigned char req_code,unsigned char *pTagType) //尋卡; char PcdAnticoll(unsigned char *pSnr) //防沖撞; char PcdSelect(unsigned char *pSnr,unsigned char *pSize) //選卡; char ChangeCodeKey(unsigned char *pUncoded,unsigned char *pCoded) //將 Mifare_One卡密鑰轉(zhuǎn)換為 RC500 接收格式; char PcdAuthKey(unsigned char *pKeys) //將已轉(zhuǎn)換格式后的密鑰送到 RC500 的FIFO 中; char PcdAuthState(unsigned char auth_mode,unsigned char block,unsigned char *pSnr) //用存放 RC500 的 FIFO 中的密鑰和卡上的密鑰進(jìn)行驗(yàn)證; char rf_M1_read(unsigned char addr,unsigned char *pReaddata) //讀 mifare_one 卡上一塊 (block)數(shù)據(jù) (16 字節(jié) ); char PcdWrite(unsigned char addr,unsigned char *pWritedata) //寫數(shù)據(jù)到卡上的一塊; char PcdValue(unsigned char dd_mode,unsigned char addr,unsigned char *pValue) //扣款和充值; char PcdRestore(unsigned char addr) //將 mifare_one 卡一塊數(shù)據(jù)調(diào)入卡緩沖區(qū); char PcdTransfer(unsigned char addr) //將卡緩沖區(qū)中數(shù)據(jù)保存到塊; char PcdHalt() //命令卡進(jìn)入休眠狀態(tài); 鉆具出入庫(kù)自動(dòng)檢測(cè)系統(tǒng)設(shè)計(jì) 35 char MifareProCom(unsigned char CID_NAD,unsigned char timeout,unsigned char *pLen,unsigned char *pCommand) //向 ISO144434 卡發(fā)送 COS 命令; 。 unsigned char MfData[64]。 extern struct TranSciveBuffer{unsigned char MfCommand。 void delay(unsigned int i) void BEEP(unsigned char i) void REDON(void) void main( ) //主函數(shù) void InitializeSystem() //系統(tǒng)初始化 。 unsigned char MfData[64]。 //和上位機(jī)通訊時(shí)的緩沖區(qū) struct TranSciveBuffer{unsigned char MfCommand。 // unsigned char g_cCidNad。 //設(shè)備標(biāo)記 unsigned char g_cIcdevL。 //接收到的命令碼 unsigned char data g_cSNR[4]。 unsigned int g_cReceNum。 //接收到上位機(jī)發(fā)送的 AA 字節(jié)標(biāo)志 bit g_bRc632Ok。 bit g_bReceOk。 //9 unsigned char code table_c[]={請(qǐng)刷鉆具識(shí)別卡 !}。//8 西南石油大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 32 unsigned char code table_a[]={鉆具卡名稱 :}。//6 unsigned char code table_8[]={沙拉鉆頭 }。//8 unsigned char code table_6[]={沖擊鉆頭 }。 unsigned char code table_4[]={麻花鉆頭 }。在此,我要向它們每一個(gè)人表示由衷的感謝。 其次我要感謝我的學(xué)校,在學(xué)校里不僅給我們提供了豐富的圖書館資源,還給我們提供了做畢業(yè)設(shè)計(jì)良好的環(huán)境:豐富的教學(xué)資源,安靜的工作環(huán)境,實(shí)驗(yàn)室,以及網(wǎng)絡(luò)資源。在與 X老師交流的過程 中,他寬廣的知識(shí)面,嚴(yán)謹(jǐn)?shù)膽B(tài)度,豐富的實(shí)踐經(jīng)驗(yàn)都在不斷激勵(lì)我好好學(xué)習(xí)。剛開始的時(shí)候,由于自己對(duì)這個(gè)課題的主題不是非常的了解,是 XXX 老師給我講解題目的關(guān)鍵所在,應(yīng)該會(huì)涉及到的知識(shí),在這方面老師給了我很好的引導(dǎo);在對(duì)電路的設(shè)計(jì)和軟件的編碼階段,自己也經(jīng)常向梅大成老師請(qǐng)教。本次 設(shè)計(jì)還有許多不足的地方,懇請(qǐng)各位老師批評(píng)指正。 通過這次課題設(shè)計(jì),使我對(duì)以前學(xué)過的知識(shí)的使用和新知識(shí)的了解都積累了一定的經(jīng)驗(yàn),學(xué)到了很多不錯(cuò)的東西,獲益匪淺。 ( 4)軟件設(shè)計(jì)的程序可能有點(diǎn)冗余,過多,沒有使用的代碼只是注釋掉了,并沒有刪除,而且有些源代碼的注釋并不完整。 ( 2)在大多數(shù)的射頻識(shí)別系統(tǒng)中,上位機(jī)與讀寫器的通信通常采用的是 RS232串口進(jìn)行通信,而本次設(shè)計(jì)使用的是將 USB 接口與 CH341 芯片相結(jié)合,組成串口的功能才能進(jìn)行通信。在 RFID系統(tǒng)中,上位機(jī)作為應(yīng)用系統(tǒng),有著非常重要的作用。雖然這次設(shè)計(jì)在總體來(lái)說是成功的,但是由于時(shí)間和自己知識(shí)的有限,還有許多地方時(shí)不足 的,是可以有所提高的。而且每次出現(xiàn)問題,都會(huì)花大量的時(shí)間去思考,解決不了的問題又要花時(shí)間去查資料,問導(dǎo)師和同學(xué)。讀寫器中的設(shè)計(jì)包括有 USB 接口提供電源和與上位機(jī)的通信, LCD 顯示,蜂鳴器發(fā)聲等。軟件設(shè)計(jì)燒寫到硬件設(shè)備中,整個(gè)系統(tǒng)能夠正常運(yùn)行起來(lái),當(dāng)測(cè)試卡( S50)進(jìn)入到讀寫器的工作范圍內(nèi)時(shí),硬件顯示屏能夠正確顯示鉆具卡的名稱和 ID,連接上位機(jī)也能夠進(jìn)行一般的操作。論文的重點(diǎn)非常突出,從整體上來(lái)看,論文 的重點(diǎn)在于詳細(xì)設(shè)計(jì);而從詳細(xì)設(shè)計(jì)中來(lái)看,重點(diǎn)在于軟件設(shè)計(jì),輕重層次分明。 ( 2) 由于帶顯示屏的軟件程序設(shè)計(jì)和不帶顯示屏的軟件程序設(shè)計(jì)是不一樣的,其中不帶顯示屏的讀寫器采用的是被動(dòng)尋卡的,而帶顯示屏的讀寫器采用的是主動(dòng)尋卡的,所以當(dāng)整個(gè)系統(tǒng)帶有顯示屏的時(shí)候,應(yīng)用測(cè)試軟件上只能夠初始化連接成功,很多功能不能夠?qū)崿F(xiàn)。在系統(tǒng)調(diào)試過程中主要測(cè)試的有以下幾個(gè)方面: ( 1) LCD 顯示屏的顯示情況:當(dāng)測(cè)試卡進(jìn)入到讀寫器的工作范圍內(nèi)時(shí),顯示屏上的顯示是否正確; ( 2) 蜂鳴器的發(fā)聲情況:當(dāng)硬件設(shè)備連接電源后,打開開關(guān),蜂鳴器只發(fā)出一聲“嘀”的聲音,顯示屏正常顯示歡迎界面;當(dāng)測(cè)試卡進(jìn)入到讀寫器的工作范圍內(nèi)時(shí),蜂鳴器同樣發(fā)出一聲“嘀” ,代表讀卡成功;運(yùn)行 PC 機(jī)上的上位機(jī)測(cè)試軟件的時(shí)候,蜂鳴器能夠一直發(fā)出“嘀”的聲音,直到有測(cè)試卡進(jìn)入到讀寫器的工作范圍內(nèi)或者上位機(jī)初始化成功后,聲音消失; ( 3) 硬件設(shè)備連接上位機(jī),測(cè)試上位機(jī)的基本功能能否實(shí)現(xiàn):由于本次課題設(shè)計(jì)的讀寫器設(shè)計(jì)基本上是根據(jù)上位機(jī)來(lái)進(jìn)行編寫的,所以整個(gè)系統(tǒng)在很大程度上都要滿足上位機(jī)的基本功能。整個(gè)調(diào)試過程主要是這樣的:連接硬件設(shè)備在 PC 機(jī)上,將測(cè)試卡不斷地放進(jìn)讀寫器的工作范圍內(nèi),觀察顯示屏上的效果,能否正確顯示鉆具卡的名稱和序列號(hào),其次 是觀察與上位機(jī)的連接功能是否存在錯(cuò)誤。 } 鉆具出入庫(kù)自動(dòng)檢測(cè)系統(tǒng)設(shè)計(jì) 23 4 系統(tǒng)測(cè)試 在整個(gè)系統(tǒng)初步設(shè)計(jì)完成后,需要對(duì)系統(tǒng)進(jìn)行調(diào)試。 *(pTagType+1) = [1]。 if (!status) { if ( != 0x10) { status = MI_BITCOUNTERR。 [0] = req_code。 = PCD_TRANSCEIVE。 SetBitMask(RegTxControl,0x03)。 西南石油大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 22 ClearBitMask(RegControl,0x08)。MfComData。 struct TranSciveBuffer *pi。 ( 4) 卡密鑰格式轉(zhuǎn)換:用 ChangeCodeKey()表示; 部分代碼如下:(尋卡功能) char PcdRequest(unsigned char req_code,unsigned char *pTagType) { //其中 req_code 指尋卡方式; *pTagType 指卡片類型; char status。包括讀寫器尋卡,防沖撞,選卡,數(shù)據(jù)傳輸,實(shí)現(xiàn)基本功能,休眠狀態(tài)等。 } 標(biāo)準(zhǔn)協(xié)議程序設(shè)計(jì) 該程序設(shè)計(jì)的源代碼是放在文件 中的,因?yàn)檎麄€(gè)系統(tǒng)的測(cè)試都是基于該標(biāo)準(zhǔn)下選擇的 TYPE A 類型卡進(jìn)行的,所以在讀寫器默認(rèn)狀態(tài)下就設(shè)置的是該標(biāo)準(zhǔn)。i=15。 WriteCommand(0x88)。i=16。 鉆具出入庫(kù)自動(dòng)檢測(cè)系統(tǒng)設(shè)計(jì) 21 WriteCommand(0x80)。 //執(zhí)行指令 delay1(5)。 //寫數(shù)據(jù) delay1(5)。 //寫數(shù)據(jù) E=1。 //執(zhí)行指令 RS=1。 //執(zhí)行指令 delay1(5)。 //寫指令 delay1(5)。 //0=寫指令或者寫數(shù)據(jù), 1=讀 LCD 信息; E=1。 //1 讀取信息, 10 下降沿執(zhí)行指令; RS=0。 顯示屏流程圖如下: 圖 顯示屏流程圖 西南石油大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 20 部分代碼如下: ( 1)字符串?dāng)?shù)組定義漢字: unsigned char code table_1[]={西南石油大學(xué)計(jì)科 }。 ( 5) 鉆具卡序列號(hào)的顯示:用 disCardAID(unsigned char *gID)表示,用 for 循環(huán)輸出 4 個(gè)字節(jié)的序列號(hào): LCD_Data(gID[0+i])。 ( 3) 寫命令函數(shù):用 WriteCommand( unsigned char a)表示;通常用該函數(shù)來(lái)表示在顯示屏上顯示的位置,例如在歡迎界面中,在第一行顯示“西南石油大學(xué)計(jì)科”,就必須設(shè)置為 WriteCommand( 0x80) ,在第二行顯示“請(qǐng)刷鉆具卡!”,設(shè)置位置就是WriteCommand( 0x88)。因?yàn)闈h字是用字符串?dāng)?shù)字來(lái)表示鉆具出入庫(kù)自動(dòng)檢測(cè)系統(tǒng)設(shè)計(jì) 19 的,一個(gè)漢字占用 2 個(gè)字節(jié),“西南石油大學(xué)計(jì)科”一共 8 個(gè)漢字,所以占用 16 個(gè)字節(jié)。 主要功能的實(shí)現(xiàn)有: ( 1) 屏幕初始化:用 initial_LCD()表示;首先設(shè)置 PSB=1 來(lái)表示顯示屏選擇并口,然后調(diào)用寫命令函數(shù) WriteCommand(unsigned char a)來(lái)進(jìn)行清屏,功能設(shè)置,顯示設(shè)置和輸入方式設(shè)置。顯示的漢字是用字符串?dāng)?shù)組的形式表達(dá)的,方便以后顯示的時(shí)候利用 FOR 循環(huán),按照字節(jié)數(shù)來(lái)寫,每個(gè)漢字占用兩個(gè)字節(jié)。 Default:AnswerErr( FAULT11); break。 Case 命令碼 3:功能 3 函數(shù); break。 Switch(接收到的命令碼) { 西南石油大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 18 Case 命令碼 1:功能 1 函數(shù); break。 最后一部分也是本次設(shè)計(jì)最重要的一部分之一,就是上位機(jī)功能模塊的實(shí)現(xiàn): 首先用偽代碼的形式來(lái)表示整個(gè)系統(tǒng)是怎么讓上位機(jī)實(shí)現(xiàn)與單片機(jī)的通信的。第二個(gè)參數(shù)變量表示的是卡的類型,其中 0x0400 就表示石油鉆桿類型的卡片。然后送顯示卡類型的函數(shù) disCardTYPE()。調(diào)用 文件中的 DisplayLcd()來(lái)實(shí)現(xiàn); ( 2)顯示鉆具卡的名稱:調(diào)用尋卡函數(shù) RequestA()來(lái)實(shí)現(xiàn)。 )來(lái)表示,然后蜂鳴器再響一聲表示讀卡成功。 ( 4)整個(gè)系統(tǒng)默認(rèn)使用的是 typeA 協(xié)議的卡,用 PcdConfigISOType( 39。只有當(dāng) status 等于 MI_OK 的時(shí)候,蜂鳴器發(fā)出一聲響聲,燈亮一下。用一個(gè)變量 status來(lái)記錄是否有卡的到來(lái),先要設(shè)置該變量為復(fù)位 RC500 的函數(shù) PcdReset()。在顯示屏初始化中主要實(shí)現(xiàn)了五個(gè)功能: 功能一:設(shè)置顯示屏與單片機(jī)的連接為并口,用 PSB=1 表示; 功能二:在屏幕初始化過程中,必須要清屏,用 WriteCommand( 0x01)表示; 鉆具出入庫(kù)自動(dòng)檢測(cè)系統(tǒng)設(shè)計(jì) 17 功能三:設(shè)置 8 字節(jié)界面,用 WriteCommand( 0x30)表示; 功能四:整體顯示設(shè)置,用 WriteCommand( 0x0c) 表示; 功能五:輸入方式設(shè)置,光標(biāo)右移,地址位加 1,而且是整體右移。 功能二:波特率的設(shè)置,本次設(shè)計(jì)的波特率設(shè)置為 19200,用 TH1=TL1=
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1