




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
福建師范大學應用科技學院學生論文論文題目:智能數字隨機鍵盤指導教師:*********學號:*************姓名:******年級:2021級專業:電子信息工程二0一二年二月二十一日智能數字隨機鍵盤的設計應用科技學院電子信息工程1206020210******指導教師***【摘要】針對傳統密碼鍵盤的平安性差的缺點,在傳統密碼鍵盤的根底上,設計了一種亂序密碼輸入鍵盤,增加了新的功能和特性,一方面在鍵盤數字按鍵上增加了數碼管來顯示0至9十個數字,且設計了隨機數產生軟件實現了隨機變位,另一方面在按鍵上面貼一層特殊的透光材料,使視線具有一定的視角限制,在一定角度之外的人不能看到鍵盤上的數字。即使他人看到用戶所按的鍵位,由于密碼輸入完畢后,鍵位又會重新打亂順序,因此用戶可以平安放心地在鍵盤前輸入密碼,不必擔憂別人通過拍攝或觀察人的手型等方法來獲取密碼,從而大大提高了密碼輸入的平安性,杜絕了金融領域相關的犯罪現象。【關鍵詞】密碼鍵盤;亂序;隨機數目錄1前言 41.1數字隨機鍵盤的來源 41.2數字隨機鍵盤的意義 41.3單片機概述 42數字隨機鍵盤總體設計說明 52.1總體開發方案 5根本功能 52.1.2擴展功能 52.2總體設計方案 52.2.1控制芯片的選擇 52.2.2鍵盤的選擇 62.2.3顯示模塊的選擇 62.2.4報警檢測模塊的選擇 63硬件設計說明 73.1硬件總體設計方案 7硬件功能模塊劃分 73.1.2硬件設計目標 73.2硬件單元設計 73.2.1主控電路 73.2.2顯示電路 83.2.3HC-SR04超聲波電路 93.2.4鍵盤電路 11報警電路 114軟件設計說明 124.1軟件設計總體方案 124.1.1軟件設計目標 124.1.2軟件功能模塊劃分 124.2軟件設計 134.2.1主函數的程序設計 134.2.2系統初始化的程序設計 144.2.3計算測量距離并在LCD1602上顯示的程序設計 144.2.4鍵盤掃描的程序設計 144.2.5鍵盤值隨機亂序的的程序設計 155系統調試 165.1硬件調試 165.1.1顯示電路調試 165.1.2鍵盤與報警電路調試 165.1.3HC-SR04超聲波測距電路調試 165.2軟件調試 165.3軟硬件聯合調試 196總結 22參考文獻 22源程序代碼 24附件 331前言1.1數字隨機鍵盤的來源作為銀行等金融場所必不可少的一種輸入設備,必須具備高度可靠、平安、保密的性能。現階段,大局部的金融系統中使用的是傳統的輸入鍵盤。這種鍵盤鍵的鍵盤值固定,保密性和平安性差,容易被犯罪分子通過遠距離拍攝或在一側觀察記住用戶的輸入鍵位位置,從而很容易就推算出用戶的賬戶密碼,給用戶造成極大的損失,也給金融系統留下了極大的平安隱患。為了彌補密碼鍵盤這方面的缺陷,故設計了一種新型平安的亂序鍵盤來取代傳統的定位密碼鍵盤。[1]1.2數字隨機鍵盤的意義ATM機取錢的最大的隱患就是密碼被不法分子記住,給我們的財產帶來平安隱患,不法分子記住密碼的方法往往不是看到提款人按下的數字,而是根據提款人按下的按鍵在鍵盤上的位置來獲取提款人的密碼。基于這種現象,我們提出了數字隨機鍵盤來保障廣闊用戶的財產平安。1.3單片機概述單片機是一種集成在電路芯片,是采用超大規模集成電路技術把具有數據處理能力的中央處理器CPU隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計時器等功能〔可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路〕集成到一塊硅片上構成的一個小而完善的計算機系統。[2]2數字隨機鍵盤總體設計說明2.1總體開發方案根本功能針對傳統密碼鍵盤的平安性差的缺點,在傳統密碼鍵盤的根底上,設計了一種亂序密碼輸入鍵盤,每次使用鍵盤輸入密碼時,0-9的鍵盤值,隨機對應鍵盤10個按鍵位置,以實現密碼保護功能。擴展功能當你輸入密碼時,如果背后1米內有人,系統做出相應的報警提示,以防密碼被不法分子偷窺,以此實現密碼的第二重保護功能。2.2總體設計方案控制芯片的選擇控制芯片采用AT8S52單片機。AT89S52是一個低電壓,高性能CMOS8位單片機,片內含8kbytes的可反復擦寫的Flash只讀程序存儲器和256bytes的隨機存取數據存儲器〔RAM〕,器件采用ATMEL公司的高密度、非易失性存儲技術生產,兼容標準MCS-51指令系統,片內置通用8位中央處理器和Flash存儲單元,AT89S52單片機在電子行業中有著廣泛的應用。[3]AT89S52為8位通用微處理器,采用工業標準的C51內核,在內部功能及管腳排布上與通用的8xc52相同,其主要用于會聚調整時的功能控制。功能包括對會聚主IC內部存放器、數據RAM及外部接口等功能部件的初始化,會聚調整控制,會聚測試圖控制,紅外遙控信號IR的接收解碼及與主板CPU通信等。主要管腳有:XTAL1〔19腳〕和XTAL2〔18腳〕為振蕩器輸入輸出端口,外部可接0~33MHz的晶振。RST/Vpd〔9腳〕為復位輸入端口,外接電阻電容組成的復位電路。VCC〔40腳〕和VSS〔20腳〕為供電端口,分別接+5V電源的正負端。P0~P3是AT89S52單片機與外界聯系的4個8位雙向并行I/O端口。P0口為一個8位漏級開路雙向I/O口,能夠用于外部程序數據存儲器,它可以被定義為數據/地址的低8位。P1口是一個準雙向并行口,主要作用為通用I/O口。P2口石一個準雙向的8位并行端口,既可以作為通用I/O口使用,也可以作為高8位地址線使用。P3口是一個多功能的準雙向8位并行口,它的每一位既可以作為通用I/O口使用,又都具有第二輸出功能。如圖2-2-1所示。圖2-2-1AT89S52管腳圖鍵盤的選擇方案一:獨立式鍵盤獨立式按鍵電路配置靈活,硬件結構簡單,但每個按鍵必須占用一根I/O口線。在按鍵數量較多時,I/O口的率用來不高,但程序的編寫簡單。適用于所需按鍵較少的場合,方案二:矩陣式鍵盤電路連接復雜,每條水平線和垂直線在交叉處不直接連通,而是通過一個按鍵加以連接。但是提高了I/O口的利用率,適用于所需要按鍵較多得場合。因為本系統的設計需要12個按鍵,為了減少I/O口的使用,故采用方案二。顯示模塊的選擇方案一:數碼管顯示七段LED數碼管內部由7個條形發關二極管和一個圓形發光二極管組成的“字段〞,可用于顯示數字0~9和局部簡單字符。方案二:液晶顯示液晶顯示器LCD〔LiquidCrystalDisplay〕是一種低功耗的顯示器,它是一種專門用于顯示字母、數字、符號等點陣式LCD。其有顯示質量高、數字接口、功耗低、體積小等優點。因為數碼管只能顯示數字和簡單的字母,LCD可以顯示字符,圖形等,并能更形象的表達出字符與圖像。故本系統采用方案二。報警檢測模塊的選擇方案一:紅外檢測紅外線是不可見光,是電磁波的一種形式,紅外發光源發射紅外脈沖光波,同時啟動計數器開始計數,紅外光遇到待測目標物體產生回波,并由接收系統接收,從發射到接收的時間為T,在空氣中得傳播的速度為V,就可以算出距離D=VT/2。但是它所能檢測到障礙物的距離較短。方案二:超聲波檢測超聲波測距是借助于超聲脈沖回波渡越時間法來實現的。設超聲波脈沖由傳感器發出到接收所經歷的時間為t,超聲波在空氣中的傳播速度為c,那么從傳感器到目標物體的距離D可用公式D=ct/2求出。超聲波測距和紅外測距相比,所測到的距離會更精確,所能檢測到的距離也相對較長。因為本系統的設計所要檢測的是當在ATM機前輸入密碼時,如果1米內后有人,系統做出相應的報警,由于紅外能檢測到的距離較短,所以采用方案二。3硬件設計說明3.1硬件總體設計方案硬件功能模塊劃分AAT89S52顯示模塊鍵盤模塊超聲波測距模塊報警模塊圖3-1-1硬件模塊圖〔1〕AT89S52:實現對整個系統的控制。〔2〕超聲波測距模塊:檢測在ATM機前輸入密碼時,距離ATM機后1米以內處是否有人,以防密碼被不法分子偷窺。〔3〕鍵盤模塊:用作密碼的輸入和密碼的重新輸入,以及每次輸入密碼前1~10十個按鍵值得隨機產生。〔4〕顯示模塊:顯示出超聲波測距所測到的距離和所輸入的密碼,以及隨機產生按鍵值所對應按鍵的位置。〔5〕報警模塊:當超聲波測距米快所測到的距離小于等于1米時,蜂鳴器發出“滴、滴〞聲,以及LED燈閃爍,以此作為報警的提示身后1米以內有人,謹防密碼被偷窺。硬件設計目標〔1〕本系統采用AT89S52單片機作為控制核心,P0端口與矩陣式的行和列相接,第1個按鍵到第10個按鍵的鍵盤值是數字0~9隨機抽取的,第11個按鍵的功能是密碼重新輸入,第12個按鍵的功能是每次輸入密碼前按鍵值的隨機產生。〔2〕單片機P2.3接的是HC-SR04超聲波測距模塊的回響信號輸出端ECHO,P2.4接的是HC-SR04超聲波測距模塊的觸發控制信號的輸入端。蜂鳴器經過三極管9012的驅動后接到單片機的P3.7,發光二極管經過限流電子接到P2.5上,當超聲波測到的距離小于等于1米時,利用單片機的控制使蜂蜜器報警,LED閃爍。〔3〕LCD1602的8位數據線DB0~DB7接到單片的P0口,數據和指令選擇控制端RS接到單片機的P2.0,讀寫控制端R/W接到單片的P2.1,數據讀寫操作控制位E接到單片的P2.2。利用單片機的控制,將超聲波HC-SR04所測到的距離,鍵盤隨機值得位置以及輸入的密碼顯示在LCD1602的界面上。3.2硬件單元設計主控電路主控電路是以AT89S52單片機為核心,包括復位電路、晶振電路、以及電源的指示燈電路,這4局部構成單片機的最小系統,作為整個設計的控制核心,實現對整個系統進行控制。主要控制電路如圖3-2-1所示。圖3-2-1主控電路顯示電路LCD1602可以顯示2行的數字和字符,每行16個,利用單片機的控制,講超聲波測距模塊HC-SR04所測到的距離顯示在LCD1602第一行的前0~4五個位置上〔例如〕。LCD1602第一行的第6~15十個位置顯示的是K1~K10十個按鍵所對應的當前按鍵值〔例如2853906471〕。第二行的0~5六個位置顯示的是SRAJZ:〔表示的是“輸入按鍵值〞〕,第6~15十個位置顯示的是當前所輸入的密碼,沒有密碼輸入時默認顯示**********。LCD1602顯示電路如圖3-2-2所示。圖3-2-2LCD1602顯示電路3.2.3HC-SR04超聲波電路〔1〕超聲波測距原理及系統組成超聲波測距是借助于超聲脈沖回波渡越時間法來實現的。設超聲波脈沖由傳感器發出到接收所經歷的時間為t,超聲波在空氣中的傳播速度為c,那么從傳感器到目標物體的距離D可用公司D=ct/2算出。系統組成框圖如圖3-2-3所示圖3-2-3根本原理:經發射器發射出長約6mm,頻率為40KHZ的超聲波信號。此信號被物體反射回來接收頭接收,接收頭實質上是一種壓電效應的換能器。它接收到信號后產生mV級的微弱電壓信號。〔2〕HC-SR04超聲波測距模塊的特點HC-SR04測距模塊可提供2cm~400cm的非接觸式距離感測功能,測距精度可高達3mm。模塊包括超聲波發生器、接收器與控制電路。〔3〕HC-SR04超聲波測距模塊根本工作原理采用I/O口TRIG觸發測距,給最少10us的高電平信號。模塊自動發送8個40kHz的方波,自動檢測是否有信號返回,假設有信號返回,通過I/O口ECHO輸出一個高電平,高電平持續的時間就是超聲波從發射到返回接收的時間。測試距離=〔高電平時間*聲速〔340M/S〕〕/2。HC-SR04超聲波測距的原理圖如圖3-2-4所示。〔4〕HC-SR04超聲波測距模塊的電氣參數表3-2-1電氣參數電氣參數HC-SR超聲波模塊工作電壓DC5V工作電流15mA工作頻率40kHz最遠射程4m最近射程2cm測量角度15度輸入觸發信號10us的TTL脈沖輸出回響信號輸出TTL電平信號,與射程成比例圖3-2-4HC-SR04超聲波測距原理圖鍵盤電路本設計需要12個按鍵,但為了方便以后的擴展采用了4x4矩陣鍵盤〔電路圖如圖3-2-5所示〕。矩陣鍵盤的行分別與單片機的P0.0~P0.4端口相接,列分別與單片機的P1.4~P1.7端口相接。K1~K10的按鍵的功能是密碼的輸入,但所對應的按鍵值不是0~9,而是隨機產生的,K11的功能是密碼的重新輸入,K12的功能是產生K1~K10的隨機按鍵值,K13~K16本設計暫無用到,作為備用按鍵。圖3-2-5鍵盤電路報警電路將蜂蜜器經過三極管9012放大,與單片機的P3.7端口相接,以及將發光二極管經過4.7K的限流電阻后與單片機的P2.5相連,由這兩局部組成報警電路〔電路圖如圖3-2-6所示〕。當HC-SR04測距電路所測到的距離小于等于1米時,蜂蜜器會發出“滴、滴〞的聲音,以及發光二極管“亮、滅〞閃爍。圖3-2-6報警電路4軟件設計說明4.1軟件設計總體方案軟件設計目標編寫的程序能夠必須能夠實現根本功能的密碼輸入和能使每次輸入密碼時按RANDOM按鍵就能使K1~K10的按鍵值亂序,而不是傳統每個按鍵都是固定值,以及能讓HC-SR04超聲波測距模塊能夠準確的測距并在LCD1602上顯示所有的信息。在程序編寫時必須做到:〔1〕結構合理程序應該采用結構模塊化設計。這不僅有利于程序的進一步擴充,而且也有利于程序的修改和維護。在程序編程時,要盡量使得程序的層次清楚。易于閱讀和理解,同時還可以簡化程序減小程序對于內存的使用量,當程序中有經常需要加以修改或變化的參數時,應該設計成獨立的參數傳遞群序,防止程序的頻繁修改。〔2〕操作性能好操作性能好是指使用方便。這點是、對數據采集系統來說是很重要的。在開發程序時,應該考慮如何降低對操作人員專業知識的要求。〔3〕系統應設計一定的檢測程序例如狀態檢測利于診斷程序,以便系統發生故障時容易確定故障部位,對于重要的參數要定時存儲,以防止因掉電而喪失數據。〔4〕提高程序的執行速度軟件功能模塊劃分表4-1-1程序模塊劃分函數名函數功能參數Delay1MS1ms延時tDelay400Ms400ms延時無Beep蜂蜜器報警無Random_Num產生隨機數無Keys_Scan鍵盤掃描無LCD_Busy_CheckLCD忙檢查無Write_LCD_Data向LCD寫數據datWrite_LCD_Command向LCD寫命令cmdSet_LCD_POS設定LCD的顯示位置 pDisplay_LCD_OneCha按指定位置顯示一個字符 XYDDataDisplay_LCD_String在LCD上顯示字符串psInit_LCDLCD初始化無Conuts測量出距離并在LCD顯示無StartModule啟動HC_SR04超聲波測距模塊無Osinit系統的初始化無main主函數無4.2軟件設計主函數的程序設計首先,調用系統初始化函數Osinit,其次,對所獲得的按鍵值進行處理,調用啟動HC_SR04超聲波測距模塊的函數StartModule,當HC-SR04的ECHO為0開啟定時器1,當HC-SR04的ECHO為1時關閉定時間1,調用測量出距離并在LCD顯示函數Conuts,最后,當超聲波測距所測得距離小于等于1米時,調用蜂鳴器報警函數Beep,并且讓LED二極管閃爍。主函數流程圖如圖4-2-1所示。圖4-2-1主函數流程圖系統初始化的程序設計首先,調用LCD初始化函數Init_LCD。其次,設置定時器0、定時器1的工作方式,給定時器TL0、TH0賦處置,開器定時器0、定時器1并且允許T0、T1中斷。最后,設置K1~K10十個按鍵的隨機按鍵值初次使用時為0123456789,并且顯示在LCD1602的相應位置。系統初始化的流程圖如圖4-2-2所示。圖4-2-2系統初始化流程圖計算測量距離并在LCD1602上顯示的程序設計首先,利用定時器1計算出超聲波從發射到接收地時間time。其次,利用公式S=(time*1.7)/100算出測量距離。最后,講所測得的距離顯示在LCD1602的相應位置上,假設所要測量的距離超出HC-SR04超聲波測距模塊所能測的距離,那么默認顯示為。流程圖如圖4-2-3所示。圖4-2-3計算測量距離并在LCD1602上顯示流程圖鍵盤掃描的程序設計首先,設置行線和列線分別為4,。其次,開始鍵盤是掃描,判斷有無按鍵按下,如果有按鍵按下就延時15ms后,再次判斷有無按鍵按下,如果還是有鍵按下就計算出相應的按鍵值,如果沒鍵按下就返回繼續鍵盤掃描。最后,將計算出的鍵值返回。鍵盤掃描的流程圖如圖4-2-4所示。圖4-2-4鍵盤掃描流程圖鍵盤值隨機亂序的的程序設計亂序鍵盤設計的核心內容就是如何實現鍵盤上數字的隨機變位,以實現平安、保密的性能,其關鍵是如何實現隨機數字的產生。鍵位必須是隨機的,即任何人無法判斷鍵位的狀態,包括程序設計者,這樣才能保證徹底的平安。本設計將定時器運行在工作方式2,使其自動裝入數據,循環計數,而不會產生中斷。定時器1用于波特率的產生及在此隨機數產生時所取的時間數值,將其變換后作為我們所需的隨機數據,送往顯示。在要求變位時,調用隨機數的產生模塊,讀取定時器TL1的值,此時定時器的值必定是隨機的,然后對取出的數值進行處理,如先將二進制數轉換為十進制數,再取出個位數值,那么轉換為0至9的數字,與鍵盤顯示緩沖區內的數據進行比擬,如果不存在此數,那么將其存入,如果已經存在,那么放棄,重復調用隨機數的產生模塊,再次進行處理,直至產生0到9共10個不同的隨機數字。[4]5系統調試5.1硬件調試顯示電路調試編寫一個簡單的程序,在LCD1602的指定位置顯示一個字符,將程序下載到單片機的最小系統,LCD1602能正常顯示字符,并且調節與LCD1602相連的可調電阻,能使LCD1602的顯示亮度發生變化,說明LCD1602顯示電路與單片機最小系統的電路可用。鍵盤與報警電路調試分別編寫簡單的鍵盤每個按鍵按下時控制蜂鳴器響和LED發光二極管亮的小程序,講程序下載到單片機最小系統,可觀察到每次按下一個按鍵時能夠使蜂鳴器響和LED發光二極管亮的效果,說明鍵盤與報警電路能夠正常工作。HC-SR04超聲波測距電路調試將編寫好的測距離的程序下載到單片機最小系統上,能在LCD1602的相應的位置上顯示出里障礙物的距離,且距離會隨著障礙物的變化而變化。說明HC-SR04超聲波測距電路能夠正常的工作,且測試距離的精度較高。5.2軟件調試首先,在protues里畫好智能數字隨機鍵盤的根本功能電路〔如圖5-2-1所示〕。其次,將編寫好的程序用KeiluVision3軟件進行編譯,生成.hex文件。最后,將生成的.hex文件加載到單片機上,點開始按鈕,可觀察到如圖5-2-2、5-2-3、5-2-4的仿真效果。圖5-2-1根本功能電路〔1〕開機畫面:每次開機時,LCD1602的第一行顯示RandomKeyboard,第二行顯示DesignByBoB,如圖5-2.2所示。圖5-2-2開機畫面〔2〕首次輸入密碼前畫面:開機2秒后顯示后,畫面切換到首次輸入密碼前的畫面,DQANZ:0123456789表示按鍵值從按鍵0到按鍵9的當前按鍵值分別是0123456789,如圖5-2-3所示。圖5-2-3首次輸入密碼前的畫面〔3〕首次輸入密碼畫面:首次輸入密碼時,按鍵0~9的默認按鍵值為0123456789,如圖5-2-4所示。圖5-2-4首次輸入密碼畫面〔4〕隨機產生按鍵值畫面并輸入密碼畫面:每次輸入密碼前如果按RANDOM按鍵,就可以使鍵盤值亂序,如圖5-2-5所示。LCD1602上方紅色的0123456789只是為了讓用戶更準確的知道所要的按鍵值在哪個按鍵上,比方數字0在按鍵3上,數字9在按鍵7上。圖5-2-5隨機產生按鍵值畫面并輸入密碼畫面〔5〕重新輸入密碼畫面:如果用戶需要重新輸入密碼,按DELETE鍵即可,假設輸入的密碼為829475〔829475所在的按鍵分別是547826〕,如圖5-2-6所示。圖5-2-6重新輸入密碼畫面5.3軟硬件聯合調試首先,將硬件電路板接上DC+5V的電源。其次,將程序下載到單片機上,就可以看到本設計最終的產品效果如圖5-3-1、5-3-2、5-3-3、5-3-4、5-3-5所示。〔1〕開機畫面圖5-3-1開機畫面〔2〕首次輸入密碼前畫面由于測試到的距離為,小于1米,所以報警電路報警提示——蜂鳴器響、LED發光二極管閃爍。圖5-3-2首次輸入密碼前畫面〔3〕首次輸入密碼畫面圖5-3-3首次輸入密碼畫面〔4〕隨機產生按鍵值畫面并輸入密碼畫面圖5-3-4隨機產生按鍵值畫面并輸入密碼畫面〔5〕重新輸入密碼畫面圖5-3-5重新輸入密碼畫面6總結本設計包括單片機最小系統電路、HC-SR04超聲波測距電路、鍵盤電路、LCD1602顯示電路以及蜂鳴器電路和LED發光二極管電路。經過單片機的處理,讓每次按鍵所對應的按鍵值都是隨機抽取的,每個按鍵的當前按鍵值顯示在LCD1602的第一行上,LCD1602第二行顯示的是當前的輸入的密碼。報警功能電路由HC-SR04超聲波測距電路、蜂鳴器和LED發光二極管電路構成,當超聲波測距電路所測到的距離小于等于1米時,經過單片機的處理讓蜂鳴器響、LED閃爍。這樣就實現了用戶密碼保護的雙重功能,大大提高了使用ATM存、取款的平安性。智能數字隨機鍵盤不僅可以應用于ATM機的鍵盤輸入和密碼防盜,還可以廣泛應用于其他各種需要應用鍵盤輸入密碼的設備,如儲物貨倉、保險柜、機關防盜門等。此產品將以其設計巧妙,靈活多變,本錢低廉,操作簡單,便捷實用,保密平安等優點,擁有廣闊的市場前景和開展空間。創新點:闡述了智能數字隨機鍵盤的概率及其對于普通銀行密碼輸入鍵盤的改良;提出了智能數字隨機鍵盤設計的兩個要點,既加裝了密碼防偷窺和對于隨機數產生方法的重要性描述;進行了亂序鍵盤的單片機控制系統硬件設計,對亂序鍵盤的隨機數產生進行了軟件仿真。參考文獻[1][J].山東建筑工程學院報,2001,3〔15〕:352-354.[2]何立民.MCS-51 系列單片機應用系統設計.北京航空天大學出版社,1995.[3]王俊紅.基于AT89C52單片機的變量噴霧控制器設計[J]微計算機信息,2006,2:8-10.[4]陳明熒.8051單片機課程設計實訓教材.北京清華大學出版社,2003.TheDesignOfIntelligenceRandomKeyboardTheCollegeOfAppliedScinence&ThechnologyElectrionandInformationEngineeing1206020210**********Tutor*****【Abstract】Asakindofinputdevicethatisessentialtothebankandotherfinancialdepartments,itmusthavehighcredibility,safety,andthefunctionofkeepingsecret.Disorderkeyboardisadevelopedkindonthebasisofthetraditionalpasswordkeyboard,whichincreasedsomenewfunctionsandcharacteristics,forexample,thereisLEDonthesurfaceofthekeys,andthenumbersdisplayedonthekeysarerandom,alsoacertainangleofviewisrestricted.Outsideofacertainangle,thenumberLEDdisplayedonthekeyboardisimpossibletobeseen.Evenotherpeoplecanseethekeysthatthecustomerpressed,butbecausewhenthecustomerfinishedinputtingthepassword,thekeynumberswillbere-arrangedagain,so,thecustomerunnecessarilyworriedaboutthatotherpeoplewouldtakehispassword.【Keyword】passwordkeyboard;isorder;randomnumber源程序代碼/****************************************************************************項目:智能數字隨機鍵盤 ****設計人:涂龍波 ****目標器件:AT89S52 ****晶振:12MHz ****編譯環境:KeiluVision3 ****************************************************************************/#include<reg52.h> #include<intrins.h>#include<stdlib.h> #defineucharunsignedchar#defineuintunsignedint#defineulongunsignedlong#defineKey_InputP1sbitRX=P2^3;sbitTX=P2^4;sbitRS=P2^0; /*0:指令存放器1:數據存放器*/sbitRW=P2^1; /*0:寫選擇1:讀選擇*/sbitEN=P2^2; /*下降沿時LCD執行命令*/sbitBEEP=P3^7;sbitLED=P2^5; uchara[10]={0,1,2,3,4,5,6,7,8,9};/*存隨機數*/ucharcodedis1[]={"RandomKeyboard"};ucharcodedis2[]={"DesignByBoB"};ucharcodedis3[]={""};ucharcodedis4[]={"SRAJZ:**********"};ucharcodedis5[]={"0123456789"}; /*隨機數顯示*/ucharcodeASCII[15]={'0','1','2','3','4','5','6','7','8','9','.','-','M'};uchardisbuff[4]={0,0,0,0,};uinttime=0;ulongS=0;staticucharDisNum=0;/*顯示用指針*/ /****************************************************************************函數功能:延時函數 ****入口參數:t,x,ms ****出口參數: ****************************************************************************/voidDelay1MS(uintt){ uinti,j; while(t--) for(i=0;i<75;i++); for(j=0;j<28;j++); }voidDelay(uintx){ uinti; while(x--)for(i=0;i<120;i++);}voiddelayms(uintms){ uchari=100,j; for(;ms;ms--) { while(--i) { j=10; while(--j); } }}/****************************************************************************函數功能:蜂鳴器報警 ****入口參數: ****出口參數: ****************************************************************************/voidBeep(){ chari; for(i=0;i<100;i++) { BEEP=~BEEP; Delay(1); } BEEP=1;}/****************************************************************************函數功能:產生隨機數 ****入口參數: ****出口參數: ****************************************************************************/voidRandom_Num(){ inti,j,k,m,b[10]={0,1,2,3,4,5,6,7,8,9}; for(i=0;i<10;i++) { k=TL0;/*取定時器的值*/ m=k%(10-i);/*在0~9的表中選一個數后,將后面的向前移,在9個數中隨機選1個,依次循環*/ a[i]=b[m]; for(j=m;j<10;j++) b[j]=b[j+1]; }}/****************************************************************************函數功能:鍵盤掃描 ****入口參數: ****出口參數:n ****************************************************************************/intKeys_Scan(){ inti,j,temp,n=16; for(i=0;i<4;i++) for(j=0;j<4;j++) { Key_Input=~(0x01<<i); temp=Key_Input; if(((temp>>(4+j))&0x01)==0) { Delay(5); if(((temp>>(4+j))&0x01)==0) n=i*4+j; } } return(n);/*返回鍵值*/}/***************************************************************************函數功能:LCD忙檢查 ****入口參數: ****出口參數:LCD_Status ***************************************************************************/ucharLCD_Busy_Check(){ ucharLCD_Status; RS=0; RW=1; EN=1; Delay(1); LCD_Status=P0; EN=0; returnLCD_Status;}/***************************************************************************函數功能:向LCD寫數據 ****入口參數:dat ****出口參數: ***************************************************************************/voidWrite_LCD_Data(uchardat){ LCD_Busy_Check(); RS=1; RW=0; EN=0; P0=dat; EN=1; Delay(1); EN=0; }/****************************************************************************函數功能:向LCD寫命令 ****入口參數:cmd ****出口參數: ****************************************************************************/voidWrite_LCD_Command(ucharcmd){ LCD_Busy_Check(); RS=0; RW=0; EN=0; P0=cmd; EN=1; Delay(1); EN=0; }/****************************************************************************函數功能:設定LCD的顯示位置 ****入口參數:P ****出口參數: ****************************************************************************/voidSet_LCD_POS(ucharp){ Write_LCD_Command(0x80|p); }/****************************************************************************函數功能:按指定位置顯示一個字符 ****入口參數:X,Y,DData ****出口參數: ****************************************************************************/voidDisplay_LCD_OneChar(ucharX,ucharY,ucharDData){ Y&=0x1; X&=0xF;/*限制X不能大于15,Y不能大于1*/ if(Y)X|=0x40;/*當要顯示第二行時地址碼+0x40;*/ X|=0x80; /*算出指令碼*/ Write_LCD_Command(X);/*發命令字*/ Write_LCD_Data(DData);/*發數據*/}/****************************************************************************函數功能:在LCD上顯示字符串 ****入口參數:p,s ****出口參數: ****************************************************************************/voidDisplay_LCD_String(ucharp,uchar*s){ uchari; Set_LCD_POS(p); for(i=0;i<16;i++) { Write_LCD_Data(s[i]); Delay(1); }}/***************************************************************************函數功能:LCD初始化 ****入口參數: ****出口參數: ***************************************************************************/voidInit_LCD(){ /*開機畫面初始化*/ Write_LCD_Command(0x38);/*設置液晶工作模式,16*2行顯示,5*7點陣,8位數據*/ Delay(1); Write_LCD_Command(0x01);/*清屏*/ Delay(1); Write_LCD_Command(0x06);/*整屏不移動,光標自動右移*/ Delay(1); Write_LCD_Command(0x0c);/*開顯示不顯示光標*/ Delay(1); Display_LCD_String(0x00,dis1); Display_LCD_String(0x40,dis2); Delay1MS(2000); Write_LCD_Command(0x38); Delay(1); Write_LCD_Command(0x01); Delay(1); Write_LCD_Command(0x06); Delay(1); Write_LCD_Command(0x0c); Delay(1); Display_LCD_String(0x00,dis3); Display_LCD_String(0x40,dis4);}/***************************************************************************函數功能:測量出距離并在LCD顯示 ****入口參數: ****出口參數: ***************************************************************************/voidConuts(void){ time=TH1*256+TL1;/*定時器1是用來計算時間*/ TH1=0; TL1=0; S=(time*1.7)/100;/*算出來是厘米*/ if((S>=400))/*超出測量范圍顯示“默認顯示〞*/ { Display_LCD_OneChar(0,0,ASCII[4]); Display_LCD_OneChar(1,0,ASCII[10]); /*顯示點*/ Display_LCD_OneChar(2,0,ASCII[0]); Display_LCD_OneChar(3,0,ASCII[0]); Display_LCD_OneChar(4,0,ASCII[12]); /*顯示M*/ Display_LCD_OneChar(5,0,ASCII[11]); /*顯示-*/ } else /*顯示距離*/ { disbuff[0]=S%1000/100; disbuff[1]=S%1000%100/10; disbuff[2]=S%1000%10%10; Display_LCD_OneChar(0,0,ASCII[disbuff[0]]); Display_LCD_OneChar(1,0,ASCII[10]); /*顯示點*/ Display_LCD_OneChar(2,0,ASCII[disbuff[1]]); Display_LCD_OneChar(3,0,ASCII[disbuff[2]]); Display_LCD_OneChar(4,0,ASCII[12]); /*顯示M */ Display_LCD_OneChar(5,0,ASCII[11]); /*顯示-*/ }}/***************************************************************************函數功能:啟動HC_SR04超聲波測距模塊 ****入口參數: ****出口參數: ***************************************************************************/voidStartModule() { TX=1; /*啟動一次模塊*/ _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0;} /****************************************************************************函數功能:系統初始化 ****入口參數: ****出口參數: ****************************************************************************/voidOsinit(){ uchari; Init_LCD();/*調用液晶屏初始化子函數*/ TMOD=0x12; /*定時器0,8位自動重載*/TH0=0x00; /*載入初值*/TL0=0x00;EA=1; /*開總中斷*/ET0=1; /*允許T0中斷*/TR0=1; /*啟動定時器T0*/TH1=0;TL1=0; ET1=1;/*允許T0中斷*/BEEP=0;/*蜂鳴器長響一次*/Delay(100);BEEP=1; Write_LCD_Command(0x80+0x06); for(i=0;i<10;i++) { Write_LCD_Data(dis5[a[i]]); /*初次使用默認0123456789*/ }}/****************************************************************************函數功能:主函數 ****入口參數: ****出口參數: ****************************************************************************/voidmain(){ inti,Count=0; /*輸入數字位數Count=0;*/ intKey_Num; /*掃描得到的鍵號*/ intKey_Temp; /*鍵號暫存*/ Osinit(); while(1) { Key_Temp=Keys_Scan(); Key_Num=Key_Temp; if(Key_Num==10) /*重新輸入*/ { Beep(); Count=0; Display_LCD_String(0x40,dis4); } if(Key_Num==11) /*變換當前按鍵值*/ { Beep(); Random_Num(); Write_LCD_Command(0x80+0x06);/*動態顯示出鍵盤對應的數*/ for(i=0;i<10;i++) { Write_LCD_Data(dis5[a[i]]); } } if((Key_Num>=0)&&(Key_Num<10)) /*數字鍵處理分支*/ { Beep(); if(Count<10) /*可以輸入10位密碼*/ { Write_LCD_Command(0xc0+0x06+Count); Write_LCD_Data(dis5[a[Key_Num]]);/*顯示密碼*/ Count++; if(Count==10) Beep(); } } StartModule(); while(!RX); /*當RX為零時等待*/ TR1=1; /*開啟計數*/ while(RX); /*當RX為1計數并等待*/ TR1=0; /*關閉計數*/Conuts(); /*計算*/ delayms(60); /*60MS*/ if(S>=0&&S<=100) { Beep(); LED=~LED; } if(S>=100) { BEEP=1; LED=1; } }}/*************************************TheFileEnd************************************/附件〔1〕HC-SR04超聲波測距原理圖〔2〕智能數字隨機鍵盤原理圖原文已完。下文為附加文檔,如不需要,下載后可以編輯刪除,謝謝!施工組織設計本施工組織設計是本著“一流的質量、一流的工期、科學管理〞來進行編制的。編制時,我公司技術開展部、質檢科以及工程部經過精心研究、合理組織、充分利用先進工藝,特制定本施工組織設計。工程概況:西夏建材城生活區27#、30#住宅樓位于銀川市新市區,橡膠廠對面。本工程由寧夏燕寶房地產開發開發,銀川市規劃建筑設計院設計。本工程耐火等級二級,屋面防水等級三級,地震防烈度為8度,設計使用年限50年。本工程建筑面積:27#m2;30#m2。室內地坪±m為準,總長27#m;30#m。總寬27#m;30#m。設計室外地坪至檐口高度18.600m,呈長方形布置,東西向,三個單元。本工程設計屋面為坡屋面防水采用防水涂料。外墻水泥砂漿抹面,外刷淺灰色墻漆。內墻面除衛生間200×300瓷磚,高到頂外,其余均水泥砂槳罩面,刮二遍膩子;樓梯間內墻采用50厚膠粉聚苯顆粒保溫。地面除衛生間200×200防滑地磚,樓梯間50厚細石砼1:1水泥砂漿壓光外,其余均采用50厚豆石砼毛地面。樓梯間單元門采用樓宇對講門,臥室門、衛生間門采用木門,進戶門采用保溫防盜門。本工程窗均采用塑鋼單框雙玻窗,開啟窗均加紗扇。本工程設計為節能型住宅,外墻均貼保溫板。本工程設計為磚混結構,共六層。根底采用C30鋼筋砼條形根底,上砌MU30毛石根底,砂漿采用M10水泥砂漿。一、二、三、四層墻體采用M10混合砂漿砌筑MU15多孔磚;五層以上采用M混合砂漿砌筑MU15多孔磚。本工程結構中使用主要材料:鋼材:=1\*ROMANI級鋼,=2\*ROMANII級鋼;砼:根底墊層C10,根底底板、地圈梁、根底構造柱均采用C30,其余均C20。本工程設計給水管采用PPR塑料管,熱熔連接;排水管采用UPVC硬聚氯乙烯管,粘接;給水管道安裝除立管及安裝IC卡水表的管段明設計外,其余均暗設。本工程設計采暖為鋼制高頻焊翅片管散熱器。本工程設計照明電源采用BV-銅芯線,插座電源等采用BV-4銅芯線;除客廳為吸頂燈外,其余均采用座燈。施工部署及進度方案1、工期安排本工程合同方案開工日期:2004年8月21日,竣工日期:2005年7月10日,合同工期315天。方案2004年9月15日前完成根底工程,2004年12月30日完成主體結構工程,2005年6月20日完成裝修工種,安裝工程穿插進行,于2005年7月1日前完成。具體進度方案詳見附圖-1〔施工進度方案〕。2、施工順序=1\*GB2⑴根底工程工程定位線〔驗線〕→挖坑→釬探〔驗坑〕→砂礫墊層的施工→根底砼墊層→刷環保瀝青→根底放線〔預檢〕→砼條形根底→刷環保瀝青→毛石根底的砌筑→構造柱砼→地圈梁→地溝→回填工。=2\*GB2⑵結構工程結構定位放線〔預檢〕→構造柱鋼筋綁扎、定位〔隱檢〕→磚墻砌筑〔+50cm線找平、預檢〕→柱梁、頂板支模〔預檢〕→梁板鋼筋綁扎〔隱檢、開盤申請〕→砼澆筑→下一層結構定位放線→重復上述施工工序直至頂。=3\*GB2⑶內裝修工程門窗框安裝→室內墻面抹灰→樓地面→門窗安裝、油漆→五金安裝、內部清理→通水通電、竣工。=4\*GB2⑷外裝修工程外裝修工程遵循先上后下原那么,屋面工程〔包括煙道、透氣孔、壓頂、找平層〕結束后,進行大面積裝飾,塑鋼門窗在裝修中逐步插入。施工準備現場道路本工程北靠北京西路,南臨規劃道路,交通較為方便。場內道路采用級配砂石鋪墊,壓路機壓。機械準備=1\*GB2⑴設2臺攪拌機,2臺水泵。=2\*GB2⑵現場設鋼筋切斷機1臺,調直機1臺,電焊機2臺,1臺對焊機。=3\*GB2⑶現場設木工鋸,木工刨各1臺。=4\*GB2⑷回填期間設打夯機2臺。=5\*GB2⑸現場設塔吊2臺。3、施工用電施工用電已由建設單位引入現場;根據工程特點,設總配電箱1個,塔吊、攪抖站、攪拌機、切斷機、調直機、對焊機、木工棚、樓層用電、生活區各配置配電箱1個;電源均采用三相五線制;各分支均采用鋼管埋地;各種機械均設置接零、接地保護。具體配電箱位置詳見總施工平面圖。施工用水施工用水采用深井水自來水,并砌筑一蓄水池進行蓄水。樓層用水采用鋼管焊接給水管,每層留一出水口;給水管不置蓄水池內,由潛水泵進行送水。生活用水生活用水采用自來水。勞動力安排=1\*GB2⑴結構期間:瓦工40人;鋼筋工15人;木工15人;放線工2人;材料1人;機工4人;電工2人;水暖工2人;架子工8人;電焊工2人;壯工20人。=2\*GB2⑵裝修期間抹灰工60人;木工4人;油工8人;電工6人;水暖工10人。四、主要施工方法1、施工測量放線=1\*GB2⑴施工測量根本要求A、西夏建材城生活區17#、30#住宅樓定位依據:西夏建材城生活區工程總體規劃圖,北京路、規劃道路永久性定位B、根據工程特點及<建筑工程施工測量規程>DBI01-21-95,4、3、2條,此工程設置精度等級為二級,測角中誤差±12,邊長相對誤差1/15000。C、根據施工組織設計中進度控制測量工作進度,明確對工程效勞,對工程進度負責的工作目的。=2\*GB2⑵工程定位A、根據工程特點,平面布置和定位原那么,設置一橫一縱兩條主控線即27#樓:〔A〕軸線和〔1〕軸線;30#樓:〔A〕軸線和〔1〕軸線。根據主軸線設置兩條次軸線即27#樓:〔H〕軸線和〔27〕軸線;30#樓:〔H〕軸線和〔27〕軸線。B、主、次控軸線定位時均布置引樁,引樁采用木樁,后砌一水泥砂漿磚墩;并將軸線標注在四周永久性建筑物或構造物上,施測完成后報建設單位、監理單位確認后另以妥善保護。C、控軸線沿結構逐層彈在墻上,用以控制樓層定位。D、水準點:建設單位給定準點,建筑物±.500m。=3\*GB2⑶根底測量A、在開挖前,基坑根據平面布置,軸線控制樁為基準定出基坑長、寬度,作為拉小線的依據;根據結構要求,條基外側1100mm為砂礫墊層邊,考慮放坡,撒上白灰線,進行開挖。B、在墊層上進行根底定位放線前,以建筑物平面控制線為準,校測建筑物軸線控制樁無誤后,再用經緯儀以正倒鏡挑直法直接投測各軸線。C、標高由水準點引測至坑底。=4\*GB2⑷結構施工測量A、首層放線驗收后,主控軸一引至外墻立面上,作為以上務層主軸線豎身高以測的基準。B、施工層放線時,應在結構平面上校投測軸線,閉合后再測設細部尺寸和邊線。C、標高豎向傳遞設置3個標高點,以其平均點引測水平線折平時,盡量將水準儀安置在測點范圍內中心位置,進行測設。2、基坑開挖本工種設計地基換工,夯填砂礫墊層1100mm;根據此特點,采用機械大開挖,留200mm厚進行挖工、鏟平。開挖時,根據現場實際土質,按標準要求1:0.33放坡,反鏟挖掘機挖土。開挖出的土,根據現場實際情況,盡量留足需用的好土,多余土方挖出,防止二次搬運。人工開挖時,由技術員抄平好水平控制小木樁,用方鏟鏟平。挖掘機挖土應該從上而下施工,禁止采用挖空底腳的操作方法。機械挖土,先發出信號,挖土的時候,挖掘機操作范圍內,不許進行其他工作,裝土的時候,任何人都不能停留在裝土車上。3、砌筑工程=1\*GB2⑴材料磚:MU15多孔磚,毛石根底采用MU30毛石。砂漿:±0.00以下采用M10水泥砂漿,一、二、三、四層采用M10混合砂漿,五層以上采用M7.5混合砂漿。=2\*GB2⑵砌筑要求A、開工前由工長對所管轄班組下發技術交底。B、砌筑前應提前澆水濕潤磚塊,水率保持在10%-15%。C、砌筑采用滿鋪滿擠“三一砌筑法“,要求灰漿飽滿,灰縫8-12mm。D、外墻轉角處應同時砌筑,內外墻交接處必須留斜槎,槎子長度不小于墻體高度的2/3,槎子必須平直、通順。E、隔墻與墻不同時砌筑又不留成斜槎時可于墻中引出陽槎或在墻的灰縫中預埋拉結筋,每道不少于2根。F、接槎時必須將外表清理干凈,澆水濕潤,填實砂漿,保持灰縫平直。G、磚墻按圖紙要求每50mm設置2φ6鋼筋與構造柱拉結,具體要求見結構總說明。H、施工時需留置臨時洞口,其側邊離交接處的墻面不少于500mm,頂部設邊梁。4、鋼筋工程=1\*GB2⑴凡進場鋼筋須具備材質證明,原材料須取樣試驗,經復試合格前方可使用。=2\*GB2⑵鋼筋綁扎前應仔細對照圖紙進行翻樣,根據翻樣配料,施工前由工長對所管轄班組下發技術交底,準備施工工具,做好施工的準備工作。=3\*GB2⑶板中受力鋼筋搭接,=1\*ROMANI級鋼30d,=2\*ROMANII級鋼40d,搭接位置:上部鋼筋在跨中1/3范圍內,下部鋼筋在支座1/3范圍內。=4\*GB2⑷鋼筋保護層:根底40mm,柱、梁30mm,板20mm。保護層采用50mm×50mm的水泥砂漿塊。板上部鋼筋用馬凳按梅花狀支起。=5\*GB2⑸所有鋼筋綁扎,須填寫隱檢記錄,質評資料及目檢記錄,驗收合格前方可進行下道工序。5、砼工程=1\*GB2⑴水泥進場后須做復試,經復試合格后由試驗室下達配合比。施工中嚴格掌握各種材料的用量,并在攪拌機前進行標識,注明每立方米、每盤用量。同時攪拌時,須車車進磅,做好記錄。=2\*GB2⑵澆筑前,對模板內雜物及油污、泥土清理干凈。=3\*GB2⑶投料順序:石子→水泥→砂子。=4\*GB2⑷本工程均采用插入式振搗器,一次澆筑厚度不宜超過振搗器作用局部長度的倍,搗實砼的移動間距不宜大于振搗器作用半徑的倍。=5\*GB2⑸砼澆筑后1晝夜澆水養護,養護期不少于7d,砼強度未到達MPa之前不得上人作業。6、模板工程=1\*GB2⑴本工程模板采用鋼木混合模板。模板支搭的標高、截面尺寸、平整度、垂直度應到達質量驗收標準,以滿足其鋼度,穩定性要求。=2\*GB2⑵模板支撐應牢固可靠,安裝進程中須有防傾覆的臨時固定措施。=3\*GB2⑶本工程選用851脫模劑,每撤除一次模板經清理后涂刷脫模劑,再重新組裝,以保證砼的外觀質量。架子工程=1\*GB2⑴本工程采用雙排架子防護,外設立桿距墻2m,里皮距墻50cm,立桿間距,順水間距,間距不大于1m。=2\*GB2⑵架子底部夯實,墊木板,綁掃地桿。=3\
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 游樂設備材料選用與應用考核試卷
- 管道工程公共服務優化與發展動態分析考核試卷
- 礦物增強塑料批發考核試卷
- 信托業務與體育產業發展考核試卷
- 地理信息系統在地質勘探與資源評價中的應用考核試卷
- 稀土金屬壓延加工的產業升級路徑探索考核試卷
- 電視設備智能安防技術考核試卷
- 遼寧科技大學《藥學細胞生物學實驗》2023-2024學年第二學期期末試卷
- 寧波大學《藝術管理學(一)》2023-2024學年第二學期期末試卷
- 濰坊護理職業學院《集成電路測試實驗》2023-2024學年第二學期期末試卷
- 整形美容醫院5月營銷活動政策方案
- 低壓配電箱安裝使用說明書A
- 中國華電集團公司火電廠煙氣脫硫工程(石灰石石膏濕法)設計導則(a版)
- 藥品零售企業許可事項申請表模板
- 經尿道前列腺剜除術講解
- 食材配送價格表
- 物業公司xx年度收支情況公示模板
- 封條模板A4直接打印版
- 混合痔病歷范文
- 八年級下冊歷史知識點總結【精華版】
- 《發育生物學》課件第七章 三胚層與器官發生
評論
0/150
提交評論