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

正文內(nèi)容

畢業(yè)論文-基于atmega16單片機(jī)的公交交通智能卡設(shè)計(jì)與實(shí)現(xiàn)-資料下載頁(yè)

2025-06-03 22:05本頁(yè)面
  

【正文】 在 SQL 中查詢操作是通過(guò) select 語(yǔ)句來(lái)完成的,基本的 select 語(yǔ)句格式 Select列名 from表名 對(duì)數(shù)據(jù)庫(kù)進(jìn)行更新操作 : (1)插入記錄 (insert) Insert into 表名 [字段名 1,字段名 2....]values(值 1 ,值 2, ...) 注意:插入的值必須和列一一對(duì)應(yīng)。插入值的數(shù)據(jù)類型必須和對(duì)應(yīng)列的數(shù) 據(jù)類型相一致。 (2)更新記錄 (update) Update表名 set 字段 1 = 值 1....where條件 (3)刪除記錄 (delete) Delete from 表名 [wnere 條件 ] 在使用 delete 語(yǔ)句時(shí)要特別小心,因?yàn)?SQL 中的 Delete 沒(méi)有相應(yīng)的 Undo命令可以將刪除的數(shù)據(jù)恢復(fù),因此,為避免錯(cuò)誤,最好是在刪除前用帶相同條件的 Select 語(yǔ)句查詢一遍,確認(rèn)無(wú)誤后在執(zhí)行 delete 語(yǔ)句。 (四 )消費(fèi) 哈爾濱工業(yè) 大學(xué)畢業(yè)設(shè)計(jì) (論文 )用紙 20 當(dāng)做公交車刷卡消費(fèi)時(shí),應(yīng)當(dāng)時(shí)接受到的卡的序列號(hào)的卡內(nèi)金額減 1 具體操作先使用上述方法連接到數(shù)據(jù)庫(kù),然后打開(kāi)串口程序,當(dāng)接受到卡的序列號(hào)時(shí) SQL 語(yǔ)句 select * from bus_manage where id=? 先查詢到相應(yīng)的卡 rs = ()。//返回結(jié)果集 int tmp =(2)1。把金額減 1后放入 tmp 中, update bus_manage set money=? where id=? 更新語(yǔ)句更新卡的金額。 (五 )充值 當(dāng)要充值時(shí), 應(yīng)當(dāng)時(shí)接受到的卡的序列號(hào)的卡內(nèi)金額加上充值的金額 具體操作先使用上述方法連 接到數(shù)據(jù)庫(kù),然后打開(kāi)串口程序,當(dāng)接受到卡的序列號(hào)時(shí) SQL 語(yǔ)句 select * from bus_manage where id=? 先查詢到相應(yīng)的卡 rs = ()。//返回結(jié)果集 int balance = (2)。 int sum = balance+money。 update bus_manage set money=? where id=? 更新語(yǔ)句更新卡的金額。 (六 )新卡注冊(cè) 執(zhí)行 insert into bus_manage values(?,?,?)插入語(yǔ)句 setString(1, id)。設(shè)定從串口接受到的 ID setInt(2, 0)。設(shè)定卡內(nèi)金額為 0 setString(3, text)。 設(shè)定用戶 ID(身份證號(hào) ) executeUpdate()。更新數(shù)據(jù)庫(kù)。 (七 )卡的掛失 “ select * from bus_manage where id=?先查詢接受的卡的 ID. 然后執(zhí)行 delete from bus_manage where id=?刪除語(yǔ)句,在數(shù)據(jù)庫(kù)中刪除卡的序列號(hào)即卡的相關(guān)信息。 PC 串口程序 Java 通信串口包 串口 API 概覽 這是用于描述一個(gè)被底層系統(tǒng)支持的端口的抽象類。它包含一些高層的 IO 控制方法,這些方法對(duì)于所有不同的通訊端口來(lái)說(shuō)是通用的。 SerialPort 和 ParallelPort都是它的子類,前者用于控制串行端口而后者用于控這并口,二者對(duì)于各自底層的物理端口都有不同的控制方法。這里我們只關(guān)心 SerialPort。 哈爾濱工業(yè) 大學(xué)畢業(yè)設(shè)計(jì) (論文 )用紙 21 這個(gè)類主要用于對(duì)串口進(jìn)行管理和設(shè)置,是對(duì)串口進(jìn)行訪問(wèn)控制的核心類。主要包括以下方法 (一 )確定是否有可用的通信端口 (二 )為 IO 操作打開(kāi)通信端口 (三 )決定端口的所有權(quán) (四 )處理端口所有權(quán)的爭(zhēng)用 (五 )管理端口所有權(quán)變化引發(fā)的事件( Event) 這個(gè)類用于描 述一個(gè) RS232 串行通信端口的底層接口,它定義了串口通信所需的最小功能集。通過(guò)它,用戶可以直接對(duì)串口進(jìn)行讀、寫(xiě)及設(shè)置工作。 (1)串口初始化 (initComm()) 打開(kāi)硬件資源,并獲取串口: (mName)。 設(shè)置軟件資源,設(shè)置進(jìn)程名稱和超時(shí)時(shí)間 (mName).open(Read, 1000)。 打開(kāi) 數(shù)據(jù)傳輸參數(shù) setSerialPortParams(bPS, dataBit, stopBit,parityBit)。 //比特率 9600,8 位數(shù)據(jù)位, 1位停止位,無(wú)校驗(yàn)位。 創(chuàng)建輸入流: getInputStream()。 創(chuàng)建輸出流 getOutputStream(); 監(jiān)聽(tīng)端口 addEventListener(this) 接受數(shù)據(jù)使能 notifyOnDataAvailable(true) 初始化串口線程為主線 程 readThread = new Thread(this)。 (2)獲取系統(tǒng)中所用的全部串口( string[] listport()) ()。 (3)開(kāi)始讀串口轉(zhuǎn)化為字符串 (String readPort()) 先讓輸入流使能,然后讀書(shū)據(jù)到 buf 中,轉(zhuǎn)換為字符串 int i =(byte)buf[0] amp。 0xff; msg = (i)。 以 16 進(jìn)制顯示。 (4)寫(xiě)串口 以字符串形式發(fā)送消息 把數(shù)據(jù)寫(xiě)到輸出流上,刷新輸出流。 (5)關(guān)閉串口 (closePort()) 判斷輸出流位 NULL,關(guān)閉輸出流和輸入流。 關(guān)閉監(jiān)聽(tīng)端口 removeEventListener() 接受數(shù)據(jù)禁能 notifyOnDataAvailable(false) 哈爾濱工業(yè) 大學(xué)畢業(yè)設(shè)計(jì) (論文 )用紙 22 (6)串口監(jiān)聽(tīng)事件 (serialEvent()) :/* Break interrupt,通訊中斷 :/* Overrun error,溢位錯(cuò)誤 */ :/* Framing error,傳幀錯(cuò)誤 */ :/* Parity error,校驗(yàn)錯(cuò)誤 */ :/* Carrier detect,載波檢測(cè) */ :/* Clear to send,清除發(fā)送 */ :/* Data set ready,數(shù)據(jù)設(shè)備就緒 */ :/* Ring indicator,響鈴指示 */ SerialPortEvent. 讀到緩沖數(shù)組 輸出到終端 :/*輸出緩沖區(qū)清空 Mifare 1 非接觸式卡說(shuō)明 Mifare 1非接觸式卡包含兩個(gè)部分 :RF射頻接口電路和數(shù)字電路。 (一 )RF射頻接口電 路: 在 RF射頻接口電路中,主要包括有波形裝換模塊。它可將卡片讀寫(xiě)器上 的,一方面送調(diào)制 /解調(diào)模塊,另一方面進(jìn)行波形裝換,將正弦波轉(zhuǎn)換為方波,然后對(duì)其整個(gè)濾波,由電壓調(diào)節(jié)模塊對(duì)電壓進(jìn)行進(jìn)一步的處理 圖 17 MIFARE one (二 )數(shù)字電路部分: 總共包含 ATR模塊, AntiCollision模塊, select Application模塊,Authentication amp。 Access Control模塊控制及算術(shù)運(yùn)算單元, RAM/ROM單元,數(shù)據(jù)加密單元和 EEPROM存儲(chǔ)器及其接口電路八個(gè)部分。 (1) ATR模塊 哈爾濱工業(yè) 大學(xué)畢業(yè)設(shè)計(jì) (論文 )用紙 23 當(dāng)一張 Mifare 1 卡片處在卡片讀卡器的天線的工作范圍之內(nèi)時(shí),控制讀卡器向卡片發(fā)出 REQUEST ALL命令后,卡片的 ATR將啟動(dòng),將卡片 Block 0 中的卡片類型號(hào)共 2個(gè)字節(jié)傳送給讀卡器,建立卡片與讀卡器的第一步通信。 (2) select Application模塊 當(dāng)卡片與讀卡器完成了上述步驟后,控制的讀卡器要想對(duì)卡片進(jìn)行讀,寫(xiě)操作,則必須對(duì)卡片進(jìn)行 select操作。以使卡片真正的被選中。被選中的卡片將卡片上存儲(chǔ)在 Block 0 中的卡片的容量 SIZE字節(jié)傳送給讀卡器。當(dāng)讀卡器收到這一字節(jié)后,就可以明確對(duì)卡片進(jìn)行進(jìn)一步操作。 (3)Authentication amp。 Access Control模塊控制及算術(shù)運(yùn)算單元 在確認(rèn)已 經(jīng)選擇了一張 卡片時(shí),程序員對(duì)卡片進(jìn)行讀寫(xiě)操作前,必須對(duì)卡片上已經(jīng)設(shè)置的密碼進(jìn)行認(rèn)證,如果匹配,則允許進(jìn)一步的 Read/Write操作。Mifare 1卡片上有 16個(gè)扇區(qū),每個(gè)扇區(qū)都可分別設(shè)置各自密碼,互補(bǔ)干涉。 Mifare 1 卡的存儲(chǔ)結(jié)構(gòu) Mifare 1 卡片的存儲(chǔ)容量為 1KB,采用 EEPROM作為存儲(chǔ)介質(zhì),整個(gè)結(jié)構(gòu)劃分為 16個(gè)扇區(qū),編號(hào)為 015。每個(gè)扇區(qū) 4塊,分別為塊 0,塊 1,塊 2,塊 3,每個(gè)塊 16個(gè)字節(jié) 哈爾濱工業(yè) 大學(xué)畢業(yè)設(shè)計(jì) (論文 )用紙 24 圖 18 每個(gè)扇區(qū)的塊 3包含了該扇區(qū)的密碼 A(6個(gè)字節(jié) ), 存取控制( 4個(gè)字節(jié)),密碼 B(6個(gè)字節(jié) ),是一個(gè)特殊的塊。其余三塊一般是數(shù)據(jù)塊。 但扇區(qū) 0的塊 0時(shí)特殊的,是廠商代碼,已固化。 其中:第 0~4個(gè)字節(jié)為卡片的序列號(hào),第 5個(gè)字節(jié)為序列號(hào)的校驗(yàn)碼; 第 6個(gè)字節(jié)為卡片的容量“ SIZE”字節(jié); 第 7, 8個(gè)字節(jié)為卡片的類型號(hào)字節(jié); 其他字節(jié)由廠商另加定義。 第四章 軟件測(cè)試 數(shù)據(jù)庫(kù)單元測(cè)試 插入元素測(cè)試 分析:要插入元素必須遵信一定的原則, 金額必須是大于 0 的整數(shù);用戶的身份證號(hào)必須是 17 位的數(shù)字,不能小于 17 位或是 17 位中有不是數(shù)字的。 卡號(hào) (id) 卡內(nèi)金額 (money) 用戶身份證號(hào) (customid) 輸入條件 有效等價(jià)類 無(wú)效等價(jià)類 是否金額大于 0 Money0 (1) Money = 0 (2) 是否金額為整數(shù) Money = 12 (3) Money = (4) Money = a (5) 是否身份證號(hào) 為 17 位 Customid = 142701199110020618 (6) Customid = 1423 (7) 是否身份證號(hào)都為整數(shù) Customid = 142701199310020534 (8) Customid = 1427011993100205a4(9) 哈爾濱工業(yè) 大學(xué)畢業(yè)設(shè)計(jì) (論文 )用紙 25 序號(hào) 例子 覆蓋等價(jià)類 輸出 1 (12, 142701199110020618) (1),(6) 插入成功 2 (0, 142701199110020618) (2),(6) 插入失敗,金額為 0 插入失敗,金額小于 0 插入失敗,金額不是整數(shù) 插入失敗,金額不是整數(shù) 插入失敗,身份證號(hào)不是 17位 插入失敗,身份證號(hào)中有字母 3 (1, 142701199110020618) (2),(6) 4 (, 142701199110020618) (4),(6) 5 (1a, 142701199110020618) (5),(6) 6 (12,1423) (1),(7) 7 (12, 1427011993100205a4) (1),(7) 更新數(shù)據(jù)測(cè)試 哈爾濱工業(yè) 大學(xué)畢業(yè)設(shè)計(jì) (論文 )用紙 26 分析:更新數(shù)據(jù)庫(kù)時(shí),主要是對(duì)卡內(nèi)金額的操作,當(dāng)用戶刷卡時(shí)每次卡中金額減 1,當(dāng)金額減到 0時(shí),再要扣費(fèi)是會(huì)出現(xiàn)錯(cuò)誤。 輸入條件 有效等價(jià)類 無(wú)效等價(jià)類 金額是否大于等于 1 Money = 12 (1) Money = 0 (2) 序號(hào) 例子 覆蓋等價(jià)類 輸出 1 Money = 10 (1) Money = 9 2 Money = 0 (2) 錢(qián)數(shù)小于 0,操作失敗 串口發(fā)送卡號(hào)單元測(cè)試 分析 :當(dāng)讀卡器尋到進(jìn)入天線內(nèi)的卡時(shí),會(huì)把卡的序列號(hào) (卡的唯一標(biāo)識(shí) )放入一個(gè)數(shù)組中,然后再通過(guò)串口把卡的序列號(hào)發(fā)送給 PC 機(jī)。 PC 機(jī)根據(jù)接受到的卡號(hào)進(jìn)行數(shù)據(jù)庫(kù)中該卡信息的相關(guān)操作。 輸入條件 有效等價(jià)類 無(wú)效等價(jià)類 發(fā)送的卡號(hào)是否為有 8 個(gè)字符的字符串 DB1434O8 (1) B1234O8 (2) 序號(hào) 例子 覆蓋等價(jià)類 輸出 1 DB1434O8 (1) DB1434O8 2 B1234O8 (2) 數(shù)據(jù)庫(kù)不存在該卡,不能進(jìn)行下步操作 集成測(cè)試 分析: 在數(shù)據(jù)庫(kù)單元測(cè)試與串口發(fā)送
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1