




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、30微機與單片機綜合課程設計說明書課題名稱: 基于單片機和DS1302的時鐘設計 學 號: 1304210102 班 級: 13級過程自動化3班 姓 名: 蔡才華 成 績: 指導教師: 陳 裕 國 課題工作時間: 2016-1-4 至 2016-1-15 武漢工程大學電氣信息學院一、課程設計任務和基本要求: (一) 設計任務利用單片機和DS1302時鐘芯片設計一個簡易時鐘,完成對時鐘芯片的讀寫編程,將讀到的時間在數(shù)碼管顯示出來。(二) 基本要求通過本系統(tǒng)的設計,了解DS1302時鐘芯片和數(shù)碼管顯示的工作原理并掌握其編程方法;進一步熟悉單片機系統(tǒng)設計方法二、指定參考書:1. 徐愛鈞,徐陽 編著。
2、單片機原理與應用基于Proteus虛擬仿真技術(第2版),機械工業(yè)出版社。2014年7月 2. 趙廣元 編著。proteus輔助的單片機原理實踐基礎設計、課程設計、畢業(yè)設計,北京航空航天大學出版社。2013年9月答辯記錄:答辯意見及答辯成績答辯教師(簽字): 20 年 月 日30 目錄1. 系統(tǒng)分析 1.1 ds1302芯片.6 1.1.1 引腳圖及寄存器.6 1.1.2 讀寫時序說明.8 1.1.3 內(nèi)部電路圖.9 1.2 數(shù)碼管顯示原理.102. 程序設計 2.1 總體設計.11 2.2 分塊程序設計.12 2.2.1 ds1302初始化模塊.13 2.2.2 數(shù)碼管顯示模塊.16 2.2
3、.3 主函數(shù)模塊. 17 3.proteus仿真 3.1 電路圖的搭建.18 3.1.1元件庫的選擇.18 3.1.2 元件的布局.19 3.2 仿真運行.21 3.2.1 keil軟件的使用.21 3.2.2 proteus運行效果圖.23 4.總結.24 參考資料.24附錄一 源程序清單.25附錄二 電路原理圖.30 1.系統(tǒng)分析1.1 DS1302時鐘芯片DS1302時鐘芯片, 該芯片是美國DALLAS公司推出的一種高性能、低功耗的實時時鐘芯片,附加31字節(jié)靜態(tài)RAM,采用SPI三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號和RAM數(shù)據(jù)。實時時鐘可提供秒、分、時
4、、日、星期、月和年,一個月小與31天時可以自動調(diào)整,且具有閏年補償功能。工作電壓寬達4.55.5V。采用雙電源供電(主電源和備用電源),可設置備用電源充電方式,提供了對后背電源進行涓細電流充電的能力。 DS1302用于數(shù)據(jù)記錄,特別是對某些具有特殊意義的數(shù)據(jù)點的記錄上,能實現(xiàn)數(shù)據(jù)與出現(xiàn)該數(shù)據(jù)的時間同時記錄,因此廣泛應用于測量系統(tǒng)中。 1.1.1 引腳圖及寄存器 內(nèi)部電路: 各引腳的功能為:Vcc1:主電源;Vcc2:備份電源。當 Vcc2Vcc1+0.2V 時, 由 Vcc2向 DS1302供電,當 Vcc20; i- ) /循環(huán)8次移位 SCLK = 0;temp = dat;DIO = (
5、bit)(temp&0x01); /每次傳輸?shù)妥止?jié)dat = 1; /右移一位SCLK = 1; 分析: 針對本課題的要求,寫字節(jié)函數(shù)的作用是對1302進行初始化。2) 讀字節(jié)函數(shù): 將ds1302 I/O口的數(shù)據(jù)傳給ACC寄存器的最高位,利用循環(huán)語句移位,依次將8位傳遞到ACC寄存器,此函數(shù)返回值ACC。 / DS1302讀字節(jié)函數(shù)uchar DS1302ReadByte()uchar i,dat1,dat2; CE = 1;for (i=8; i0; i-)ACC_7 = DIO;SCLK = 1;ACC = 1;SCLK = 0; CE=0;dat1=ACC;dat2=dat1/16;
6、/數(shù)據(jù)進制轉換,十六進制轉換成十進制dat1=dat1%16; dat1=dat2*10+dat1;return dat1; 分析: 讀字節(jié)函數(shù)是將ds1302芯片中的時鐘信號傳給單片機的主要部分。3) 地址和數(shù)據(jù)發(fā)送函數(shù): 先寫地址addr,再給數(shù)據(jù)。先將要讀出的時間信號的地址告訴ds1302,單片機再將數(shù)據(jù)傳到I/O口。 / 地址、數(shù)據(jù)發(fā)送函數(shù) void DS1302WriteCmd (uchar addr,uchar dat) DS1302WriteByte(addr); /發(fā)送地址 DS1302WriteByte(dat); /發(fā)送數(shù)據(jù) 分析:此函數(shù)可以在本程序中實現(xiàn)對ds1302芯片
7、的初始化。4) 數(shù)據(jù)讀取函數(shù): 先寫地址,再返回數(shù)據(jù)。 / 數(shù)據(jù)讀取函數(shù) uchar DS1302ReadCmd (uchar addr) /數(shù)據(jù)讀取子程序 DS1302WriteByte(addr); /發(fā)送地址 return (DS1302ReadByte(); /接收數(shù)據(jù) 5) 初始化時間: 先禁止寫保護,再初始化時間,最后開啟寫保護。 / DS1302初始化函數(shù)void DS1302Init(void) /初始化DS1302 DS1302WriteCmd (0x8E,0x00); /禁止寫保護DS1302WriteCmd (0x80,0x00); /秒位初始化DS1302WriteCm
8、d (0x82,0x00); /分鐘初始化DS1302WriteCmd (0x84,0x20); /小時初始化DS1302WriteCmd (0x86,0x01);/日初始化DS1302WriteCmd (0x88,0x01);/月初始化DS1302WriteCmd (0x8c,0x12);/年初始化DS1302WriteCmd (0x8E,0x80); /允許寫保護分析:此函數(shù)的初始化值可由使用者自己設定。 2.2.2 數(shù)碼管顯示模塊。 此函數(shù)作用是將單片機中ACC寄存器中時間數(shù)據(jù)值顯示到七段數(shù)碼管中。其中,P3端口接受位選信號,P2端口接受段選信號。/ 數(shù)碼管顯示函數(shù)void LEDDis
9、play() uchar i;DisplayBuf7 = TimeBuf2%10;DisplayBuf6 = TimeBuf2/10;DisplayBuf4 = TimeBuf1%10;DisplayBuf3 = TimeBuf1/10;DisplayBuf1 = TimeBuf0%10;DisplayBuf0 = TimeBuf0/10;for(i = 0 ; i 8; i+) /數(shù)碼管動態(tài)顯示P3 = Segi;P2 = tableDisplayBufi;delay(1); /延時1ms讓數(shù)碼管正常顯示出來2.2.3 主函數(shù)模塊。 TimBuf數(shù)組變量存儲從ds1302中讀取的數(shù)據(jù)。 /
10、主函數(shù)void main()DS1302Init();while(1)TimeBuf2=DS1302ReadCmd(0x81); /0x81,0x83,0x85分別為秒,分,時讀地址位TimeBuf1=DS1302ReadCmd(0x83);TimeBuf0=DS1302ReadCmd(0x85);/TimeBuf2=DS1302ReadCmd(0x87); /0x87,0x89,0x8b分別為年,月,日讀地址位/TimeBuf1=DS1302ReadCmd(0x89);/TimeBuf0=DS1302ReadCmd(0x8d);LEDDisplay();3 Proteus仿真 3.1電路圖搭
11、建 3.1.1元件庫的選擇 由圖上的操作后元件庫如下: 3.1.2元件的布局: ds1302與C51的連接: 注:DIO接單片機P1.0口 SCLK接單片機P1.1口 RST接單片機P1.2口 數(shù)碼管與C51的連接: 位選接P3口,段選接P2口。 注:當proteus 原理圖十分復雜且連線操作困難時,可以用Lab命令標記,這樣可以減少連線的數(shù)量從而使原理圖更簡潔直觀。具體操作如下: 第一步 “Lab”鍵 第二步: 點擊需要標號的引腳,改成對應的編號 注意: 相連的引腳標號一定要一致,否則會導致錯連進而影響電路圖的正確性。3.2 仿真運行: 3.2.1 keil軟件的使用 本課設借助keil編譯
12、環(huán)境實現(xiàn)軟件驅(qū)動:先建工程再建文件 3.2.2 proteus仿真效果4 總結 本次單片機機課程設計的選題不僅僅完成了對C51編程、protues軟件的學習,同時對于單片機硬件的了解掌握更加完善,在硬件電路搭配過程中更是提高了動手能力以及加深模擬電路理論知識的理解。在完成本次課程設計的過程中,開拓了視野,獲得了到以前上課所不能學到的知識和經(jīng)驗,會為以后的課程學習帶來很大的幫助。 參考書 1. 徐愛鈞,徐陽 編著。單片機原理與應用基于Proteus虛擬仿真技術(第2版),機械工業(yè)出版社。2014年7月 2. 趙廣元 編著。proteus輔助的單片機原理實踐基礎設計、課程設計、畢業(yè)設計,北京航空航
13、天大學出版社。2013年9月附錄一:完整的源程序代碼 #include#define uchar unsigned char#define uint unsigned intUchar code table=0x3F,0X30,0X5b,0X4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40;/共陰數(shù)碼管0-9,滅,-編碼uchar code Seg=0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87;/位選編碼uchar data DisplayBuf=0,0,11,0,0,11,0,0;/時分秒顯示緩沖區(qū)uchar data T
14、imeBuf=0,0,0;/時分秒值sbit ACC_7 = ACC7; /位尋址寄存器定義sbit SCLK = P11; / DS1302時鐘信號 7腳sbit DIO= P10; / DS1302數(shù)據(jù)信號 6腳sbit CE = P12; / DS1302片選 5腳/ 延時函數(shù)void delay(uint i)uint j;for(i; i 0; i-)for(j = 110; j 0; j-);/ DS1302寫字節(jié)函數(shù)void DS1302WriteByte(uchar dat)uchar i = 0,temp = 0;CE = 0; /CE引腳為低,數(shù)據(jù)傳送中止SCLK = 0;
15、 /清零時鐘總線CE = 1; /CE引腳為高,邏輯控制有效for (i=8; i0; i- ) /循環(huán)8次移位 SCLK = 0;temp = dat;DIO = (bit)(temp&0x01); /每次傳輸?shù)妥止?jié)dat = 1; /右移一位SCLK = 1;/ DS1302讀字節(jié)函數(shù)uchar DS1302ReadByte()uchar i,dat1,dat2; CE = 1;for (i=8; i0; i-)ACC_7 = DIO;SCLK = 1;ACC = 1;SCLK = 0; CE=0;dat1=ACC;dat2=dat1/16; /數(shù)據(jù)進制轉換,十六進制轉換成十進制dat1=
16、dat1%16; dat1=dat2*10+dat1;return dat1; / 地址、數(shù)據(jù)發(fā)送函數(shù)void DS1302WriteCmd (uchar addr,uchar dat) DS1302WriteByte(addr); /發(fā)送地址DS1302WriteByte(dat); /發(fā)送數(shù)據(jù)/ 數(shù)據(jù)讀取函數(shù)uchar DS1302ReadCmd (uchar addr) /數(shù)據(jù)讀取子程序 DS1302WriteByte(addr); /發(fā)送地址return (DS1302ReadByte(); /接收數(shù)據(jù)/ DS1302初始化函數(shù)void DS1302Init(void) /初始化DS1
17、302 DS1302WriteCmd (0x8E,0x00); /禁止寫保護DS1302WriteCmd (0x80,0x00); /秒位初始化DS1302WriteCmd (0x82,0x00); /分鐘初始化DS1302WriteCmd (0x84,0x20); /小時初始化DS1302WriteCmd (0x86,0x01);/日初始化DS1302WriteCmd (0x88,0x01);/月初始化DS1302WriteCmd (0x8c,0x12);/年初始化DS1302WriteCmd (0x8E,0x80); /允許寫保護/ 數(shù)碼管顯示函數(shù)void LEDDisplay() uchar i;DisplayBuf7 = TimeBuf2%10;DisplayBuf6 = TimeBuf2/10;DisplayBuf4 = TimeBuf1%10;DisplayBuf3 = TimeBuf1/10;DisplayBuf1 = TimeBuf0%10;DisplayBuf0 = TimeBuf0/10;for(i = 0 ; i 8; i+) /數(shù)碼管動態(tài)顯示P3 = Segi;P2 = tableDisplayBufi;delay(1); /延時1ms讓數(shù)碼管正常顯示出來/ 主函數(shù)void main
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權】 IEC 62024-2:2024 RLV EN High frequency inductive components - Electrical characteristics and measuring methods - Part 2: Rated current of inductors for DC-to-DC converters
- 2025-2030年中國鑄造機械制造行業(yè)運營狀況與發(fā)展前景分析報告
- 2025-2030年中國金屬波紋管市場發(fā)展趨勢規(guī)劃研究報告
- 2025-2030年中國聚氨酯慢回彈海綿女性內(nèi)衣市場運營狀況及發(fā)展規(guī)劃分析報告
- 2025-2030年中國綜合肺功能測定儀市場發(fā)展狀況及投資策略研究報告
- 2025-2030年中國純鋯珠行業(yè)運行現(xiàn)狀及發(fā)展前景分析報告
- 2025-2030年中國礦渣粉行業(yè)運營格局及發(fā)展趨勢分析報告
- 2025-2030年中國真空搬運機械行業(yè)競爭格局及發(fā)展趨勢分析報告
- 2025-2030年中國盆景行業(yè)競爭狀況規(guī)劃研究報告
- 濮陽職業(yè)技術學院《藥物合成實驗》2023-2024學年第二學期期末試卷
- 文化產(chǎn)業(yè)管理專業(yè)大學生職業(yè)生涯規(guī)劃書
- DSM-V美國精神疾病診斷標準
- 文獻的載體課件
- 2023年高考語文全國乙卷《長出一地的好蕎麥》解析
- 混凝土強度回彈檢測方案
- 歷年中考地理生物變態(tài)難題
- 研學旅行課程標準(一)-前言、課程性質(zhì)與定位、課程基本理念、課程目標
- 部編版二年級下冊語文教案全冊
- 解放牌汽車CA10B后鋼板彈簧吊耳加工工藝及夾具設計哈
- 大學??啤稒C電傳動控制》課件
- 高中地理高清區(qū)域地理填圖冊
評論
0/150
提交評論