版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、信息工程學院課程設計報告書題目: 基于atmega16單片機的可調日歷 專 業(yè): 電子信息科學與技術 班 級: 學 號: 學生姓名: 指導教師: 2010年 9月 25日 信息工程學院課程設計任務書學 號學生姓名專業(yè)(班級)設計題目基于atmega16單片機的可調日歷設計技術參數(shù) 1. 一片avr系列的atmega16單片機做主控制器; 2. 一片時鐘芯片ds1302可以對年、月、日、周日、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能; 3. 一塊lcd顯示屏可以顯示中文、數(shù)字; 4. 5個靜態(tài)掃描的按鍵組成調節(jié)鍵盤。設計要求1. 基于avr系列的單片機進行的電子日歷的設計;2. 可以顯示年月
2、日時分秒及周信息,以及閏年補償;3. 具有可調整日期和時間功能;工作量 1. 繪出硬件電路圖; 2. 編寫控制程序; 3. 給出系統(tǒng)仿真; 4. 完成課程設計報告。工作計劃 1. 9月1日、2日查找資料給出設計題目; 2. 9月3日9月9日作出設計方案; 3. 9月10日9月16日初步完成電路設計; 4. 9月17日9月20日完成軟件及系統(tǒng)設計; 5. 9月21日9月25日完成設計報告。參考資料1康華光,陳大欽. 電子技術基礎模擬部分(第五版)m. 北京:高等教育出版社,20052劉勇. 數(shù)字電路 m.北京:電子工業(yè)出版社,20043陳正振. 電子電路設計與制作 m.廣西:廣西交通職業(yè)技術學院
3、信息工程系出版, 20074王法能. 單片機原理及應用 m. 北京:科學出版社, 2004指導教師簽字教研室主任簽字 2010年9月25日 學生姓名: 學號: 專業(yè)(班級): 課程設計題目: 基于atmega16單片機的可調日歷 指導教師評語: 成績: 指導教師: 2010年 9月 25日摘要 隨著科技的快速發(fā)展,時間的流逝,從觀察太陽、擺鐘到現(xiàn)在的電子鐘,人類不斷研究,不斷創(chuàng)新紀錄。美國dallas公司推出的具有涓細電流充電能的低功耗實時時鐘電路ds1302。它可以對年、月、日、周日、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能,而且ds1302時鐘的使用壽命長,誤差小。對于數(shù)字電子萬年歷采
4、用直觀的數(shù)字顯示,可以同時顯示年、月、日、周日、時、分、秒和溫度等信息,還具有時間校準等功能。該電路采用atmega16單片機作為核心,功耗小,能在3v的低壓工作,電壓可選用35v電壓供電。 綜上所述此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡潔、成本低廉等諸多優(yōu)點,符合電子儀器儀表的發(fā)展趨勢,具有廣闊的市場前景。本設計是基于avr系列的單片機進行的電子萬年歷設計,可以顯示年月日時分秒及周信息,具有可調整日期和時間功能。在設計的同時對單片機的理論基礎和外圍擴展知識進行了比較全面準備。在硬件與軟件設計時,沒有良好的基礎知識和實踐經驗會受到很大限制,每項功能實現(xiàn)時需要那種硬件,程序該如何編寫,
5、算法如何實現(xiàn)等,沒有一定的基礎就不可能很好的實現(xiàn)。關鍵詞:avr、ds1302時鐘、lcd顯示、可調節(jié)。abstractwith the rapid development of science and technology, the passage of time, from the observation of the sun, the pendulum clock to the present, humans continue to research, innovation record. dallas launched with the united states juan thin
6、current charge to low-power real time clock circuit ds1302. it can be year, month, day, sunday, hours, minutes, seconds for time, but also has leap-year compensation, and other functions, and the ds1302s long life, small error. for digital electronic calendar using an intuitive digital display that
7、can display year, month, day, sunday, hours, minutes, seconds, and temperature and other information, also has the time calibration and other functions. this circuit uses the atmega16 microcontroller as the core, power consumption, low-voltage work in 3v, the voltage can choose 3 5v supply voltage.t
8、his calendar has a convenient summary read, intuitive display, versatile, circuit simplicity, low cost and many other advantages, in line with the development trend of electronic instrumentation, and has broad market prospects.the design is based on the avr microcontroller series, the design of elec
9、tronic calendar, you can display year, month, day, hour and weekly information, date and time with adjustable features. while in the design of the theoretical basis of the mcu and peripheral expansion of a more comprehensive knowledge of preparation. hardware and software design, without good basic
10、knowledge and practical experience will be very limited, each feature is required to achieve the kind of hardware, procedures, how to write, how to implement such algorithms, there can not be a good basis implementation.keywords: avr microcontroller, ds1302 clock, lcd display, adjustable.目錄摘要i1引言12
11、方案論證22.1 單片機芯片的選擇方案和論證22.2 顯示模塊選擇方案和論證22.3 時鐘芯片的選擇方案和論證22.4 電路設計最終方案決定33 系統(tǒng)的硬件設計與實現(xiàn)43.1 電路設計框圖43.2 系統(tǒng)硬件概述43.3 主要單元電路的設計43.3.1 單片機主控制模塊的設計43.3.2 時鐘電路模塊的設計53.3.3 電路原理及說明54 系統(tǒng)的軟件設計84.1 程序流程框圖85 proteus軟件仿真95.1proteus isis簡介95.2proteus運行流程95.3proteus功能仿真106課程設計總結與體會12參考文獻13附錄一:系統(tǒng)電路圖14附錄二:系統(tǒng)程序141引言 隨著科技的
12、快速發(fā)展,時間的流逝,從觀察太陽、擺鐘到現(xiàn)在的電子鐘,人類不斷研究,不斷創(chuàng)新紀錄。美國dallas公司推出的具有涓細電流充電能的低功耗實時時鐘電路ds1302。它可以對年、月、日、周日、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能,而且ds1302時鐘的使用壽命長,誤差小。對于數(shù)字電子萬年歷采用直觀的數(shù)字顯示,可以同時顯示年、月、日、周日、時、分、秒和溫度等信息,還具有時間校準等功能。該電路采用atmega16單片機作為核心,功耗小,能在3v的低壓工作,電壓可選用35v電壓供電。 綜上所述此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡潔、成本低廉等諸多優(yōu)點,符合電子儀器儀表的發(fā)展趨勢,具有廣
13、闊的市場前景。本設計是基于avr系列的單片機進行的電子萬年歷設計,可以顯示年月日時分秒及周信息,具有可調整日期和時間功能。在設計的同時對單片機的理論基礎和外圍擴展知識進行了比較全面準備。在硬件與軟件設計時,沒有良好的基礎知識和實踐經驗會受到很大限制,每項功能實現(xiàn)時需要那種硬件,程序該如何編寫,算法如何實現(xiàn)等,沒有一定的基礎就不可能很好的實現(xiàn)。2 方案論證2.1 單片機芯片的選擇方案和論證方案一: 采用89c51芯片作為硬件核心,采用flash rom,內部具有4kb rom 存儲空間,能于3v的超低壓工作,而且與mcs-51系列單片機完全兼容,但是運用于電路設計中時由于不具備isp在線編程技術
14、, 當在對電路進行調試時,由于程序的錯誤修改或對程序的新增功能需要燒入程序時,對芯片的多次拔插會對芯片造成一定的損壞。方案二:采用atmega16, 16k字節(jié)的系統(tǒng)內可編程flash(具有同時讀寫的能力,即rww),能以3v的超底壓工作,同樣具有89c51的功能,且具有在線編程可擦除技術,512 字節(jié)eeprom,1k 字節(jié)sram,32 個通用i/o 口線,32 個通用工作寄存器,用于邊界掃描的jtag 接口,支持片內調試與編程,三個具有比較模式的靈活的定時器/ 計數(shù)器(t/c),片內/外中斷,可編程串行usart,有起始條件檢測器的通用串行接口,8路10位具有可選差分輸入級可編程增益(t
15、qfp 封裝) 的adc ,具有片內振蕩器的可編程看門狗定時器,一個spi 串行端口,以及六個可以通過軟件進行選擇的省電模式。所以選擇采用atmega16作為主控制系統(tǒng)。2.2 顯示模塊選擇方案和論證方案一: 采用led數(shù)碼管動態(tài)掃描,led數(shù)碼管價格適中,對于顯示數(shù)字合適,采用動態(tài)掃描法與單片機連接時,雖然占用的單片機口線少,但連線還需要花費一點時間,所以也不用此種作為顯示。方案二: 采用點陣式數(shù)碼管顯示,點陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對于顯示文字比較適合,如采用在顯示數(shù)字顯得太浪費,且價格也相對較高,所以也不用此種作為顯示。方案三: 采用lcd液晶顯示屏,液晶顯示屏的顯示功能強
16、大,可顯示大量文字,圖形,顯示多樣,清晰可見,所以在此設計中采用lcd液晶顯示屏。2.3 時鐘芯片的選擇方案和論證方案一: 直接采用單片機定時計數(shù)器提供秒信號,使用程序實現(xiàn)年、月、日、星期、時、分、秒計數(shù)。采用此種方案雖然減少芯片的使用,節(jié)約成本,但是,實現(xiàn)的時間誤差較大,所以不采用此方案。方案二: 采用ds1302時鐘芯片實現(xiàn)時鐘,ds1302芯片是一種高性能的時鐘芯片,可自動對秒、分、時、日、周、月、年進行計數(shù),而且精度高,位的ram做為數(shù)據(jù)暫存區(qū),工作電壓2.5v5.5v范圍內,2.5v時耗電小于300na。2.4 電路設計最終方案決定綜上各方案所述,對此次作品的方案選定: 采用atme
17、ga16作為主控制系統(tǒng); ds1302提供時鐘;lcd液晶顯示屏作為顯示。3 系統(tǒng)的硬件設計與實現(xiàn)3.1 電路設計框圖atmega16主控器時鐘模塊顯示模塊調節(jié)鍵盤圖1系統(tǒng)原理圖3.2 系統(tǒng)硬件概述本電路是由atmega16單片機為控制核心,具有在線編程功能,低功耗,能在3v超低壓工作;時鐘電路由ds1302提供,它是一種高性能、低功耗、帶ram的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進行計時,具有閏年補償功能,工作電壓為2.5v5.5v。采用三線接口與cpu進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或ram數(shù)據(jù)。ds1302內部有一個31*8的用于臨時性存放數(shù)據(jù)的r
18、am寄存器。可產生年、月、日、周日、時、分、秒,具有使用壽命長,精度高和低功耗等特點,同時具有掉電自動保存功能;溫度的采集由ds18b20構成;顯示部份由lcd液晶顯示屏顯示。3.3 主要單元電路的設計3.3.1 單片機主控制模塊的設計 atmega16單片機為40引腳雙列直插芯片,有四個i/o口p0,p1,p2,p3, mcs-51單片機共有4個8位的i/o口(p0、p1、p2、p3),每一條i/o線都能獨立地作輸出或輸入。單片機的最小系統(tǒng)如下圖所示,18引腳和19引腳接時鐘電路,xtal1接外部晶振和微調電容的一端,在片內它是振蕩器倒相放大器的輸入,xtal2接外部晶振和微調電容的另一端,
19、在片內它是振蕩器倒相放大器的輸出。第9引腳為復位輸入端,接上電容,電阻及開關后夠上電復位電路,20引腳為接地端,40引腳為電源端。 如圖2 所示:圖2 主控制系統(tǒng) 3.3.2 時鐘電路模塊的設計圖.3示出ds1302的引腳排列,其中vcc1為后備電源,vcc2為主電源。在主電源關閉的情況下,也能保持時鐘的連續(xù)運行。ds1302由vcc1或vcc2兩者中的較大者供電。當vcc2大于vcc1+0.2v時,vcc2給ds1302供電。當vcc2小于vcc1時,ds1302由vcc1供電。x1和x2是振蕩源,外接32.khz晶振。rst是復位/片選線,通過把rst輸入驅動置高電平來啟動所有的數(shù)據(jù)傳送。
20、rst輸入有兩種功能:首先,rst接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,rst提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當rst為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對ds1302進行操作。如果在傳送過程中rsts置為低電平,則會終止此次數(shù)據(jù)傳送,i/o引腳變?yōu)楦咦钁B(tài)。上電動行時,在vcc大于等于2.5v之前,rst必須保持低電平。中有在sclk 為低電平時,才能將rst置為高電平,i/o為串行數(shù)據(jù)輸入端(雙向)。sclk始終是輸入端。 圖3 ds1302的引腳圖3.3.3 電路原理及說明(1) 時鐘芯片ds1302的工作原理: ds1302在每次進行讀、寫程序前都必須初始化,先
21、把sclk端置 “0”,接著把rst端置“1”,最后才給予sclk脈沖;讀/寫時序如下圖4所示。ds1302的控制字的位7必須置1,若為0則不能把對ds1302進行讀寫數(shù)據(jù)。對于位6,若對程序進行讀/寫時ram=1,對時間進行讀/寫時,ck=0,位1至位5指操作單元的地址。位0是讀/寫操作位,進行讀操作時,該位為1;該位為0則表示進行的是寫操作??刂谱止?jié)總是從最低位開始輸入/輸出的。表.2為ds1302的日歷、時間寄存器內容:“ch”是時鐘暫停標志位,當該位為1時,時鐘振蕩器停止,ds1302處于低功耗狀態(tài);當該位為0時,時鐘開始運行?!皐p”是寫保護位,在任何的對時鐘和ram的寫操作之前,w
22、p必須為0。當“wp”為1時,寫保護位防止對任一寄存器的寫操作。(2) ds1302的控制字節(jié):ds1302控制字節(jié)的高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入ds1302中,位6如果0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取ram數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進行寫操作,為1表示進行讀操作,控制字節(jié)總是從最低位開始輸出(3) 數(shù)據(jù)輸入輸出(i/o)在控制指令字輸入后的下一個sclk時鐘的上升沿時,數(shù)據(jù)被寫入ds1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個sclk脈沖的下降沿讀出ds1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位
23、0位到高位7。(4) ds1302的寄存器ds1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數(shù)據(jù)位為bcd碼形式。此外,ds1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與ram相關的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內容。 ds1302與ram相關的寄存器分為兩類:一類是單個ram單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為c0hfdh,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的ram寄存器,此方式下可一次性讀寫所有的ram的31個字節(jié),命令控制字為feh(寫)、ffh(讀)。 3.3.4 顯示模
24、塊的設計如圖.4為lcd顯示模塊,和最小系統(tǒng)上的連線一樣,無需修改。圖4 lcd液晶顯示屏顯示模塊3.3.5調節(jié)鍵盤模塊的設計 如圖5為調節(jié)鍵盤模塊,它具有選擇調節(jié)對象按鍵、加鍵、減鍵、確定鍵、取消鍵。圖5 調節(jié)鍵盤模塊4 系統(tǒng)的軟件設計4.1 程序流程框圖初始化avr鍵盤掃描ds1302送值到avr是否按鍵按下?lcd顯示是否開始圖6-a主程序框架流程圖開始初始化讀日期、時間寫日期、時間顯示子程序鍵盤控制子程序日期修改子程序時間修改子程序顯示結果返回圖6-b主程序具體流程圖5 proteus軟件仿真5.1proteus isis簡介proteus isis是英國labcenter公司開發(fā)的電
25、路分析與實物仿真軟件。它運行于windows操作系統(tǒng)上,可以仿真、分析(spice)各種模擬器件和集成電路。該軟件的特點是:(1)全部滿足我們提出的單片機軟件仿真系統(tǒng)的標準,并在同類產品中具有明顯的優(yōu)勢。(2)具有模擬電路仿真、數(shù)字電路仿真、單片機及其外圍電路組成的系統(tǒng)的仿真、rs232動態(tài)仿真、i2 c調試器、spi調試器、鍵盤和lcd系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。(3)目前支持的單片機類型有:arm7系列、68000系列、8051系列、avr系列、pic12系列、pic16系列、pic18系列、z80系列、hc11系列以及各種外圍芯片。(4)支持大量的
26、存儲器和外圍芯片??傊?,該軟件是一款集單片機和spice分析于一身的仿真軟件,功能極其強大 ,可仿真arm、51、avr、pic。proteus啟動畫面:圖7 proteus啟動畫面5.2proteus運行流程proteus isis的工作界面是一種標準的windows界面,如圖所示。包括:標題欄、主菜單、標準工具欄、繪圖工具欄、狀態(tài)欄、對象選擇按鈕、預覽對象方位控制按鈕、仿真進程控制按鈕、預覽窗口、對象選擇器窗口、圖形編輯窗口。運行proteus程序后,進入軟件的主界面。通過左側工具欄中的p(從庫中選擇元件命令)命令,在pick devices 左側窗口中選擇所需元件的關鍵字,然后放置元件并
27、調整方向和位置以及參數(shù)設置,最后進行連線。proteus isis的工作界面:圖8 proteus isis的工作界面5.3proteus功能仿真proteus仿真效果最后載入hex文件后可以進行模擬仿真,可以全速運行也可以單步調試運行。圖9運行按鍵上電后后led顯示:圖10調節(jié)秒鐘:圖11調節(jié)分鐘:圖12調節(jié)時鐘:圖13調節(jié)日期:圖15調節(jié)月份:圖16調節(jié)年份:圖17點擊確定鍵顯示:圖18按鍵功能自上而下依次為:選擇修改項鍵、增大鍵、減小鍵、確定鍵、取消鍵。圖196課程設計總結與體會制作這次課程設計一切都是從零開始,從最簡單的畫流程圖起步,這次課程設計可以圓滿完成,跟單片機課程里面的課外作業(yè)
28、是離不開的。這次課程設計從開始到制作成功前后超過了一個星期。當電子萬年歷可以成功實現(xiàn)時,那種激動和喜悅只有自己可以體會。在整個設計過程中,充分發(fā)揮人的主觀能動性,自主學習,學到了許多沒學到的知識。較好的完成了設計,達到了預期的目的,完了最初的設想。對電路的設計、布局要先有一個好的構思,才顯得電路板美觀、大方。程序編寫中,由于思路不清晰,開始時遇到了很多的問題,經過靜下心來思考,和同學討論,理清了思路,反而得心應手。在此次設計中,知道了做凡事要有一顆平常的心,不要想著走捷徑,一步一腳印。也練就了我的耐心,做什么事都在有耐心。此次課程設計中學到了很多很多東西,這是最重要的??傊?,此次課設使我的能力
29、得到了全方位的提高,使得我的操作能力和專業(yè)技能都有了很大的提高。在做課程設計的日子里得到了楊老師的悉心指導和同學的幫助,在此向他們致以誠摯的謝意。感謝提供相關技術幫助的老師和同學,你們的支持和鼓勵使我對這次的設計完成有了信心和動力,我在此深表謝意。參考文獻1康華光,陳大欽. 電子技術基礎模擬部分(第五版)m. 北京:高等教育出版社,20052劉勇. 數(shù)字電路 m.北京:電子工業(yè)出版社,20043陳正振. 電子電路設計與制作 m.廣西:廣西交通職業(yè)技術學院信息工程系出版, 20074王法能. 單片機原理及應用 m. 北京:科學出版社, 2004附錄一:系統(tǒng)電路圖附錄二:系統(tǒng)程序/-/ 名稱: 用
30、ds1302與12864lcd設計的可調式電子日歷與時鐘/-/ 說明: 本例運行時會以pc時間為默認時間開始顯示,運行過程中可以通過/ k1選擇調節(jié)對象,所選中的調節(jié)對象反相顯示,k2,k3進行加減,/ k4保存,k5則用于取消保存./ 本例自動將日期時間調節(jié)控制在合法范圍內,星期調節(jié)會在調整/ 年月日時自動完成,閏年問題也能自動處理. / /-#include #include #include #include #define int8u unsigned char#define int16u unsigned int/按鍵定義/當前調節(jié)的時間對象:秒,分,時,日,月,年(0,1,2,3,
31、4,6)/5對應星期,星期調節(jié)由年月日調節(jié)自動完成char adjust_index = -1;/一年中每個月的天數(shù),2月的天數(shù)由年份決定int8u monthsdays = 0,31,0,31,30,31,30,31,31,30,31,30,31;/所讀取的日期時間(分別是秒,分,時,日,月,周,年)extern int8u datetime7;/在調節(jié)日期時間時,用該位決定是否反相顯示extern int8u reverse_display ;/12864lcd及ds1302相關函數(shù)/以下點陣均用zimo軟件提取/年月日,星期,時分秒漢字點陣(16x16)-prog_uchar date_
32、time_words = /*-年-*/0x40,0x20,0x10,0x0c,0xe3,0x22,0x22,0x22,0xfe,0x22,0x22,0x22,0x22,0x02,0x00,0x00,0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xff,0x04,0x04,0x04,0x04,0x04,0x04,0x00,/*-月-*/0x00,0x00,0x00,0x00,0x00,0xff,0x11,0x11,0x11,0x11,0x11,0xff,0x00,0x00,0x00,0x00,0x00,0x40,0x20,0x10,0x0c,0x03,0x0
33、1,0x01,0x01,0x21,0x41,0x3f,0x00,0x00,0x00,0x00,/*-日-*/0x00,0x00,0x00,0xfe,0x42,0x42,0x42,0x42,0x42,0x42,0x42,0xfe,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3f,0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x3f,0x00,0x00,0x00,0x00,/*-星-*/0x00,0x00,0x00,0xbe,0x2a,0x2a,0x2a,0xea,0x2a,0x2a,0x2a,0x2a,0x3e,0x00,0x00,0x00
34、,0x00,0x48,0x46,0x41,0x49,0x49,0x49,0x7f,0x49,0x49,0x49,0x49,0x49,0x41,0x40,0x00,/*-期-*/0x00,0x04,0xff,0x54,0x54,0x54,0xff,0x04,0x00,0xfe,0x22,0x22,0x22,0xfe,0x00,0x00,0x42,0x22,0x1b,0x02,0x02,0x0a,0x33,0x62,0x18,0x07,0x02,0x22,0x42,0x3f,0x00,0x00,/*-時-*/0x00,0xfc,0x44,0x44,0x44,0xfc,0x10,0x90,0x10,
35、0x10,0x10,0xff,0x10,0x10,0x10,0x00,0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7f,0x00,0x00,0x00,0x00,/*-分-*/0x80,0x40,0x20,0x98,0x87,0x82,0x80,0x80,0x83,0x84,0x98,0x30,0x60,0xc0,0x40,0x00,0x00,0x80,0x40,0x20,0x10,0x0f,0x00,0x00,0x20,0x40,0x3f,0x00,0x00,0x00,0x00,0x00,/*-秒-*/0x12,0x12,0
36、xd2,0xfe,0x91,0x11,0xc0,0x38,0x10,0x00,0xff,0x00,0x08,0x10,0x60,0x00,0x04,0x03,0x00,0xff,0x00,0x83,0x80,0x40,0x40,0x20,0x23,0x10,0x08,0x04,0x03,0x00;/星期幾的漢字點陣(16x16)-prog_uchar weekday_words = /*-星-*/0x40,0x20,0x10,0x0c,0xe3,0x22,0x22,0x22,0xfe,0x22,0x22,0x22,0x22,0x02,0x00,0x00,0x04,0x04,0x04,0x04,
37、0x07,0x04,0x04,0x04,0xff,0x04,0x04,0x04,0x04,0x04,0x04,0x00,/*-期 -*/0x00,0x00,0x00,0x00,0x00,0xff,0x11,0x11,0x11,0x11,0x11,0xff,0x00,0x00,0x00,0x00,0x00,0x40,0x20,0x10,0x0c,0x03,0x01,0x01,0x01,0x21,0x41,0x3f,0x00,0x00,0x00,0x00,/*-一 -*/0x80,0x40,0x20,0x98,0x87,0x82,0x80,0x80,0x83,0x84,0x98,0x30,0x60
38、,0xc0,0x40,0x00,0x00,0x80,0x40,0x20,0x10,0x0f,0x00,0x00,0x20,0x40,0x3f,0x00,0x00,0x00,0x00,0x00,/*-二 -*/0x12,0x12,0xd2,0xfe,0x91,0x11,0xc0,0x38,0x10,0x00,0xff,0x00,0x08,0x10,0x60,0x00,0x04,0x03,0x00,0xff,0x00,0x83,0x80,0x40,0x40,0x20,0x23,0x10,0x08,0x04,0x03,0x00/*-三 -*/0x00,0xfc,0x44,0x44,0x44,0xfc
39、,0x10,0x90,0x10,0x10,0x10,0xff,0x10,0x10,0x10,0x00,0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7f,0x00,0x00,0x00,0x00,/*-五-*/0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x800x00,0xfc,0x44,0x44,0x44,0xfc,0x10,0x00,0x07,0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x80,0x7f,0x00,0x00,0x00,0x00,/*-
40、六-*/0x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x800x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x800x04,0x04,0x04,0x07,0x00,0x00,0x03,0x40,0x800,0x800,0x00,0x03,0x800,/*-日-*/0x00,0xff,0x11,0x11,0x11,0x11,0x11,0xff,0x00,0x00,0x00,0x00, 0x800,0x800,0x00,0x03,0x00,0x40,0x20,0x10,0x0c,0x03,0x01,0x01,0x01,0x21,
41、0x41,0x3f,0x00,0x00,;/半角數(shù)字點陣(8x16)-prog_uchar digits = 0x00,0xe0,0x10,0x08,0x08,0x10,0xe0,0x00,0x00,0x0f,0x10,0x20,0x20,0x10,0x0f,0x00,/00x00,0x10,0x10,0xf8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3f,0x20,0x20,0x00,0x00,/10x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,/
42、20x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0e,0x00,/30x00,0x00,0xc0,0x20,0x10,0xf8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3f,0x24,0x00,/40x00,0xf8,0x08,0x88,0x88,0x08,0x08,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0e,0x00,/50x00,0xe0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0f,0x1
43、1,0x20,0x20,0x11,0x0e,0x00,/60x00,0x38,0x08,0x08,0xc8,0x38,0x08,0x00,0x00,0x00,0x00,0x3f,0x00,0x00,0x00,0x00,/70x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1c,0x22,0x21,0x21,0x22,0x1c,0x00,/80x00,0xe0,0x10,0x08,0x08,0x10,0xe0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0f,0x00 /9;int8u h_offset = 10, v_p
44、age_offset = 0; /水平與垂直偏移/-/ 判斷是否為閏年/-int8u isleapyear(int16u y) int temp;y=temp;if(y%4=0)temp=y;retun(int8u);else temp=y+1;retun(int8u)/-/ 求自2000.1.1開始的任何一天是星期幾/ 函數(shù)沒有通過求出總天數(shù)后再求星期幾,/ 因為求總天數(shù)可能會越出int16u的范圍/-void refreshweekday() time-datestring0 = 2; time-datestring1 = 0; time-datestring2 = time-year/1
45、0 + 0; time-datestring3 = time-year%10 + 0; else time-datestring0 = ; time-datestring1 = ; time-datestring2 = ; time-datestring3 = ;time-datestring4 = /;if(hide_monthdatestring5 = time-month/10 + 0; time-datestring6 = time-month%10 + 0; else time-datestring5 = ; time-datestring6 = ;time-datestring7
46、= /;if(hide_daydatestring8 = time-day/10 + 0; time-datestring9 = time-day%10 + 0; elsetime-datestring8 = ;time-datestring9 = ; if(hide_weekweek%10 + 0;/-/ 年月日時分+/-/-void datetime_adjust(char x) time-datestring10 = 0; /字符串末尾加 0 ,判斷結束字符void timetostr(systemtime *time) /將時,分,秒數(shù)據(jù)轉換成液晶顯示字符放到數(shù)組 timestring; if(hide_hourtimestring0 = time-hour/10 + 0; time-timestring1 = time-hour%10 + 0; else time-tim
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑工程保險合同協(xié)議書
- 橋梁下部結構施工合同樣本
- 植物園照明設施安裝合同
- 高爾夫賽事場地租賃合同范本
- 機場物業(yè)管理咨詢協(xié)議
- 大壩工程設備樁機租賃協(xié)議
- 報關委托協(xié)議與委托發(fā)起
- 2024美容院股權轉讓與智慧門店建設合同3篇
- 二零二五年度離婚協(xié)議書中關于財產分割、子女撫養(yǎng)與贍養(yǎng)費協(xié)議書模板
- 二零二五年度房產買賣合同交房標準補充協(xié)議書3篇
- 【學易金卷】2023-2024學年四年級數(shù)學上冊期末全真模擬提高卷(三)(答題卡)(北師大版)
- 部編 2024版歷史七年級上冊期末(全冊)復習卷(后附答案及解析)
- 四川省成都市2024年初中學業(yè)水平考試生物學試卷
- 山東省濟南市歷城區(qū)歷城第二中學2025屆高一數(shù)學第一學期期末監(jiān)測模擬試題含解析
- 供應鏈安全培訓教材課件
- 《籃球移動技術 行進間傳球》教案(共三篇)
- 第三章第四節(jié):“三新”背景下沉淀轉化實驗的一體化微型裝置及其拓展應用 教學設計 2024-2025學年高二上學期化學人教版(2019)選擇性必修1
- 人教版高中生物必修1-第1、2章測評(B)
- 電梯安全隱患排除報告范文
- 2024年體育留學白皮書
- 《向心力》 教學課件
評論
0/150
提交評論