




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、湖北工業(yè)大學商貿學院畢業(yè)設計i畢業(yè)設計畢業(yè)設計基于單片機帶溫度顯示的電子萬年歷設計基于單片機帶溫度顯示的電子萬年歷設計湖北工業(yè)大學商貿學院畢業(yè)設計ii摘 要單片機應用技術飛速發(fā)展,縱觀我們現(xiàn)在生活的各個領域,從導彈的導航裝置,到飛機上各種儀表的控制,從計算機的網絡通訊與數(shù)據(jù)傳輸,到工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,以及我們生活中廣泛使用的各種智能 ic 卡、電子寵物等,這些都離不開單片機。單片機是集 cpu ,ram ,rom ,定時,計數(shù)和多種接口于一體的微控制器。它體積小,成本低,功能強,廣泛應用于智能產業(yè)和工業(yè)自動化上。本設計著重要描述的就是基于 at89s52 的單片機的電子萬年歷。
2、本文首先描述系統(tǒng)硬件工作原理,隨后說明了本系統(tǒng)所應用的各硬件接口技術(既芯片驅動程序)和各個接口模塊的功能及工作過程。本設計的主導思想是軟硬件相結合來進行各功能模塊的編寫。電子萬年歷以硬件 c 語言為主體進行軟件設計,增加了程序的可讀性和可移植性。系統(tǒng)通過 lcd 液晶輸出顯示數(shù)據(jù),可以顯示當前時間、公農歷日期、星期、溫度,并附有以峰鳴器為提示的鬧鈴功能。關鍵詞:關鍵詞:單片機 電子萬年歷 公農歷 接口模塊 c 語言湖北工業(yè)大學商貿學院畢業(yè)設計iiiabstractmcu rapid development of applied technology, we now live looking
3、at the various fields, from the missiles navigation devices, to the various instruments on the aircraft control, computer network communications and data transmission, industrial automation to the process of real-time control and data processing, and we live in the extensive use of the smart ic card
4、s, electronic pets, these are inseparable from the scm. scm is set cpu, ram, rom, timing, counting on one interface and a variety of microcontrollers.its small size, low cost, feature strong, smart widely used in industry and industrial automation.this design is going to describing the calendar base
5、d on at89s52. system hardware of main body is described first, follow the function, principle of work and hardware interface (that means the chips drives) are introduced. the designs main ideas is that composes soft and hardware to achieve the design.the calendar is designed with hardware c language
6、 as the realization tool, which increased procedure readability and transplanting. the system shows the output by lcd1602, which can demonstrate the current time, the lunar calendar date, the week, the temperature and the system, can alter people with a small sounder.keywords: mcu electronic calenda
7、r lunar calendar interface module c language.湖北工業(yè)大學商貿學院畢業(yè)設計iv目 錄摘摘 要要.iabstract .ii目目 錄錄.iii引引 言言.11 系統(tǒng)方案設計系統(tǒng)方案設計.21.1 單片機芯片的選擇方案.21.2 顯示模塊選擇方案.31.3 時鐘芯片的選擇方案.31.4 溫度傳感器的選擇方案.41.5 電路設計最終方案.42 系統(tǒng)設計說明系統(tǒng)設計說明.52.1 硬件模塊圖.52.2 系統(tǒng)原理.52.3 系統(tǒng)的軟件流程圖.63 系統(tǒng)單元模塊設計系統(tǒng)單元模塊設計.73.1 主控模塊(at89s52 模塊).73.2 ds1302 時鐘模塊.9
8、3.2.1 ds1302 簡介.93.2.2 ds1302 結構與工作原理.103.2.3 控制命令字節(jié)與寄存器.113.2.4 ds1302 電路設計圖.163.3 公歷與農歷、星期轉換模塊.163.3.1 概述.163.3.2 基本原理.173.3.3 程序流程圖.183.4 ds18b20 溫度模塊.203.4.1 概述.203.4.2 ds18b20 的工作原理.203.4.3 ds18b20 與單片機的接口設計.253.4.4 ds18b20 程序設計方案.263.5 整點報時模塊.293.5.1 概述.293.5.2 設計原理.293.5.3 整點報時電路設計圖.293.6 時間可
9、調模塊.303.6.1 鍵盤掃描原理.303.6.2 按鍵說明.303.6.3 軟件設計思路.313.7 lcd1602 顯示模塊.31湖北工業(yè)大學商貿學院畢業(yè)設計v3.7.1 概述.313.7.2 結構與工作原理.313.7.3 lcd1602 電路設計圖.343.8 電源部分.35結結 束束 語語.36參參 考考 文文 獻獻.37致致 謝謝.38附附 錄錄.- 1 -湖北工業(yè)大學商貿學院畢業(yè)設計1引 言近年來,隨著我國科技的不斷發(fā)展,我國經濟發(fā)展的支柱產業(yè)電子產業(yè)獲得長足發(fā)展,近年來各種電子產品琳瑯滿目,隨處可見,隨著電子產品的更新速度的加快,各種功能強大,款式新穎的電子產品不斷問世。日歷
10、時鐘便是這一發(fā)展趨勢中的代表,各種功能的日歷應有盡有,且功能不斷更新。日歷時鐘的研究也成為大多數(shù)相關專業(yè)的學生以及研究人員先研究的對象。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、定時啟閉電路、定時開關烘箱、通斷動力設備,甚至各種定時電氣的自動啟用等。因此,研究日歷時鐘及擴大其應用,有著非?,F(xiàn)實的意義。日歷是采用數(shù)字電路實現(xiàn)對.時,分,秒.數(shù)字顯示的計時裝置,廣泛用于個人家庭,車站,碼頭辦公室等公共場所,成為人們日常生活中不可少的必需品,由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應用使得時鐘的精度遠遠超過老式鐘表, 時鐘的數(shù)字化給人們生產生活帶來了極大的方便,而且大大地擴展了
11、鐘表原先的報時功能。市場上有許多電子鐘的專用芯片如:lm8363、lm8365 等,但它們功能單一,電路連接復雜,不便于調試制作!但是考慮到用單片機配合時鐘芯片,可制成功能任意的日歷時鐘,而且可以做到硬件簡單、成本低廉。所以本系統(tǒng)采用了以廣泛使用的單片機 at89s52 技術為核心,配合時鐘芯片 ds1302。軟硬件結合,使硬件部分大為簡化,提高了系統(tǒng)穩(wěn)定性,并采用 lcd 顯示電路、鍵盤電路,使人機交互簡便易行。本方案設計出的日歷時鐘可以顯示時間、設置鬧鈴功能,重點研究實現(xiàn)了單片機時鐘芯片這種模式的日歷,在很多場合都能用到,也可以把此設計裝在鏡框中或其它工藝品中,以便更加實用。湖北工業(yè)大學商
12、貿學院畢業(yè)設計21 系統(tǒng)方案設計 1.1 單片機芯片的選擇方案方案一: 采用 89c51 芯片作為硬件核心,采用 flash rom,內部具有 4kb rom 存儲空間,能于 3v 的超低壓工作,而且與 mcs-51 系列單片機完全兼容,但是運用于電路設計中時由于不具備 isp 在線編程技術, 當在對電路進行調試時,由于程序的錯誤修改或對程序的新增功能需要燒入程序時,對芯片的多次拔插會對芯片造成一定的損壞。方案二:采用 at89s52,片內 rom 全都采用 flash rom;能以 3v 的超底壓工作;同時也與 mcs-51 系列單片機完全該芯片內部存儲器為 8kb rom 存儲空間,同樣具
13、有89c51 的功能,且具有在線編程可擦除技術,當在對電路進行調試時,由于程序的錯誤修改或對程序的新增功能需要燒入程序時,不需要對芯片多次拔插,所以不會對芯片造成損壞。綜上所述,選擇采用 at89s52 作為主控制系統(tǒng)更適合設計。at89s52 單片機是一種低功耗高性能的 cmos8 位微控制器,內置 8kb 可在線編程閃存。該器件采用 atmel 公司的高密度非易失性存儲技術生產,其指令與工業(yè)標準 的 80c51 指令集兼容。片內程序存儲器允許重復在線編程,允許程序存儲器在系統(tǒng)內通過 spi 串行口改寫或用同用的非易失性存儲器改寫。通過把通用的 8 位 cpu 與可在線下載的 flash 集
14、成在一個芯片上,at89s52 便成為一個高效的微型計算機。它的應用范圍廣,可用于解決復雜的控制問題,且成本較低。 at89s52 的主要特性如下:1、兼容 mcs51 產品2、8k 字節(jié)可擦寫 1000 次的在線可編程 isp 閃存3、4.0v 到 5.5v 的工作電源范圍4、全靜態(tài)工作:0hz 24mhz5、3 級程序存儲器加密6、256 字節(jié)內部 ram湖北工業(yè)大學商貿學院畢業(yè)設計37、32 條可編程 i/o 線8、3 個 16 位定時器/計數(shù)器9、8 個中斷源10、uart 串行通道11、低功耗空閑方式和掉電方式12、通過中斷終止掉電方式13、看門狗定時器14、雙數(shù)據(jù)指針15、靈活的在
15、線編程(字節(jié)和頁模式) 1.2 顯示模塊選擇方案方案一:采用 led 數(shù)碼管動態(tài)掃描,雖然 led 數(shù)碼管價格適中,對于顯示數(shù)字也比較合適,然而需要顯示多位數(shù)字和字母時,編程就會變得很復雜,而且占用的單片機口線多。方案二:采用點陣式數(shù)碼管顯示,點陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對于顯示文字比較適合,如采用在顯示數(shù)字顯得太浪費,且價格也相對較高,所以也不用此種作為顯示.方案三:采用 lcd 液晶顯示屏, lcd 液晶顯示屏盡管價格比較貴,但它的顯示功能強大,可顯示大量字符,顯示多樣,清晰可見, ,需要的接口線少。所以綜合考慮,采用方案三的 lcd 液晶顯示屏作為顯示更適合本設計。 1.3
16、 時鐘芯片的選擇方案方案一:直接采用單片機定時計數(shù)器提供秒信號,使用程序實現(xiàn)年、月、日、星期、時、分、秒計數(shù)。采用此種方案雖然減少芯片的使用,節(jié)約成本,但是,實現(xiàn)的時間誤差較大。方案二:湖北工業(yè)大學商貿學院畢業(yè)設計4采用 ds1302 時鐘芯片實現(xiàn)時鐘,ds1302 芯片是一種高性能的時鐘芯片,可自動對秒、分、時、日、周、月、年以及閏年補償?shù)哪赀M行計數(shù),而且精度高,位的 ram做為數(shù)據(jù)暫存區(qū),工作電壓 2.5v5.5v 范圍內,2.5v 時耗電小于 300na.綜上所述,為顯示時間更準確,實現(xiàn)功能更多,本設計采用 ds1302 時鐘芯片提供時鐘。 1.4 溫度傳感器的選擇方案方案一:使用熱敏電
17、阻作為傳感器,用熱敏電阻與一個相應阻值電阻相串聯(lián)分壓,利用熱敏電阻阻值隨溫度變化而變化的特性,采集這兩個電阻變化的分壓值,并進行 a/d 轉換。 。此設計方案需用 a/d 轉換電路,增加硬件成本而且熱敏電阻的感溫特性曲線并不是嚴格線性的,會產生較大的測量誤差。方案二:采用數(shù)字式溫度傳感器 ds18b20,此類傳感器為數(shù)字式傳感器而且僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,易于與單片機連接,可以去除 a/d 模塊,降低硬件成本,簡化系統(tǒng)電路。另外,數(shù)字式溫度傳感器還具有測量精度高、測量范圍廣等優(yōu)點。為提高測量精度,降低成本,所以本設計采用數(shù)字式溫度傳感器 ds18b20 測量溫度。 1.5 電路設計最終方
18、案綜上各方案所述,對此次作品的方案選定: 采用 at89s52 作為主控制系統(tǒng); ds1302提供時鐘;數(shù)字式溫度傳感器;lcd 液晶顯示屏作為顯示模塊。湖北工業(yè)大學商貿學院畢業(yè)設計52 系統(tǒng)設計說明2.1 硬件模塊圖系統(tǒng)的硬件模塊圖如圖 2.1 所示。圖 2.1 系統(tǒng)硬件模塊圖模塊說明:1、ds1302 時鐘模塊可以輸出其當前日期、時間及星期2、鍵盤輸入電路可以調整日期,時間及公農歷的轉換3、ds18b20 溫度模塊可以測量當前室內的溫度4、峰鳴器鬧鈴模塊可以做整點報時5、顯示電路則顯示當前的系統(tǒng)運行情況 2.2 系統(tǒng)原理本系統(tǒng)是由 at89s52 單片機為控制核心;時鐘電路由 ds1302
19、 提供,它可以對年、月、日、周日、時、分、秒進行計時,具有閏年補償功能;溫度的采集由 ds18b20 構成;lcd1602 用來顯示數(shù)據(jù);鍵盤輸入電路可以調整日期,時間及公農歷的轉換。通過用 c 語言1編程,從 ds1302 寄存器中讀取年、月、日、周日、時、分、秒等數(shù)據(jù)信息;從 ds18b20 寄存器中讀取溫度信息,再編程將以上信息送到 lcd1602 顯示出來。同時,通過鍵掃描,編程實現(xiàn)調整日期,時間及公農歷的轉換。ds1302時鐘模塊(89s52)主控模塊鍵盤輸入電路顯示電路峰鳴器鬧鈴模塊ds18b20 溫度模塊湖北工業(yè)大學商貿學院畢業(yè)設計62.3 系統(tǒng)的軟件流程圖系統(tǒng)的軟件流程圖如圖
20、2.2 所示。 圖圖 2.2 軟件流程圖軟件流程圖開始初始化讀、寫日期、時間和溫度分離日期時間溫度顯示值鍵掃描子程序顯示子程序鬧鈴子程序結束湖北工業(yè)大學商貿學院畢業(yè)設計73 系統(tǒng)單元模塊設計 3.1 主控模塊(at89s52 模塊)目前,在我國比較流行的就是美國 atmel 公司的 89c51 它是一種帶 flash rom 的單片機,事實上,89c51 目前正在用 89s52 代替。本系統(tǒng)就是以 at89s52 作為主控芯片。圖 3.1 at89s52 封裝圖at89s52 采用 40pin 封裝的雙列直接 dip 結構,圖 4.1 是它的封裝圖,40 個引腳中,正電源和地線兩根,外置石英振
21、蕩器的時鐘線兩根,4 組 8 位共 32 個 i/o 口,中斷口線與 p3 口線復用?,F(xiàn)在我們對這些引腳的功能加以說明:1、pin20:接地腳。2、pin40:正電源腳,正常工作或對片內 eprom 燒寫程序時,接+5v 電源。3、pin19:時鐘 xtal1 腳,片內振蕩電路的輸入端。4、pin18:時鐘 xtal2 腳,片內振蕩電路的輸出端。時鐘有兩種方式,一種是片內時鐘振蕩方式,但需在 18 和 19 腳外接石英晶體(2-12mhz)和振蕩電容,振蕩電容的值一般取 10p-30p。另外一種是外部時鐘方式,即將xtal1 接地,外部時鐘信號從 xtal2 腳輸入。輸入輸出(i/o)引腳:
22、pin32-pin39 為 p0.0-p0.7 輸入輸出腳,pin1-pin8 為 p1.0-p1.7 輸入輸出腳,pin21-pin28 為 p2.0-p2.7 輸入輸出腳,pin10-pin17 為 p3.0-p3.7 輸入輸出腳,這些輸入輸出腳的功能闡述如下:湖北工業(yè)大學商貿學院畢業(yè)設計8p0 口(32 腳39 腳):是雙向 8 位三態(tài) i/o 口,在外接存儲器時,與地址總線的低 8 位及數(shù)據(jù)總線復用,能以吸收電流的方式驅動 8 個 ttl 負載。p1 口(1 腳8 腳):是 8 位準雙向 i/o 口。由于這種借口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向 i/o 口。p1 口能
23、驅動(吸收或輸出電流)4 個 ttl負載。p2 口(21 腳28 腳):是 8 位準雙向 i/o 口。訪問外部存儲器時,它可以作為高8 位地址總線送出高 8 位地址。p2 可以驅動(吸收或輸出電流)4 個 ttl 負載。p3 口(10 腳17 腳):是 8 位準雙向 i/o 口,p3 口能驅動(吸收或輸出電流)4個 ttl 負載。p3 口除了作為一般的準雙向通用 i/o 口使用外,每個引腳還有第二功能。p3 口的 8 條線都定義有第二功能6,如表 4.1 所列。表 3.1 p3 口的第二功能表引腳第二功能p3.0rxd(串行口輸入端)p3.1txd(串行口輸出端)p3.2int0(外部中斷 0
24、 請求輸入端,低電平有效)p3.3int1(外部中斷 0 請求輸入端,低電平有效)p3.4t0(定時器/計數(shù)器 0 的技數(shù)脈沖輸入端)p3.5t1(定時器/計數(shù)器 0 的技數(shù)脈沖輸入端)p3.6wr(片外數(shù)據(jù)存儲器寫選通信號輸出端,低電平有效)p3.7rd(片外數(shù)據(jù)存儲器寫選通信號輸出端,低電平有效) pin9:reset/vpd 復位信號復用腳,當單片機通電,時鐘電路開始工作,在 reset引腳上出現(xiàn) 24 個時鐘周期以上的高電平,系統(tǒng)即初始復位。初始化后,程序計數(shù)器pc 指向 0000h,p0-p3 輸出口全部為高電平,堆棧指鐘寫入 07h,其它專用寄存器被清“0”。reset 由高電平下
25、降為低電平后,系統(tǒng)即從 0000h 地址開始執(zhí)行程序。然而,初始復位不改變 ram(包括工作寄存器 r0-r7)的狀態(tài),單片機復位后的狀態(tài)如下:p0p3=ffh,各口可用于輸出,也可用于輸入;sp=07h,第一個入棧內容將寫入 08h 單元;湖北工業(yè)大學商貿學院畢業(yè)設計9ip、ie 和 pcon 的有效位為 0,各中斷源處于低優(yōu)先級且均被關斷,串行通訊的波 特率不加倍;psw=00h,當前工作寄存器為 0 組。 pin30:ale/prog 當訪問外部程序器時,ale(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪問內部程序存儲器時,ale 端將有一個 1/6 時鐘頻率的正脈沖信號,這個信號可以
26、用于識別單片機是否工作,也可以當作一個時鐘向外輸出。更有一個特點,當訪問外部程序存儲器,ale 會跳過一個脈沖。如果單片機是 eprom,在編程其間,prog 將用于輸入編程脈沖。pin29:pesn 當訪問外部程序存儲器時,此腳輸出負脈沖選通信號,pc 的 16 位地址數(shù)據(jù)將出現(xiàn)在 p0 和 p2 口上,外部程序存儲器則把指令數(shù)據(jù)放到 p0 口上,由 cpu讀入并執(zhí)行。pin31:ea/vpp 程序存儲器的內外部選通線,8051 和 8751 單片機,內置有 4kb 的程序存儲器,當 ea 為高電平并且程序地址小于 4kb 時,讀取內部程序存儲器指令數(shù)據(jù),而超過 4kb 地址則讀取外部指令數(shù)
27、據(jù)。如 ea 為低電平,則不管地址大小,一律讀取外部程序存儲器指令。顯然,對內部無程序存儲器的 8031,ea 端必須接地。3.2 ds1302 時鐘模塊3.2.1 ds1302 簡介ds1302 是 dallas 公司推出的涓流充電時鐘芯片內含有一個實時時鐘/日歷和 31字節(jié)靜態(tài) ram。通過簡單的串行接口與單片機進行通信,實時時鐘/日歷電路提供秒分時日月年的信息,每月的天數(shù)和閏年的天數(shù)可自動調整。時鐘操作可通過 am/pm指示決定采用 24 或 12 小時格式。ds1302 與單片機之間能簡單地采用同步串行的方式進行通信,僅需用到三個口線。1.res 復位,2.i/o 數(shù)據(jù)線,3.sclk
28、 串行時鐘。時鐘/ram 的讀/寫數(shù)據(jù)以一個字節(jié)或多達 31 個字節(jié)的字符組方式通信。ds1302 工作時功耗很低,保持數(shù)據(jù)和時鐘信息時功率小于 1mw。ds1302 是由 ds1202 改進而來,增加了以下特性:雙電源管腳用于主電源和備份電源供應,vcc1 為可編程涓流充電電源,附加七個字節(jié)存儲器,備份電源可由大容量電容(1f)替代。它廣泛應用于電話傳真便攜式儀器以及電池供電的儀器儀表等產品領域。湖北工業(yè)大學商貿學院畢業(yè)設計10主要性能如下:1、時鐘具有能計算 2100 年之前的秒,分,時,日,星期,月,年的能力,還有閏年調整的能力。2、31*8 位暫存數(shù)據(jù)存儲 ram3、串行 i/o 口方
29、式使得管腳數(shù)量最少4、寬范圍工作電壓:2.0v5.5v5、工作電流:2.0v 時,小于 300na6、讀/寫時鐘或 ram 時,有兩種傳送方式:單字節(jié)傳送和多字節(jié)傳送(字符組方式)7、8 腳 dip 封裝或可選的 8 腳 soic 封裝8、簡單的 3 線串行 i/o 接口9、與 ttl/coms 兼容(vcc=5v 時)10、可選工業(yè)級溫度范圍:-40oc+85oc3.2.2 ds1302 結構與工作原理3.2.2.1 引腳及功能表1、ds1302 的腳功能如表 3.2 所示,引腳如圖 3.2 所示表 3.2 引腳功能引腳號引腳名稱功能1vcc2主電源引腳2,3x1,x2振蕩源,外接 32.7
30、68khz 晶振4rst接地5gnd復位/片選端6i/o串行數(shù)據(jù)輸入/輸出端(雙向)7sclk串行時鐘輸入端8vcc1備用電源湖北工業(yè)大學商貿學院畢業(yè)設計11圖 3.2 ds1302 的引腳圖3.2.2.2 工作原理串行時鐘芯片主要由寄存器、控制寄存器、振蕩器、實時時鐘以及 ram 組成。為了對任何數(shù)據(jù)傳送進行初始化,需要將 rst 置為高電平且將具有地址和控制信息的 8位數(shù)據(jù)(控制字節(jié))裝入移位寄存器。數(shù)據(jù)在 sclk 的上升沿串行輸入,前 8 位指定訪問地址,命令字裝入移位寄存器后,在之后的時鐘周期,讀操作時輸出數(shù)據(jù),寫操作時輸入數(shù)據(jù)。時鐘脈沖的個數(shù)在單字節(jié)方式下為 8 加 8(8 位地址
31、加 8 位數(shù)據(jù)) ,在多字節(jié)突發(fā)模式方式下為 8 加最多可達 248 的數(shù)據(jù)。 3.2.3 控制命令字節(jié)與寄存器1、控制命令字節(jié)控制命令字節(jié)的格式如表 3.3表 3.3 控制命令字節(jié)的格式表d7 d6 d5 d4d3d2 d1d01ram/cka4a3a2a1a0rd/ w控制字節(jié)的最高有效位(位 7)必須是邏輯 1,如果它為 0,則不能把數(shù)據(jù)寫入到ds1302 中;位 6 如果為 0,則表示存取日歷時鐘數(shù)據(jù),為 1 表示存取 ram 數(shù)據(jù);位 5 至位 1 指示操作單元的地址;最低有效位(位 0)為 0 表示要進行寫操作,為 1 表示進行讀操作,控制字節(jié)總是從最低位開始輸出。2、寄存器(1)
32、歷、時鐘寄存器ds1302 共有 12 個寄存器,其中有 7 個寄存器與日歷、時鐘相關,存放的數(shù)據(jù)為bcd 碼形式。其日歷、時間寄存器及其控制字如表 3.5 所示。寄存器的選擇由命令字而定,日歷,時鐘各個寄存器與控制字對照表如表 3.4 所示。湖北工業(yè)大學商貿學院畢業(yè)設計12最后一位 rd/w 為 0 表示要進行寫操作,為 1 表示進行讀操作。表 3.5 為主要寄存器命令字、取值范圍以及各位內容對照表。表 3.4 日歷、時鐘寄存器與控制字對照表d7d6d5d4d3d2d1d0寄存器名稱1ram/cka4a3a2a1a0 rd/w秒寄存器1000000分寄存器1000001小時寄存器100001
33、0日寄存器1000011月寄存器1000100星期寄存器1000101年寄存器1000110寫保護寄存器1000111慢充電寄存器1010000時鐘突發(fā)寄存器1011111湖北工業(yè)大學商貿學院畢業(yè)設計13表 3.5 ds1302 的日歷、時鐘寄存器表命令字各位內容寄存器名稱寫操作讀操作 取值范圍765430秒寄存器80h81h0059ch10secsec分寄存器82h83h0059010minmin小時寄存器84h85h0112或 002312/24010a/phrhr日寄存器86h87h0128,29,30,310010datedate月寄存器88h89h011200010mmonth星期寄
34、存器8ah8bh01070000day年寄存器8ch8dh010910yearyear寫保護寄存器8eh8fhwp0000慢充電寄存器90h91htcstcstcstcsdsdsrsrs時鐘突發(fā)寄存器behbfh特殊位的說明:湖北工業(yè)大學商貿學院畢業(yè)設計14ch:時鐘暫停位。當此位設置為 1 時,振蕩器停止,ds1302 處于低功耗空閑狀態(tài),這時芯片消耗電流將小于 100na;當此位為 0 時,振蕩器啟動,時鐘開始啟動。12/24:12 或 24 小時方式選擇位。為 1 時選擇 12 小時方式,在 12 小時方式下,位 5 是 am/pm 選擇位,此位為 1 時表示 pm。為 0 時選擇 24
35、 小時方式,在 24 小時方式下,位 5 是第 2 個小時位(2023 時) 。wp:寫保護位。寫保護寄存器的開始 7 位(06)置為 0,在讀操作時總是讀出0。在對時鐘或 ram 進行寫操作之前,位 7(wp)必須為 0,當它為高電平時,寫保護位防止對任何其他寄存器進行寫操作。tcs:控制慢充電的選擇,為了防止偶然因素使 ds1302 工作,只有 1010 模式才能使慢速充電。ds:二極管選擇位。如果 ds 為 01,那么選擇一個二極管;如果 ds 為 10,則選擇兩個二極管;如果 ds 為 11 或 00,那么充電器被禁止,與 tcs 無關。rs:選擇連接在 vcc2 與 vcc1 之間的
36、電阻,如果 rs 為 00,那么充電器被禁止,與 tcs 無關。選擇的電阻如表 3.6 所示。表 3.6 rs 與所選電阻對照表rs 位電阻器典型值00無無01r12 k10r24 k11r38 k由上所述,根據(jù)涓流充電寄存器的不同編程,可得到不同的充電電流。其充電電流具體計算公式如下: 公式 3.15.0rdecvvvi式中,5.0v 為 vcc2 腳所接入的工作電壓,vd為二極管正向壓降 0.7v, r 為寄存器 0 和 1 位編碼決定的電阻值,ve為 vcc1 腳所接入的電壓。(2)ram 寄存器ds1302 與 ram 相關的寄存器分為兩類,一類是單個 ram 單元,共 31 個,每個
37、單元組態(tài)為一個 8 位的字節(jié),其命令控制字為 c0hfdh,其中奇數(shù)為讀操作,偶數(shù)湖北工業(yè)大學商貿學院畢業(yè)設計15為寫操作;另一類為突發(fā)方式下的 ram 寄存器,此方式下可一次性讀寫所有的 ram的 31 字節(jié),命令控制字為 feh(寫) 、ffh(讀) 。ram 寄存器與控制字對照如表3.7。表 3.7 ram 區(qū)寄存器與控制字對照表d7d6d5d4d3d2d1d0寄存器名稱1ram/cka4a3a2a1a0rd/ wram01000000ram11000001ram301111110ram 突發(fā)1111111(3)復位和時鐘控制通過將 rst 輸入驅動置高電平來啟動所有的數(shù)據(jù)傳送。rst
38、輸入有兩種功能:首先,rst 接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,rst 提供了終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當 rst 為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對 ds1302 進行操作。如果在傳送過程中置 rst 為低電平,則會終止此次數(shù)據(jù)傳送,并且 i/o 引腳變?yōu)楦咦钁B(tài)。上電運行時,在 vcc 2.5v 之前,rst 必須保持低電平。只有在 sclk 為低電平時,才能將 rst 置為高電平。(4)數(shù)據(jù)輸入/輸出數(shù)據(jù)輸入是在輸入寫命令字的 8 個 sclk 周之后,在接下來的 8 個 sclk 周期中的每個脈沖的上升沿輸入數(shù)據(jù),數(shù)據(jù)從 0 位開始。如果有額外的 sc
39、lk 周期,它們將被忽略。數(shù)據(jù)輸出是在輸出讀命令字的 8 個 sclk 周之后,在接下來的 8 個 sclk 周期中的每個脈沖的下降沿輸出數(shù)據(jù),數(shù)據(jù)從 0 位開始。需要注意的是,第一個數(shù)據(jù)位在命湖北工業(yè)大學商貿學院畢業(yè)設計16令字節(jié)后的最后一位之后的第一個下降沿被輸出。只要 rst 保持高電平,如果有額外的 sclk 周期,將重新發(fā)送數(shù)據(jù)字節(jié),即多字節(jié)傳送。時序圖如圖 3.3 所示。圖 3.3 時序圖3.2.4 ds1302 電路設計圖圖 3.4 ds1302 電路設計圖x12x23vcc21gnd4rst5i/o6sclk7vcc18u2ds1302vcc12y2c7c832.768khz1
40、0p10pp0.1p0.2p0.0470ufc61kr10湖北工業(yè)大學商貿學院畢業(yè)設計173.3 公歷與農歷、星期轉換模塊3.3.1 概述公歷是全世界通用的歷法,以地球繞太陽的一周為一年。一年 365 天分為 12 個月,1、3、5、7、8、10、12 月為 31 天,2 月為 28 天,其余月份為 30 天。事實上地球繞太陽一周共 365 天 5 小時 48 分 46 秒,比公歷一年多出 5 小時 48 分 46 秒,為使年誤差不累積公歷年用閏年法來消除年誤差。由于每年多出 5 小時 48 分 46 秒,每 4 年累計多出 23 小時 15 分 4 秒,接近 1 天。天文學家就規(guī)定每 4 年
41、有一個閏年把 2 月由 28 天改為 29 天,凡是公歷年代能被 4 整除的那一年就是閏年。但是這樣一來每4 年又少了 44 分 56 秒為了更準確地計時天文學家又規(guī)定凡能被 100 整除的年份只有能被 400 整除才是閏年,即每 400 年要減掉 3 個閏年,經過這樣處理后實際上每 400 年的誤差只有 2 小時 53 分 20 秒,已相當準確了。 農歷與公歷不同,農歷把月亮繞地球一周作為一月。因為月亮繞地球一周不是一整天,所以農歷把月分為大月和小月。大月 30 天,小月 29 天。通過設置大小月使農歷日始終與月亮與地球的位置相對應。為了使農歷的年份與公歷年相對應,農歷通過設置閏月的辦法使它
42、的平均年長度與公歷年相等。農歷是中國傳統(tǒng)文化的代表之一,并與農業(yè)生產聯(lián)系密切,中國人民特別是廣大農民十分熟悉并喜愛農歷。公歷與農歷是我國目前并存的兩種歷法,各有其固有的規(guī)律。農歷與月球的運行相對應其影響因素多,它的大小月和閏月與天體運行有關計算十分復雜,且每年都不一致。因此要用單片機實現(xiàn)公歷與農歷的轉換用查表法是最方便實用的辦法。51 系列單片機因其在功能上能滿足大部份對速度要求不高的應用場合的要求且價格低廉開發(fā)工具普及程度高,是目前應用最多的單片機之一。本文介紹一種用 51 單片機實現(xiàn)從1901 年到 2099 年 199 年公歷日到農歷日及星期的轉換方法。3.3.2 基本原理我們可以通過按
43、查表和按年查表的方法,再通過適當?shù)挠嬎悖瑏泶_定公歷日所對應的農歷日期。本文采用的是按年查表法,最大限度地減少表格所占的空間。對于農歷來說,大月為 30 天,小月為 29 天,這是固定不變的,這樣我們就可用1 個 bit(1 位)表示大小月信息。農歷一年,如有閏月為 13 個月,否則是 12 個月,湖北工業(yè)大學商貿學院畢業(yè)設計18所以一年需要用 13 個 bit,閏月在農歷中所在的月份并不固定,大部分閏月在農歷 2-8 月,但也有少量年份在 9 月以后。所以要表示閏月的信息,至少要 4bit,在這里我們用 4bit 的值來表示閏月的月份。值為 0 表示本年沒有閏月。有了以上信息,還不足以判斷公歷
44、日對應的農歷日,因為還需要個參照日,我們選用農歷正月初一所對應的公歷日期作參照日,公歷日最大為 31 日,需要 5 bit 來表示,而春節(jié)所在的月份不是1 月就是 2 月,用 1 bit 就夠了,考慮到表達方便,我們用 2 bit 的值直接表示月份。這樣一年的農歷信息只用 3 個字節(jié)就全部包括了。每年對應的 3 字節(jié)數(shù)據(jù)格式說明如下:第一字節(jié) bit74 位表示閏月月份,值為 0 為無閏月,bit30 對應農歷第 14 月的大小。第二字節(jié) bit7-0 對應農歷第 512 月大小。第三字節(jié) bit7-7 表示農歷第 13 個月大小,bit6-5 表示春節(jié)的公歷月份,bit40 表示春節(jié)的公歷日
45、期。月份對應的位為 1 表示本農歷月大(30 天),為 0 表示小(29 天)計算公歷對應的農歷日期的方法:先計算出公歷日離當年元旦的天數(shù),然后查表取得當年的春節(jié)日期,計算出春節(jié)離元旦的天數(shù),二者相減即可算出公歷日離春節(jié)的天數(shù),以后只要根據(jù)大小月和閏月信息,減月天數(shù),調整農歷月份,即可推算出公歷日對應的農歷日期。如果公歷日不到春節(jié)日期,農歷年要比公歷年小一年,農歷大小取前一年的信息。農歷月從 12 月向前推算。公歷日是非常有規(guī)律的,所以公歷日所對應的星期天可以通過計算直接得到,理論上公元 0 年 1 月 1 日為星期日,只要求得公歷日離公元 0 年 1 月 1 日的天數(shù),除 7后的余數(shù)就是星期
46、天,為了簡化計算,采用月校正法,根據(jù)公歷的年月日可直接計算出星期天。其算法是:日期+年份+所過閏年數(shù)+月較正數(shù)之和除 7 的余數(shù)就是星期天,但如果是在閏年又不到 3 月份,上述之和要減一天再除 7。其 1-12 月的校正數(shù)為:6,2,2,5,0,3,5,1,4,6,2,4。年份和閏年數(shù)只計算 1900 年以后的年份和閏年數(shù),實際校正數(shù)為:0,3,3,6,1,4,6,2,5,0,3,5。舉例說明:用查表法得出公歷 2008 年 3 月 9 日對應的農歷及星期信息。1、查表得 2008 年的數(shù)據(jù)為0 x09,0 x2d,0 x47(0000,1001;0010,1100;0100,0111) 。湖
47、北工業(yè)大學商貿學院畢業(yè)設計19該數(shù)據(jù)表示該年無閏月,農歷月的 2,3,5,6,8,11,12 月為小月 29 天,1,4,7,9,10 月為大月 30 天。該年春節(jié)在公歷 2 月 7 日。2、 計算公歷日(2008 年 3 月 9 日)離當年元旦的天數(shù):30+29+968。3、 計算春節(jié)離元旦的天數(shù):30+737。4、 算出公歷日(2008 年 3 月 9 日)離春節(jié)的天數(shù):683731。5、 調整農歷月份:因為 31301,所以相對應的農歷月份是 2 月,農歷日是1+12。6、 計算星期(日期+年份+所過閏年數(shù)+月較正數(shù)之和除 7 再求余數(shù)):9+(20081900)+(20081900)/
48、4+370綜上所述,公歷日 2008 年 3 月 9 日對應的是農歷 2008 年 2 月 2 日星期天。3.3.3 程序流程圖由于星期的計算很簡單,這里只提供公農歷轉換程序設計流程圖,如圖 3.5 所示。 否 是 是 否 是 否轉換數(shù)據(jù)到 hex 格式,方便運算根據(jù)公歷年,定位數(shù)據(jù)表的地址從數(shù)據(jù)表中取得春節(jié)的公歷日期,并通過計算公歷日和春節(jié)離元旦的天數(shù)算出公歷日離春節(jié)的天數(shù),記為 x公歷日在春節(jié)以后子程序入口農歷年公歷年,取農歷月信息農歷年公歷年減1,數(shù)據(jù)表地址減3,定位到前一年,取農歷信息農歷月加 1,閏月標志 f00(非閏月)取農歷月天數(shù) y農歷月12,閏月標志 f0(非閏月)f0 取反
49、農歷月加 1f01?農歷月閏月?取農歷月天數(shù) y湖北工業(yè)大學商貿學院畢業(yè)設計20 否 是 是 否 是 是 否 否圖 3.5 公農歷轉換程序流程圖 3.4 ds18b20 溫度模塊 3.4.1 概述美國 dallas 公司生產的單線數(shù)字溫度傳感器 ds18b20,可把溫度信號直接轉換成串行數(shù)字信號供微機處理。由于每片 ds18b20 含有唯一的硅串行數(shù),所以在一條總線上可掛接任意多個 ds18b20 芯片。從 ds18b20 讀出的信息或寫入 ds18b20 的信息,僅需要一根口線(單線接口) 。讀寫及溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的 ds18b20 供電,而無需額外電源。d
50、s18b20 可提供 912 位溫度讀數(shù),構成多點溫度檢測系統(tǒng)而無需任何外圍硬件。 3.4.2 ds18b20 的工作原理 3.4.2.1 ds18b20 的性能1、單線接口:僅需一根口線與 mcu 連接進行通信。2、多個 ds18b20 可以并聯(lián)在惟一的 3 線上,實現(xiàn)多點組網功能。3、無需外圍元件4、可通過數(shù)據(jù)線供電,電壓范圍為 3.05.5v。農歷月減 1xxy農歷日yx+1子程序出口農歷年、月、日數(shù)據(jù)標準化xxy農歷日x+1f0 取反f01?農歷月閏月?x=yxy?湖北工業(yè)大學商貿學院畢業(yè)設計215、零待機功耗。6、測溫范圍:-55 125 。固有測溫分辨率為 0.5 。7、通過編程可
51、實現(xiàn) 912 位的數(shù)字讀數(shù)方式。8、用戶可自設定非易失性的報警上下限值。9、支持多點組網功能,多個 ds18b20 可以并聯(lián)在惟一的三線上,實現(xiàn)多點測溫。10、報警搜索命令可識別哪片 ds1820 超溫度限。11、負壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。3.4.2.2 ds18b20 的內部結構 圖 3.6 ds18b20 方框圖1、64 位 rom 的結構圖 3.7 64 位 rom 的結構圖開始 8 位是產品類型的編號,接著是每個器件的惟一的序號,共有 48 位,最后 8位是前 56 位的 crc 校驗碼,這也是多個 ds18b20 可以采用一線進行通信的原因。
52、8 位檢驗 crc48 位序列號8 位工廠代碼(10h)湖北工業(yè)大學商貿學院畢業(yè)設計222、非易失性溫度報警觸發(fā)器 th 和 tl,可通過軟件寫入用戶報警上下限。 3、高速暫存存儲器 ds18b20 溫度傳感器的內部存儲器包括一個高速暫存 ram 和一個非易失性的可電擦除的 e2prom。高速 ram 包含 9 字節(jié)存儲器,其結構如圖 3.8 所示。前兩個字節(jié)包含測得的溫度信息。第 3 和第 4 字節(jié)是 th 和 tl 的拷貝,是易失的,每次上電復位時被刷新。第 5 個字節(jié)是配置寄存器,它的內容用于確定溫度值的數(shù)字轉換分辨率,ds18b20 工作時按此寄存器中的分辨率將溫度轉換為相應精度的數(shù)值
53、。該字節(jié)各位的定義如圖 3.9 所示。低 5 位一直都是 1,tm 是測試模式位,用于設置ds18b20 在工作模式還是在測試模式。在 ds18b20 出廠時該位被設置為 0,用戶不要去改動,r1 和 r0 決定溫度轉換的精度位數(shù),即是來設置分辨率,如表 3.8 所示(ds18b20 出廠時被設置為 12 位) 。溫度 lsb溫度 msbth 用戶字節(jié) 1tl 用戶字節(jié) 2配置寄存器保留保留保留crc圖 3.8 高速暫存 ram 結構圖tmr1r211111圖 3.9 配置寄存器圖表 3.8 ds18b20 分辯率的定義規(guī)定表1 字節(jié)2 字節(jié)3 字節(jié)4 字節(jié)5 字節(jié)6 字節(jié)7 字節(jié)8 字節(jié)9
54、字節(jié)th 用戶字節(jié) 1tl 用戶字節(jié) 2e2prom湖北工業(yè)大學商貿學院畢業(yè)設計23r1r0分辯率/位溫度最大轉換時間00993.750110187.510113751112750由表 3.8 可見,設定的分辨率越高,所需要的溫度數(shù)據(jù)轉換時間就越長。因此,在實際應用中要在分辨率和轉換時間權衡考慮。 高速暫存 ram 第 68 字節(jié)未用,表現(xiàn)為全邏輯 1;第 9 字節(jié)讀出的是前面所有8 個字節(jié)的 crc 碼,可用來保證通信正確。 當 ds18b20 接收到溫度轉換命令后,開始啟動轉換。轉換完成后的溫度值就以 16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第 1,2 字節(jié)。單片機可通過單線
55、接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,數(shù)據(jù)格式以 0.0625/lsb 形式表示。溫度值格式如圖 3.10。ls 字節(jié) ms 字節(jié) 圖 3.10 溫度數(shù)據(jù)值格式圖當符號位 s=0 時,直接將二進制位轉換為十進制;當 s=1 時,先將補碼變換為原碼,再計算十進制值。表 3.9 是對應的一部分溫度值。表 3.9 ds18b20 溫度與測得值對應表溫度/oc數(shù)據(jù)輸出(二進制)數(shù)據(jù)輸出(十六進制)+1250000 0111 1101 000007d0h+850000 0101 0101 00000550h+25.06250000 0001 1001 00010191h+10.1250000 000
56、0 1010 001000a2h232221202-12-22-32-4sssss2625264湖北工業(yè)大學商貿學院畢業(yè)設計24+0.50000 0000 0000 10000008h00000 0000 0000 00000000h-0.51111 1111 1111 1000fff8h-10.1251111 1111 0101 1110ff5eh-25.06251111 1110 0110 1111fe6fh-551111 1100 1001 0000fc90hds18b20 完成溫度轉換后,就把測得的溫度值與 th,tl 作比較,若 tth 或t60s 60s 15s 1560s 1s
57、15s 45s 1s t0 t1 t0 t1圖 3.15 ds18b20 寫 0 和寫 1 時序圖(2)讀時間隙當主機 t0時刻把總線從邏輯高電平拉到邏輯低電平時,總線只需保持低電平14s,之后在 t1時刻將總線拉高產生讀時間隙,讀時間隙在 t1時刻后 t2時刻前有效,t2距 t015s,也就是說 t2時刻前主機必須完成讀位并在 t0后的 60120s 內釋放總線。連續(xù)讀 2 位的間隙應大于 1s。讀位時序見圖 3.16。 60s 15s 1s湖北工業(yè)大學商貿學院畢業(yè)設計29 t0 t1 t2 t3圖 3.16 ds18b20 讀位時序圖4、數(shù)據(jù)處理數(shù)據(jù)處理思路是先取高速暫存器 ram 中溫度
58、信息的底字節(jié) lsb,將 lsb 右移 4位,再取高速暫存器 ram 中溫度信息的高字節(jié) msb,將 msb 左移 4 位,接著將lsb 和 msb 兩個字節(jié)相或,得到一個整數(shù),再送顯示。 3.5 整點報時模塊 3.5.1 概述本次設計中整點報時功能是當時鐘滿整點時,自動報出相應時鐘點數(shù)。比如當時鐘為 9 點整時,蜂鳴器就連續(xù)發(fā)出 9 個相同的音階(中音 do) 。因為每個音階都對應著固定的頻率,因此用單片機來實現(xiàn)整點報時非常方便。我們可以利用單片機的定時/計數(shù)器 t0 來產生這樣方波頻率信號。 3.5.2 設計原理要產生音頻脈沖,只要算出某一音頻的周期(1/音頻),然后將此周期除以 2,即為
59、半周期的時間,再利用定時器計時半周期時間,每當計時終止后就將 i/o 口反相,然后重復計時再反相。就可在 i/o 引腳上得到此頻率的脈沖。 利用 at89s52 的內部定時器使其工作計數(shù)器模式(mode1)下,改變計數(shù)值 th0及 tl0 以產生不同頻率的方法產生不同音階,例如,中音 do 的頻率為 523hz,其周期t1/5231912s,因此只要令計數(shù)器計時 956s/1s956,每計數(shù) 956 次時將 i/o 反相,就可得到中音 do(523hz)。 1. 計數(shù)脈沖值與頻率的關系式是: n=f12fr 公式 3.2式中,n 是計數(shù)值;fi是機器頻率(晶體振蕩器為 12mhz 時,其頻率為
60、 1mhz);fr是想要產生的頻率。 湖北工業(yè)大學商貿學院畢業(yè)設計302. 計數(shù)初值 t: (1)t65536n65536n=f12fr 例如:設 k65536,fi1mhz,求中音 do(523hz)的計數(shù)初值。 t65536n65536f12fr 6553610000002fr 65536500000/fr 中音 do 的 t65536500000/52364580 3.5.3 整點報時電路設計圖 整點報時設計電路如圖 3.17 所示圖 3.17 整點報時電路設計圖 3.6 時間可調模塊 3.6.1 鍵盤掃描原理如圖 3.18 所示,鍵盤是由多個按鍵組成。首先將與按鍵相接的單片機接口都置高
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 吉林省長春市2024-2025學年高一上冊第一次月考數(shù)學調研檢測試題
- 2024-2025學年四川省廣元市高二上冊9月月考數(shù)學檢測試卷合集2套(含解析)
- 農村建設房屋出租合同范例
- 中標合同范例修改
- 企業(yè)代管合同范例
- 玉器銷售合同協(xié)議書范本
- 參加課程培訓合同范例
- 別墅中介合同范例
- ppp模式供暖合同范本
- 兒童禮物采購合同范例
- 四年級數(shù)學思維訓練社團活動(素質拓展)電子教案
- 金屬切削過程中的變形 revised課件
- 蒙古族文化課件
- 簡明燒傷健康量表
- 傳染病布氏菌病 課件
- 商業(yè)廣告設計課件
- 教會行政管理學課程教案
- SJG 44-2018 深圳市公共建筑節(jié)能設計規(guī)范-高清現(xiàn)行
- 2022年高考(全國甲卷)語文仿真模擬卷【含答案】
- _重大事故后果分析(精)
- 水泥攪拌樁施工監(jiān)理質量控制要點
評論
0/150
提交評論