《基于單片機(jī)的智能快遞柜終端系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)》12000字(論文)_第1頁
《基于單片機(jī)的智能快遞柜終端系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)》12000字(論文)_第2頁
《基于單片機(jī)的智能快遞柜終端系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)》12000字(論文)_第3頁
《基于單片機(jī)的智能快遞柜終端系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)》12000字(論文)_第4頁
《基于單片機(jī)的智能快遞柜終端系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)》12000字(論文)_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基于單片機(jī)的智能快遞柜終端系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)摘要 III前言 1第1章緒論 21.1設(shè)計(jì)目的及意義 21.2國內(nèi)外研究現(xiàn)狀 2第2章設(shè)計(jì)方案與模塊選擇 32.1系統(tǒng)設(shè)計(jì)要求 32.2電路模塊選擇 32.1.1主控模塊的選擇 32.2.2液晶屏的選擇 42.2.3通信模塊的選擇 42.2.4電源模塊的選擇 42.2.5攝像頭的選擇 52.3系統(tǒng)基本架構(gòu) 5第3章系統(tǒng)硬件設(shè)計(jì) 63.1主控電路的設(shè)計(jì) 63.2電壓轉(zhuǎn)換電路 73.3SIM800A短信模塊 83.4攝像頭模塊 93.5SPI-flash模塊電路 103.6TFT液晶顯示屏 103.7繼電器開關(guān)的設(shè)計(jì) 113.8SD卡接口電路 12第4章系統(tǒng)軟件設(shè)計(jì) 134.1主程序流程 134.2SIM800A短信模塊程序 144.3OV7670攝像頭模塊程序 144.4SD卡程序 144.5TFT顯示程序程序 154.6觸摸操作程序 154.7BMP圖像處理程序 164.8SPI-Flash程序 164.9FATFS文件系統(tǒng)程序 16第5章系統(tǒng)整體調(diào)試 185.1FATFS文件系統(tǒng)程序 185.1.1STM32系統(tǒng)板的調(diào)試 185.1.2SIM800A模塊電路調(diào)試 185.1.3繼電器開關(guān)電路調(diào)試 205.2程序調(diào)試 205.2.1OV7670攝像頭調(diào)試 215.2.2隨機(jī)數(shù)的產(chǎn)生 215.2.3輸入鍵盤的調(diào)試 215.2.4中文字庫的更新 225.3整體調(diào)試與結(jié)果分析 22總結(jié) 24參考文獻(xiàn) 25摘要隨著我國快遞行業(yè)的發(fā)展,配送如何變得更加高效率成為行業(yè)發(fā)展的關(guān)鍵因素。相比較上門配送、集散點(diǎn)取件,自助形式的快遞柜取件方式相比前兩種有著較大優(yōu)勢。論文結(jié)合實(shí)際,設(shè)計(jì)了基于STM32的智能快遞柜系統(tǒng),負(fù)責(zé)存儲快件和相關(guān)信息的發(fā)送功能??蛻羰褂孟到y(tǒng)隨機(jī)發(fā)送的驗(yàn)證碼來取件,取出快件后攝像頭拍攝取件人照片存儲到SD中。本系統(tǒng)是在分析了智能快遞柜終端系統(tǒng)的系統(tǒng)組成與主要功能后,設(shè)計(jì)實(shí)現(xiàn)了智能快遞柜終端系統(tǒng)硬件電路,系統(tǒng)硬件電路包括STM32主控模塊電路、SIM800A短信模塊電路、繼電器開關(guān)電路、OV7670攝像頭模塊電路、SD卡模塊電路、TFT液晶模塊接口電路和SPI-flash模塊電路。在STM32硬件平臺上進(jìn)行程序功能設(shè)計(jì)以及人機(jī)交互界面來設(shè)計(jì),利用SIM800A通信模塊實(shí)現(xiàn)短消息通信功能,并通過2.4寸TFT顯示屏實(shí)現(xiàn)顯示及輸入相關(guān)信息等功能,利用AltiumDesigner軟件設(shè)計(jì)了電路原理圖。最后系統(tǒng)經(jīng)過了軟硬件聯(lián)調(diào)測試,滿足了系統(tǒng)設(shè)計(jì)的預(yù)期目標(biāo)。關(guān)鍵詞:STM32主控模塊;智能快遞柜;短信驗(yàn)證碼;GSM模塊前言隨著快遞業(yè)的迅速發(fā)展,這個(gè)與人們生活息息相關(guān)的行業(yè)受到了越來越多人的喜愛,快遞業(yè)有著方便、安全和快速等特點(diǎn),但是快遞的投遞效率在最后逐件簽收配送環(huán)節(jié)降低。針對這一問題,為節(jié)約快遞件逐件確認(rèn)簽收的時(shí)間,提高快遞業(yè)服務(wù)效率,論文結(jié)合實(shí)際應(yīng)用,設(shè)計(jì)了一款基于STM32的智能快遞終端系統(tǒng),以實(shí)現(xiàn)快遞件的自助派件。系統(tǒng)選用STM32單片機(jī)作為系統(tǒng)控制核心,并分析了智能快遞柜系統(tǒng)的總體系統(tǒng)結(jié)構(gòu)。智能快遞柜終端主要負(fù)責(zé)快遞件的存儲和相關(guān)信息的發(fā)送通知功能。終端系統(tǒng)主要滿足派件功能和快遞員保存數(shù)據(jù)功能。在派件過程中,快遞員首先需要登陸終端;成功登陸后選擇空置箱門來放置快遞件,如果當(dāng)前快遞柜有貨物,則不能存儲快件,如果快遞柜中沒有快件,可正常存儲快件??旒嫒肟爝f柜后快遞員輸入客戶的手機(jī)號信息,通過SIM800A模塊以短信方式發(fā)送給客戶取件碼通知客戶取件。客戶取件時(shí),輸入正確驗(yàn)證碼就可方便地提取快遞件。驗(yàn)證碼采用隨機(jī)方式,確保一柜一碼,確保快遞安全送到客戶手中??蛻羧〕隹旒^程中,能夠通過攝像頭拍攝取件人照片并存儲到系統(tǒng)的SD卡中。當(dāng)前快遞派送主要存在以下幾點(diǎn)問題:1.快遞員在等待收件人取件的過程中需要花費(fèi)大量的時(shí)間,不利于其余剩下的快件的派送。2.快遞主人正在上課或上班時(shí)不方便領(lǐng)取快遞則需要另外找時(shí)間派送。3.容易受天氣影響,下雨等天氣無法派件。4.快遞包裹被人冒領(lǐng)丟失。為解決這一問題而設(shè)計(jì)了一款快遞柜。 第1章緒論1.1設(shè)計(jì)目的及意義本課題研究的基于STM32的快遞柜將解決傳統(tǒng)快遞派件的主要缺陷。運(yùn)用STM32F103ZET6做主控核心,來操控液晶屏的顯示和觸摸輸入鍵盤的操作,完成存放快遞和領(lǐng)取快遞的工作。GSM模塊發(fā)送短信驗(yàn)證碼,收件人使用驗(yàn)證碼取件,這樣就能使快遞員節(jié)省了時(shí)間,只需要將快件放入柜子中便可以離開,收件人也不用必須馬上去取件。這個(gè)方案大大的方便了人們。1.2國內(nèi)外研究現(xiàn)狀2006-2015年期間,我國快遞業(yè)務(wù)量復(fù)合增速達(dá)40%,業(yè)務(wù)量從2006年的10億件增長到2015年的206.7億件,增長近20倍,并在2014年首度超過美國,規(guī)模持續(xù)保持全球第一[1]。2015年,同城、異地和國際快遞業(yè)務(wù)收入分別占全部快遞收入的14.5%、54.6%和13.3%[2]。成立于2011年的上海寶盒速遞有限公司,快遞員將快件存入快遞柜前,需要先通過驗(yàn)證。快遞員將快件存放在快遞柜后,后臺一條短信會發(fā)送到收件人的手機(jī)上,該短信包含取件的密碼,有了取件的密碼,收件人即可開箱取件,完成取件后,快遞員也會收到一條通知短信,證明已完成派送。密碼輸入錯(cuò)誤的話,快遞就無法被取走,快遞柜外安裝的攝像頭會記錄取件過程。國內(nèi)雖然有了這樣一家公司,但是成本非常高。本項(xiàng)目在成本方面做足了考慮,成本比寶盒速遞低了很多,而且又能達(dá)到無人值守的目的。實(shí)現(xiàn)了取件自由,節(jié)約時(shí)間的目的。

第2章設(shè)計(jì)方案與模塊選擇2.1系統(tǒng)設(shè)計(jì)要求本系統(tǒng)選擇ST意法的STM32F1系列芯片作為主控芯片。完成以下設(shè)計(jì)要求:1.實(shí)現(xiàn)派件員存放包裹后自動(dòng)發(fā)送驗(yàn)證碼到收件人。2.實(shí)現(xiàn)收件人通過短信驗(yàn)證碼領(lǐng)取包裹。3.實(shí)現(xiàn)收件人領(lǐng)取成功后自動(dòng)拍照保存照片并短信通知快遞員包裹被領(lǐng)取。完成這些功能大致要解決以下三個(gè)題目:1.編寫MCU與TFT液晶屏之間的顯示以及觸摸輸入操作界面的設(shè)計(jì)程序。2.通過SIM800模塊發(fā)送驗(yàn)證信息,將驗(yàn)證信息發(fā)送給收件人。3.控制OV7670拍照和SD卡存儲照片。2.2電路模塊選擇2.1.1主控模塊的選擇本設(shè)計(jì)在主控芯片的選擇上提出了幾種方案。第一種是51系列單片機(jī),第二種是AVR系列單片機(jī)ATMEG16,第三種是STM32F1系列STM32F103ZET6單片機(jī)。這幾款單片機(jī)都是比較常用的單片機(jī),但是性能指標(biāo)卻相差很大。各個(gè)方案芯片的性能參數(shù)如表2-1所示。表2-1各方案芯片對比表方案選擇方案一方案二方案三芯片名稱STC89S52ATMEG16STM32F103ZET6數(shù)據(jù)總線寬度8bit16bit32bit時(shí)鐘頻率8MHz16MHz72MHz數(shù)據(jù)RAM大小512字節(jié)1k192kBADC通道數(shù)量無1024ADC分辨率10bit12bitI/O數(shù)量32I/O32I/O140I/O工作電源電壓3.3V~5.5V4.5V~5.5V1.8V~3.6V特性低功耗功耗低、穩(wěn)定性強(qiáng)低功耗、高性能、穩(wěn)定性強(qiáng)、高速運(yùn)算數(shù)據(jù)總線寬度8bit16bit32bit因?yàn)楸鞠到y(tǒng)要使用到的外設(shè)偏多,僅僅是TFT液晶屏就需要34個(gè)接口,OV7670攝像頭需要19個(gè)接口,還需要使用到的SPI通信接口與SD卡通信,異步串口USART與SIM800A短信模塊的通信,STM32F103ZET6都能提供這些外設(shè)和功能,51系列和AVR系列都沒有足夠的功能和接口,綜合以上的各種考慮本系統(tǒng)采用的主控芯片毫無疑問為速度快、功能更強(qiáng)大、功耗又低的STM32F103ZET6。2.2.2液晶屏的選擇 方案一:液晶LCD1602,該LCD價(jià)格便宜僅3元人民幣,但缺點(diǎn)很明顯不能顯示中文文本,只能顯示單純的數(shù)字或字符,而且只顯示兩行,不能滿足本課題中快遞盒子的顯示需求和任務(wù)。故不選擇此方案。方案二:選用LCD12864來顯示,該LCD比較方案一中的稍微強(qiáng)大一些,能顯示中文漢字、數(shù)字和英文字符并且顯示的內(nèi)容更多達(dá)到了4行,STM32和該LCD有串口并行通信兩種。使用串口方式時(shí)STM32只需要2個(gè)I/O口就能顯示任意的內(nèi)容,十分的節(jié)約I/O口,但是該LCD不能顯示圖片,不能觸摸操作。故不選擇此方案。方案三:選用2.8寸電阻式TFT觸摸液晶屏,該液晶屏不僅可以顯示漢字和圖片,還可以觸摸操作,用戶的交互上能做到比較的友好。故選擇此方案。2.2.3通信模塊的選擇通信模塊的選擇有兩個(gè)方案。方案一:選擇W5500網(wǎng)絡(luò)模塊,通過與路由器連接將快遞信息上傳服務(wù)器,用戶打開專門的APP獲取驗(yàn)證碼,而連接該模塊與APP需要用到MQTT協(xié)議,在設(shè)計(jì)上存在較高的難度,不僅需要編寫一個(gè)APP軟件,還需要在linux操作系統(tǒng)下搭建網(wǎng)絡(luò)監(jiān)控服務(wù)器,用戶假如不及時(shí)查看APP還是不能在第一時(shí)間知道快遞的狀態(tài)。故不選擇此方案。方案二:選擇SIM800通信模塊。該模塊的全球移動(dòng)通信系統(tǒng)工作頻段有兩個(gè),分別是900MHz和1800MHz,可以實(shí)現(xiàn)存儲管理服務(wù)、通用分組無線服務(wù)技術(shù)的數(shù)據(jù)系統(tǒng)傳輸功能??梢越邮蘸桶l(fā)送短信,也可以接聽和撥打電話等。該方案符合本系統(tǒng)的要求,故選此該方案。2.2.4電源模塊的選擇不同模塊需要不同的工作電壓,其中有5V、12V、15V三種。STM32不能直接用5V供電,需要把5V電壓壓低到3.3V,這里用到的芯片是ASM1117-3.3。2.2.5攝像頭的選擇攝像頭的選擇OV7670攝像頭,該攝像頭自帶FIFO,拍出來的照片圖像清晰,本系統(tǒng)使用該攝像頭完全足夠。2.3系統(tǒng)基本架構(gòu)本系統(tǒng)通過STM32控制TFT液晶屏顯示提示信息,以及輸入驗(yàn)證碼的輸入鍵盤,當(dāng)快遞員輸入快遞員賬號,進(jìn)入存件模式,在該模式下可以看到當(dāng)前盒子的狀態(tài)是否存在快件,系統(tǒng)同時(shí)控制繼電器通電使電磁鎖收縮開啟盒子,快遞員存放快件后,通過在觸摸鍵盤上輸入快遞主人的號碼,將隨機(jī)驗(yàn)證碼發(fā)送給快遞主人,收件人收到含有隨機(jī)驗(yàn)證碼的短信后,收件人憑驗(yàn)證碼輸入正確的驗(yàn)證碼操作界面后,系統(tǒng)會進(jìn)行拍照,拍照成功并將照片保存在SD卡并打開盒子,快遞員同時(shí)也會收到該快件被取走的短信。該系統(tǒng)主要由STM32F103ZET6主控電路模塊、TFT電阻式2.8寸液晶顯示觸摸屏模塊、攝像頭OV7670拍照模塊、SD卡存儲模塊、SIM800短信發(fā)送模塊、SPI-flash字庫模塊、兩路繼電器模塊組成。系統(tǒng)架構(gòu)如圖2-1所示。圖2-1STM32系統(tǒng)框圖

第3章系統(tǒng)硬件設(shè)計(jì)本章給出快遞盒子的硬件設(shè)計(jì)和整體布局,主要是STM32主控模塊電路、SIM800A短信模塊電路、繼電器開關(guān)電路、OV7670攝像頭模塊電路、SD卡模塊電路、TFT液晶模塊接口電路和SPI-flash模塊電路。完成以上設(shè)計(jì)的制作軟件是AltiumDesigner。這是一款繪圖軟件,可以用來設(shè)計(jì)繪制電路原理圖、PCB連線以及輸出設(shè)計(jì)。3.1主控電路的設(shè)計(jì)該系統(tǒng)使用STM32F103ZET6單片機(jī)作為主控芯片。STM32F103ZET6芯片如圖3-1所示。它的主要功能是完成對TFT液晶的顯示和觸控,并控制SIM800短信模塊發(fā)送短信,控制OV7670攝像頭拍照和SD卡的存儲功能。STM32F103ZRT6是一款性能很高而且內(nèi)核是基于Cortex-M3的單片機(jī)。系統(tǒng)時(shí)鐘經(jīng)過內(nèi)部鎖相環(huán)倍頻最高可達(dá)72M,擁有100個(gè)可編程輸入/輸出IO口。圖3-1STM32F103ZET6芯片主控電路的原理圖如圖3-2所示。主控電路分為三個(gè)部分:STM32芯片、復(fù)位電路和晶振。為了使該設(shè)計(jì)使用得方便些,增加了JTAG下載接口、啟動(dòng)模式選擇接口,還有用排針引出所有I/O口。圖3-2最小系統(tǒng)原理圖3.2電壓轉(zhuǎn)換電路本系統(tǒng)需要3.3V的工作電壓供給STM32主控芯片,但是輸入該系統(tǒng)的電壓為5V,所以需要進(jìn)行轉(zhuǎn)換電壓之后才能向芯片供電,該電路進(jìn)行電壓轉(zhuǎn)換所用的芯片是AMS1117-3.3,在本設(shè)計(jì)的電路中,這個(gè)芯片可以得到由5V轉(zhuǎn)化為3.3V的電壓。其轉(zhuǎn)換電路原理圖如圖3-3所示。轉(zhuǎn)換電路中的兩個(gè)電容起到的作用都是濾波。無紋波的輸入的電壓是濾波的目的。圖3-3電壓轉(zhuǎn)換電路3.3SIM800A短信模塊SIM800芯片工作頻段有四頻,分別為850MHz、900MHz、1800MHz和1900MHz。AT指令就是由該系統(tǒng)通過串口給SIM800的,SIM800再根據(jù)接收的AT指令內(nèi)容發(fā)送短信。AT指令由終端設(shè)備傳輸給數(shù)據(jù)電路終端設(shè)備。AT指令在寫的時(shí)候,必須必須在最前面加上“AT”,以回車結(jié)尾。該電路可以低功耗實(shí)現(xiàn)收發(fā)短信、語音通話、數(shù)據(jù)傳輸和傳真信息的傳輸。SIM800模塊自帶波特率檢測功能,可以檢測從1200bps到115200bps的通信速率。原理圖如圖3-4所示。模塊通電時(shí)電源指示燈亮,斷電電源指示燈則滅。將手機(jī)卡插入到U4卡座中,天線接口J1用來增強(qiáng)通信信號強(qiáng)度。網(wǎng)絡(luò)狀態(tài)可以根據(jù)指示燈的亮和滅來判斷。網(wǎng)絡(luò)狀態(tài)指示燈的工作狀態(tài)如表3-1所示。表3-1SIM800A指示燈狀態(tài)表NET_STA工作狀態(tài)熄滅關(guān)機(jī)64ms亮/800ms滅未注冊到網(wǎng)絡(luò)64ms亮/3000ms滅注冊到網(wǎng)絡(luò)64ms亮/300ms滅GPRS正常通信圖3-4SIM800A電路原理圖該電路最核心的部分就是希姆通公司的SIM800A,STM32發(fā)送的AT指令全部由該模塊接收。該電路的電源使用的是MPS公司的高效同步降壓芯片MP2303,該芯片的電源轉(zhuǎn)化效率非常高,輸入的電壓范圍寬。該模塊的任務(wù)是快遞員在系統(tǒng)中輸入收件人號碼,系統(tǒng)隨即會生成隨機(jī)驗(yàn)證碼,快遞員將驗(yàn)證碼發(fā)送出去,當(dāng)收件人輸入隨機(jī)驗(yàn)證碼,取走快遞之后,快遞員會收到來自系統(tǒng)會發(fā)過來的短信,通知快遞員快遞已經(jīng)被取走。3.4攝像頭模塊OV7670CMOS圖像傳感器是mniVision公司的產(chǎn)品,此攝像頭工作電壓低而且體積小巧。OV7670O攝像頭可以輸出圖像數(shù)據(jù)的方式有取窗口、子采樣和整幀等。此攝像頭能通過編程實(shí)現(xiàn)伽馬曲線、白平衡、色和度圖像的的處理。OV7670攝像頭的特點(diǎn)有:電壓低、靈敏度高,SCCB接口是標(biāo)準(zhǔn)的而且也兼容IIC接口,支持RawRGB、RGB(GBR4:2:2,RGB565/RGB555/RGB444),YUV(4:2:2)和YCbCr(4:2:2)輸出格式,具有豐富輸出尺寸類型[3]。該攝像頭模塊配備了一塊FIFO先進(jìn)先出隊(duì)列的芯片,該芯片可以臨時(shí)存儲圖像的數(shù)據(jù),分擔(dān)CPU占用率使運(yùn)行更加流暢。產(chǎn)品如圖3-5所示。在本系統(tǒng)中,OV7670的功能是在收件人輸入正確的驗(yàn)證碼取件時(shí)完成拍照,OV7670攝像頭的供電電壓為3.3V,而本系統(tǒng)中STM32主控芯片也是用為3.3V電壓進(jìn)行供電,攝像頭所需的工作電壓也是3.3V,而I/O口輸出的電壓剛好為3.3V,完全符合系統(tǒng)的需要。圖3-5OV7670攝像頭接口電路原理圖3.5SPI-flash模塊電路通信協(xié)議SPI主要應(yīng)用在FLASH、EEPROM、數(shù)字信號處理器和AD轉(zhuǎn)換器等方面。SPI種通信協(xié)議被越來越多的芯片集成,其原因是所用的芯片引腳很少,只需要四根線就可實(shí)現(xiàn)全雙工通信。W25Q128這款芯片也支持這個(gè)協(xié)議,該芯片擁有128M的存儲空間,通常被應(yīng)用于存放字庫。原理圖如圖如3-6所示。MISO是輸出數(shù)據(jù)由從設(shè)備執(zhí)行,輸入數(shù)據(jù)由主設(shè)備執(zhí)行的信號線。SCK:串行時(shí)鐘信號;CS:片選信號。圖3-6SPI-flash接口電路原理圖在本系統(tǒng)中SPI-flash的作用是用于存放字庫,以便于TFT液晶顯示中文內(nèi)容,沒有字庫的話TFT液晶屏?xí)@示一些亂碼。因?yàn)楸驹O(shè)計(jì)需要顯示不同的狀態(tài)和提示信息,中文顯示必不可少,同時(shí)也是為了使得更加人性化,界面更加友好。3.6TFT液晶顯示屏TFTLCD全稱薄膜晶體管液晶顯示器,它的原理是通過在液晶顯示屏的每一個(gè)像素上設(shè)置薄膜晶體管,能夠很好的克服非選通時(shí)的干擾[4]。液晶顯示屏的圖像質(zhì)量很高是因?yàn)閽呙杈€數(shù)與靜態(tài)特性無關(guān)。本系統(tǒng)選用了ALIENTEK2.8寸TFTLCD面板模塊,TFTLCD能顯示16位色的彩圖。系統(tǒng)需要顯示用戶的輸入狀態(tài)和快遞盒子的狀態(tài),同時(shí)也要顯示觸摸鍵盤,TFTLCD能夠滿足需求,所以使用了該模塊。該屏幕不僅能顯示還是一款觸摸屏,TFT液晶觸摸屏的原理與電阻式觸摸原理相同。電阻式觸摸屏利用壓力感應(yīng)觸點(diǎn)來定位正在觸摸的位置來檢測電阻的。電阻式觸摸屏的優(yōu)點(diǎn)在于有很高的精度、很低的價(jià)格、很好的穩(wěn)定性以及很強(qiáng)的抗干擾性。如圖3-7所示。圖3-7TFT液晶屏接口電路原理圖在本系統(tǒng)中TFT液晶模塊的任務(wù)是顯示當(dāng)前狀態(tài)和輸入鍵盤,當(dāng)有檢測到觸摸后,根據(jù)觸摸的位置確定觸摸得到的數(shù)值.當(dāng)快遞員輸入了密碼+盒子編號后,對應(yīng)的盒子的狀態(tài)信息會顯示在屏幕上,“存在快遞”或“沒有快遞”。這個(gè)時(shí)候快遞員可以在輸入鍵盤輸入快遞主人的手機(jī)號碼,輸完手機(jī)號碼后,點(diǎn)擊確定鍵,短信如果發(fā)送成功就會提示“發(fā)送成功”的字樣??爝f主人在輸入鍵盤輸入驗(yàn)證碼,假如驗(yàn)證碼正確系統(tǒng)會提示“正在出件”的字樣,快遞主人就可以取件,出件完成后會恢復(fù)原始狀態(tài)“等待取件”。3.7繼電器開關(guān)的設(shè)計(jì)繼電器可以控制電磁鎖的開鎖和關(guān)鎖操作,因此作為電磁鎖的開關(guān)。本系統(tǒng)設(shè)計(jì)了兩路繼電器開關(guān),用于兩個(gè)快遞盒子。電路的原理是電器的短路和斷路由8050三極管來控制,繼電器采用的松樂繼電器,來實(shí)現(xiàn)開通和閉合操作。實(shí)現(xiàn)開鎖需要在繼電器閉合的時(shí)侯,電磁鎖收縮,鎖定狀態(tài)需要繼電器斷開,然后電磁鎖彈出。開關(guān)電路圖如圖3-8所示。圖3-8繼電器開關(guān)電路3.8SD卡接口電路本系統(tǒng)是用SD卡存儲拍攝的照片,SD卡有非常大的存儲空間,而且SPI和SDIO驅(qū)動(dòng)都能支持。STM32F103ZET6自帶了SDIO接口驅(qū)動(dòng),通信速度最高可達(dá)到24M,傳輸數(shù)據(jù)每秒最高可達(dá)到12M字節(jié)[5],對于傳輸照片完全足夠了。因?yàn)镾D卡有幾十G的存儲空間,替換起來比較容易,而且編程起來并不復(fù)雜,很多單片機(jī)如果想要擴(kuò)展大容量外部存儲器都會選擇SD卡。收件人在取件的時(shí)候,輸入正確的驗(yàn)證碼,系統(tǒng)會自動(dòng)拍照并將照片保存在SD卡中的picture文件夾下。其原理圖如圖3-9所示。SDIO_D0、SDIO_D1、SDIO_D2、SDIO_D3用于數(shù)據(jù)傳輸端,SDIO_CMD是使能端,SDIO_SCK是時(shí)鐘輸入端。圖3-9SD卡接口原理圖第4章系統(tǒng)軟件設(shè)計(jì)4.1主程序流程本系統(tǒng)的軟件部分是指快遞盒子的主控芯片STM32F103ZET6的程序,該快遞盒子的程序是用C語言編程的。在這里主要介紹了程序的開發(fā)環(huán)境和程序開發(fā)設(shè)計(jì)思路。本系統(tǒng)使用的編程軟件是Keil5,該編程軟件是Window操作系統(tǒng)的應(yīng)用程序。Keil軟件不僅可以編譯程序,還可以在線仿真調(diào)試和燒寫程序到STM32中。STM32主控芯片程序的流程圖如4-1所示。本系統(tǒng)的程序相對于一般的設(shè)計(jì)都要大得多,主要包括SPI-flash程序OV7670攝像頭模塊程序、SIM800模塊程序、SD卡模塊程序、FATFS文件系統(tǒng)程序、TFT液晶顯示和觸摸程序、以及BMP格式圖像處理程序。接下來將一一介紹這些子程序的設(shè)計(jì)。圖4-1主程序流程圖4.2SIM800A短信模塊程序下面將介紹配置SIM800模塊的程序的過程,若想使該模塊正常工作,首先要使能GPIO的時(shí)鐘和串口的時(shí)鐘,因?yàn)楸敬卧O(shè)計(jì)分配給SIM800的串口為串口3,所以用于發(fā)送和接收數(shù)據(jù)的I/O口為PB10和PB11,指定I/O口后需要配置I/O口的速度,這里將這兩個(gè)I/O口配置為50MHz,然后需要配置I/O口的輸入輸出方式,PB10為STM32串口3的發(fā)送引腳,因此將PB10引腳配置為推挽輸出,接收引腳為PB11,該引腳配置為浮空輸入。接下來需要設(shè)置通信的協(xié)議,串口的波特率配置為115200,如果SIM800模塊配置的波特率范圍寬,則該模塊會自動(dòng)識別波特率和自動(dòng)匹配相同的波特率,傳輸數(shù)據(jù)很穩(wěn)定,幾乎沒有丟失或遺漏的情況,因此最常用115200,所以選用它。字長設(shè)置為八位數(shù)據(jù)格式,一個(gè)停止位,奇偶校驗(yàn)位沒有,也沒有硬件流控制,接收與發(fā)送模式被用在串口的設(shè)置。完成以上配置操作后使能串口3即可正常工作。SIM800模塊讀取與發(fā)送短信需要用到AT指令,讀取與發(fā)送短信的將用到下面一些指令:AT+CMGF/AT+CSCS/AT+CSMP/AT+CMGR/AT+CMGS/AT+CPMS等[6]。文本模式可使短信發(fā)送中文:AT+CMGF=1,電話號碼使用UNICODE編碼顯示。經(jīng)過轉(zhuǎn)換編碼的字符串到SIM800中,短信便成功發(fā)送。4.3OV7670攝像頭模塊程序?qū)τ贠V7670模塊,主要的重點(diǎn)是將圖像數(shù)據(jù)存儲起來。該過程為:首先等待OV7670模塊的同步信號,然后FIFO寫指針復(fù)位,接著FIFO寫使能,接著等待下一個(gè)同步信號,最后FIFO寫禁止[7]。程序設(shè)計(jì)的思想如下:首先配置一個(gè)外部中斷用來幀同步信號將的捕獲,然后啟動(dòng)OV7670的圖像數(shù)據(jù)存儲中斷程序,等到下一個(gè)幀同步信號來的時(shí)候,將數(shù)據(jù)存儲關(guān)閉,一幀數(shù)據(jù)也就完成了。然后經(jīng)過BMP圖像處理,將數(shù)據(jù)保存在SD卡中。4.4SD卡程序要實(shí)現(xiàn)驅(qū)動(dòng)SD卡最重要的步驟是初始化SD卡(這里介紹的是支持CMD8指令的SD卡),將SD卡初始化完成后,剩下的就是讀寫操作。首先需要執(zhí)行的是卡上電,即設(shè)置SDIO_POWER[1:0]=11,通電后對復(fù)位SD卡需要發(fā)送CMD0,然后發(fā)送CMD8命令,看SD卡是否支持該命令,如果SD卡支持該命令,則可以判斷SD卡是不是2.0版本或更高級的版本[8]。在發(fā)送CMD8時(shí),STM32主控芯片的供電電壓3.3V,可以通過設(shè)置VHS位告訴SD卡,根據(jù)參數(shù)該電壓范圍應(yīng)該發(fā)送0X1AA,此時(shí)SD卡會返回響應(yīng)給主機(jī)??–ID寄存器和卡RCA通過發(fā)送CMD2和CMD3命令用來換取。在得到相對地址RCA以后,再發(fā)送CMD9可以得到CSD寄存器里面的內(nèi)容,從而得到扇區(qū)大小以及SD卡的容量等信息。最后,CMD7命令完成SD卡的讀和寫操作。4.5TFT顯示程序程序TFT顯示屏能顯示16位的彩色圖片,設(shè)計(jì)使用TFT模塊實(shí)現(xiàn)觸摸鍵盤和中文顯示。該LCD的使用流程如下:首先硬復(fù)位,主要是將LCD_RST從低拉高既可完成操作,接著初始化序列,執(zhí)行上面兩步只需要一行,執(zhí)行完之后就可以設(shè)置坐標(biāo)來讀GRAM指令時(shí),即可以讀出顏色數(shù)據(jù),再交由單片機(jī)處理,通過寫GRAM指令時(shí)來寫入顏色數(shù)據(jù),再由LCD顯示該顏色。TFTLCD的設(shè)置步驟:第一步,初始化TFTLCD模塊連接的I/O口,將LCD的RST和主控芯片的RST連接起來,所以主控芯片和LCD會達(dá)成同步復(fù)位。然后進(jìn)行初始化序列,這部分直接移植就可以了。初始化完成無誤后,LCD即能正常顯示了。值得一提的是,如果串口1沒有被初始化的,就需要屏蔽printf函數(shù),如果不屏蔽,STM32就會陷入死循環(huán)。在TFTLCD模塊上顯示字符和數(shù)字,需要設(shè)置光標(biāo)位置,寫入GRAM指令,寫入畫筆顏色(不設(shè)置默認(rèn)藍(lán)色),把內(nèi)容寫進(jìn)去。該部分程序封裝在子函數(shù)里面,需要顯示調(diào)用LCD_ShowString函數(shù)即可以顯字符和數(shù)字,如果需要顯示一種字符就需要調(diào)用一次該函數(shù),如果顯示多種字符就要多次調(diào)用該函數(shù)。如果在同一個(gè)坐標(biāo)上多次使用該函數(shù)會把原來的內(nèi)容覆蓋,如果需要清空所有顯示的內(nèi)容則調(diào)用LCD_Clear清屏函數(shù)。4.6觸摸操作程序本設(shè)計(jì)中使用了電阻式觸摸屏,由于電容式觸摸屏價(jià)格高而采用了價(jià)格相對較低的電阻式觸摸屏。定位觸摸位置需要檢測電阻來,需要用AD轉(zhuǎn)換器來檢測電阻,該模塊的觸摸屏控制器使用XPT2046,XPT2046芯片是逐步逼近型的,共有4條通道,分辨率的精度達(dá)到12位的,有125kHZ轉(zhuǎn)換速率。電阻式觸摸屏的程序設(shè)計(jì)思路如下:首先執(zhí)行初始化操作,接著需要進(jìn)行觸摸校準(zhǔn),通過讀取屏幕坐標(biāo)值提高觸摸的準(zhǔn)確度,未執(zhí)行校準(zhǔn)的情況下默認(rèn)使觸摸屏無法使用。完成以上操作就可以正常觸摸了。在該設(shè)計(jì)中,需要設(shè)置操作刪除、返回、確定的鍵來實(shí)現(xiàn)數(shù)字0-9的輸入。首先設(shè)置好以上操作的各個(gè)區(qū)域,當(dāng)觸摸下某一區(qū)域時(shí),通過XPT2046進(jìn)行AD轉(zhuǎn)換得到觸摸的位置坐標(biāo),在使用switch語句判斷該坐標(biāo)是屬于哪一個(gè)區(qū)域,實(shí)現(xiàn)得到數(shù)字0-9的值需要執(zhí)行確定、刪除或返回操作。4.7BMP圖像處理程序BMP圖片格式是Windows操作系統(tǒng)的標(biāo)準(zhǔn)圖片格式,后綴名為“.bmp”,這個(gè)格式的圖片的格式是位映射存儲,無壓縮,所以就算圖片不失真但是占用很大的存儲空間。在攝像頭獲取到圖像信息后,需要?jiǎng)?chuàng)建BMP的位圖信息,然后將各個(gè)相關(guān)信息初始化,比如要設(shè)置BMP圖片的分辨率為LCD的分辨率,并設(shè)置像素位數(shù)為16位,接著創(chuàng)建文件,寫入位圖信息與數(shù)據(jù)。最后在顯示屏的GRAM中讀取每個(gè)像素點(diǎn)的顏色值,寫入BMP文件中。4.8SPI-Flash程序SPI-Flsh通過存放字庫,實(shí)現(xiàn)顯示中文和英文字符的作用。STM32的SPI2連接該模塊,開始要先使能SPI2的時(shí)鐘,然后將相關(guān)的I/O口設(shè)置為復(fù)用輸出,這里需要注意的是,如果復(fù)用輸出不設(shè)置的話,SPI2仍然默認(rèn)連接標(biāo)準(zhǔn)的輸入輸出口,在其他地方已經(jīng)使用了這些I/O,為了不沖突使用了復(fù)用功能。這里使用了STM32的PB13引腳、PB14引腳、PB15引腳,這三個(gè)引腳都設(shè)置為復(fù)用推挽輸出,I/O口速度為50MHz。接著設(shè)置SPI2工作在主機(jī)模式,這里選擇全雙工模式,數(shù)據(jù)格式為8位,設(shè)置時(shí)鐘極性SCK以及采樣方式,確定傳輸速度(140.625kHz)需要設(shè)置SPI的時(shí)鐘參數(shù)。設(shè)置數(shù)據(jù)傳輸順序?qū)SB位設(shè)置在前面,LSB位設(shè)置在后面,最后一步設(shè)置CRC檢驗(yàn),提高通信穩(wěn)定性。完成以上操作之后就使能SPI2,發(fā)送數(shù)據(jù)使用函數(shù)SPI_I2S_SendData,接收數(shù)據(jù)使用函數(shù)SPI_I2S_ReceiveData。4.9FATFS文件系統(tǒng)程序FATFS是完全免費(fèi)的開源文件系統(tǒng),特別適合嵌入式系統(tǒng)的設(shè)計(jì)。移植到各類單片機(jī)也是非常的方便,只需要做微小的修改即可使用。由于該文件系統(tǒng)十分龐大,這里只介紹幾個(gè)常用的函數(shù)。函數(shù)f_opendir(DIR*DirObject,constTCHAR*DirName)用來打開一個(gè)已經(jīng)存在的文件夾,*DirObject用來存儲打開的文件夾信息,*DirName用來指向文件夾名稱。函數(shù)f_readdir(DIR*DirObject,FILINFO*FileInfo)用來讀取文件夾內(nèi)的文件,*DirObject用來讀取文件夾信息,*FileInfo用來存儲讀到的文件信息。調(diào)用此函數(shù)可以讀取文件夾的所有文件。函數(shù)f_open(FIL*FileObject,constTCHAR*FileName,BYTEModeFlags)用來打開或者新建一個(gè)文件,*FileObject用來存儲文件對象[9],*FileName指向文件名的指針,ModeFlags設(shè)置打開方式。函數(shù)f_read(FIL*FileObject,Void*Buffer,UINTByteToRead,UINT*ByteRead)讀取文件內(nèi)容,*FileObject指向文件對象的指針,*Buffer數(shù)據(jù)的緩沖指針從指向存儲讀取到的,ByteToRead準(zhǔn)備讀取的字節(jié)數(shù),*ByteRead用來檢測文件的末尾。函數(shù)f_write(FIL*FileObject,constvoid*Buffer,UINTByteToWrite,UINT*ByteWritten)用來向文件中寫入數(shù)據(jù),前提是以寫文件的形式打開文件。*FileObject指向文件對象的指針,*Buffer指向存儲讀取到的數(shù)據(jù)的緩沖指針,ByteToWrite字節(jié)數(shù)寫入*ByteWritten記錄寫入字節(jié)數(shù)用來檢測是否寫完。第5章系統(tǒng)整體調(diào)試5.1FATFS文件系統(tǒng)程序5.1.1STM32系統(tǒng)板的調(diào)試STM32系統(tǒng)板集成了SPI-Flash模塊、OV7670攝像頭模塊、TFTLCD模塊、下載口和SD卡等接口的。所圖5-1所示。圖5-1STM32系統(tǒng)板在STM32的焊接上,使用了常見的堆焊技術(shù),最后完成所有焊接后,用萬用表測試電源線和地線,如果電路沒有短路,就接電并下載了一個(gè)流水燈程序,流水燈能夠閃爍,但是閃爍的時(shí)間間隔與程序的設(shè)置的時(shí)間不一致。檢查之后發(fā)現(xiàn),問題出在使用錯(cuò)了連接晶振的電容,將22pF的電容誤用成104的電容,所以改變晶振的起振頻率,將電容更換成22pF后,LED的閃爍時(shí)間間隔跟程序中設(shè)置的一致。至此,完成STM32系統(tǒng)板的調(diào)試。5.1.2SIM800A模塊電路調(diào)試該模塊的功能是完成短信的發(fā)送。該模塊根據(jù)正點(diǎn)原子的原理圖進(jìn)行設(shè)計(jì)并做了微小的修改,因?yàn)楸驹O(shè)計(jì)只需要發(fā)送短信,所以為了減少時(shí)間和出現(xiàn)錯(cuò)誤的幾率,不需要使用的部分沒有焊接,比如麥克風(fēng)接口和232串口。首先對電源和地進(jìn)行測試,測試了并沒有出現(xiàn)短路的情況,于是就可以通過CH340串口模塊與電腦USB連接來實(shí)現(xiàn)通信。將手機(jī)卡插進(jìn)取去后SIM800模塊就會開機(jī),但是每次開機(jī)后馬上就會自動(dòng)關(guān)閉,還沒來得及注冊網(wǎng)絡(luò),查找原因之后發(fā)現(xiàn)是電腦的USB只能提供5V/1A的輸出,所以USB的功率達(dá)不到模塊的要求,但是SIM800模塊要正常工作所需的功率為10W。于是增加了一個(gè)5V2A的電源給模塊,這時(shí)候模塊成功注冊到網(wǎng)絡(luò)。順利注冊網(wǎng)絡(luò)后串口調(diào)試助手發(fā)送AT+CSCS=”GSM”,來測試能否正常收發(fā)短信,這時(shí)候如果串口調(diào)試助手返回OK的字樣,就設(shè)置為文本格式,發(fā)送AT+CMGF=1。這時(shí)候需要輸入我的號碼作為收信人,發(fā)送AT+CMGS=設(shè)置收信人,然后輸入短信內(nèi)容“Helloworld”,最后點(diǎn)擊發(fā)送。等待接收“Helloworld”的短信,但是等待了幾分鐘都沒有收到,一開始以為是發(fā)送不成功是因?yàn)榫W(wǎng)絡(luò)繁忙,放松了幾次后還是這樣。于是開始尋找原因,閱讀AT指令文檔,終于發(fā)現(xiàn)錯(cuò)誤出現(xiàn)在最后一步,文檔中明確說明輸入完了短信內(nèi)容后需要以16進(jìn)制發(fā)送才能成功。只好再次重復(fù)以上步驟,只不過在最后一步上,把16進(jìn)制發(fā)送的選項(xiàng)打勾了,幾秒鐘手機(jī)果然收到了短信。自此,SIM800模塊完成調(diào)試。該模塊如圖5-2所示。圖5-2SIM800A模塊使用SIM800A模塊和另外一臺手機(jī)發(fā)送5條短信給手機(jī),從發(fā)送完成就馬上計(jì)時(shí),一直到接收成功。通過這個(gè)方法了解SIM800A模塊發(fā)送短信到手機(jī)和手機(jī)和手機(jī)之間發(fā)送短信是否存在時(shí)間上的差異,。模塊到手機(jī)以及手機(jī)到手機(jī)之間發(fā)送短信所需耗時(shí)如表5-1。表5-1發(fā)送短信速度對比表模式第一次第二次第三次模塊發(fā)到手機(jī)5s6s4s手機(jī)發(fā)到手機(jī)4s4s5s由上表可以看出,模塊從發(fā)送短信到手機(jī)接收短信耗時(shí)與手機(jī)發(fā)送短信到手機(jī)接收短信耗時(shí)基本一致,大概都是在5s,說明該模塊與手機(jī)短信功能基本無差異。5.1.3繼電器開關(guān)電路調(diào)試該系統(tǒng)有兩個(gè)小盒需要控制,用二路繼電器組成了開關(guān)控制電路,繼電器的開關(guān)電路如圖5-3所示。想要繼電器閉合來實(shí)現(xiàn)控制的電路并不難,只需要使用三極管8050將STM32的I/O口的信號放大即可。因?yàn)樵撾娐穼?shí)在是比較簡單,焊接好后直接上電,有信號來繼電器確實(shí)能夠閉合,該模塊實(shí)現(xiàn)了開關(guān)控制的功能,調(diào)試完成。圖5-3繼電器開關(guān)電路5.2程序調(diào)試本系統(tǒng)的程序相對于來說還是比較龐大的,涉及的部分有SIM800A模塊程序、隨機(jī)數(shù)產(chǎn)生程序OV7670模塊程序、SD卡程序、TFT液晶顯示程序、觸摸程序、FATFS程序、輸入鍵盤界面、定時(shí)器程序、短信的文本格式轉(zhuǎn)化程序、I/O口的控制程序。因本課題涉及的程序多,調(diào)試繁雜,不能一一在此進(jìn)行介紹,所以主要介紹幾個(gè)主要花了較多時(shí)間調(diào)試的程序。5.2.1OV7670攝像頭調(diào)試該模塊在單獨(dú)調(diào)試時(shí)能夠正常拍照并保存在SD卡之中,于是在添加到總的工程后編譯,但是并沒有通過,經(jīng)錯(cuò)誤提示并檢查后發(fā)現(xiàn)在OV7670模塊的程序的定義里出現(xiàn)了extern后還在它賦后面賦值,比如說externu8ov_sta=0;這語句在主函數(shù)中已經(jīng)定義過了這句話又定義了一次ov_sta,但是由于該變量在OV7670.c中再次使用到了,所以需要再一次定義,但是這次定義與上一次不同,定義之前必須加extern,使用extern有一個(gè)需要注意地方,變量之后不允許再賦值,正確的使用方法為:externu8ov_sta;修改了上面的錯(cuò)誤,再次編譯就沒有問題了,將程序下載到STM32芯片,模擬快遞被人取走后OV7670通過STM32控制進(jìn)行拍照,但是用電腦讀取SD卡中的照片的時(shí)候,照片上顯示的是TFT液晶屏截圖的內(nèi)容,拍攝的照片不是自己想要的。為什么會這樣呢?經(jīng)過一番思考和推理,發(fā)現(xiàn)原因出在了TFT液晶上,攝像頭工作的時(shí)候原本是實(shí)時(shí)將圖像信息顯示在TFT液晶上,但是由于操作和鍵盤輸入都需要鍵盤顯示,事先已經(jīng)將圖像信息屏蔽不顯示。攝像頭截取屏幕實(shí)時(shí)顯示的畫面,將得到了攝像頭圖像數(shù)據(jù)經(jīng)過圖像處理成為照片拍照的原理。為沒有刷新屏幕導(dǎo)致拍照的瞬間截取到的是狀態(tài)和輸入鍵盤,自然得不到攝像頭圖像照片。發(fā)現(xiàn)了這個(gè)問題后,在程序里修改了拍照的機(jī)制,在拍照的前一時(shí)刻將屏幕刷新顯示攝像頭的圖像信息,然后拍照完成恢復(fù)顯示輸入鍵盤,即可完成拍照。5.2.2隨機(jī)數(shù)的產(chǎn)生本系統(tǒng)需要產(chǎn)生隨機(jī)驗(yàn)證碼發(fā)送給收件人取件,而STM32F1系列的芯片并沒有產(chǎn)生隨機(jī)數(shù)的功能,只有一開始使用通過定時(shí)器計(jì)時(shí)產(chǎn)生一個(gè)數(shù)值后發(fā)送給收件人的方法讓程序產(chǎn)生,但是這樣會出現(xiàn)很多問題,產(chǎn)生的數(shù)值可能會很大也可能很小,導(dǎo)致的結(jié)果是驗(yàn)證碼的位數(shù)不確定,造成的后果就是驗(yàn)證碼位數(shù)太少可能會被人胡亂試出來。所以需要改變方案,最后使用了屏幕坐標(biāo)加快遞員輸入收件人號碼各個(gè)數(shù)字的間隔時(shí)間相加后乘以379,使得到的很大的數(shù)值,然后取該數(shù)值的萬、千、百、十和個(gè)位。這樣產(chǎn)生的數(shù)值獲取的驗(yàn)證碼不會重復(fù),因?yàn)槭褂昧耸晃皇謾C(jī)號碼輸入的間隔時(shí)間和,屏幕的橫縱坐標(biāo)。5.2.3輸入鍵盤的調(diào)試輸入鍵盤作為交互界面必須做得實(shí)用、可靠。這部分程序的設(shè)計(jì)任務(wù)是做劃分好區(qū)域,數(shù)字0-9的各個(gè)區(qū)域顯示和觸摸,如圖5-4所示。編寫程序,屏幕上顯示阿拉伯?dāng)?shù)字0-9和這些數(shù)字之間的分割線,完成這部分后仍然不能觸摸但是能顯示了。因?yàn)檫€沒有將各個(gè)數(shù)字分配在各個(gè)區(qū)域中,觸摸區(qū)域劃分好后,將各個(gè)區(qū)域賦值通過switch語句實(shí)現(xiàn),當(dāng)按下某一區(qū)域即可得到某一數(shù)字。圖5-4觸摸輸入鍵盤界面5.2.4中文字

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論