基于Arduino的智能鬧鐘設計與制作_第1頁
基于Arduino的智能鬧鐘設計與制作_第2頁
基于Arduino的智能鬧鐘設計與制作_第3頁
基于Arduino的智能鬧鐘設計與制作_第4頁
基于Arduino的智能鬧鐘設計與制作_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

湖南商務職業(yè)技術學院畢業(yè)設計

目錄

1產品功能分析...............................................................................................................1

1.1設計背景及內容................................................................................................1

1.2功能分析............................................................................................................1

2方案設計.......................................................................................................................1

2.1Arduino開發(fā)板的選擇方案.............................................................................1

2.2鬧鐘模塊的方案選擇........................................................................................2

2.3LCD顯示屏電路的選擇.....................................................................................2

2.4系統框圖............................................................................................................3

3產品硬件設計...............................................................................................................3

3.1Arduino電路設計.............................................................................................3

3.2DS1302鬧鐘模塊電路設計...............................................................................6

3.3LED信號指示燈電路設計.................................................................................7

3.4蜂鳴器報警電路(低電平有效)設計............................................................8

4產品軟件設計...............................................................................................................8

4.1Arduino程序開發(fā)環(huán)境.....................................................................................8

4.2Arduino軟件開發(fā)流程.....................................................................................9

4.3Arduino程序燒錄軟件介紹...........................................................................10

4.4主程序流程圖..................................................................................................11

5系統組裝與調試.........................................................................................................11

5.1產品模塊組裝和連線......................................................................................11

5.2系統調試..........................................................................................................12

5.2.1程序軟件調試.......................................................................................12

5.2.2系統硬件調試.......................................................................................13

6產品使用說明......................................................14

參考資料............................................................15

附錄1元器件清單...................................................16

I

湖南商務職業(yè)技術學院畢業(yè)設計

附錄2電路原理圖...................................................16

附錄3PCB設計圖........................................................................................................17

附錄4作品實物照.......................................................................................................18

附錄5軟件程序代碼...................................................................................................19

II

湖南商職業(yè)技術學院畢業(yè)設計

基于Arduino的智能鬧鐘設計與制作

1產品功能分析

1.1設計背景及內容

在現代科學技術的發(fā)展下和人民生活節(jié)奏的不斷提高,人們對準時的要求

越來越大,所以我決定制作一個智能鬧鐘。產品是由DS1302鬧鐘芯片,LCD1602

液晶顯示屏。利用Arduino開發(fā)板,開發(fā)創(chuàng)作一個智能鬧鐘系統,對比其他普通

的鬧鐘發(fā)生了質的變化,本設計是定時鬧鐘的設計,由Arduino開發(fā)板為核心,

輔以其他的模塊,構成的一個基于Arduino智能定時鬧鐘。我們就用Arduino的

開發(fā)板來完成我們的程序的設計與制作。

(1)設計內容

1)系統方案的選擇;

2)程序和模塊的組成及使用方法;

3)硬件、軟件調試。

(2)設計要求及預期成果

1)顯示功能:采用顯示屏顯示,可以顯示當前時間;

2)鬧鈴功能:當數值達到設定值時,蜂鳴器報警,RGB燈閃爍;

3)擴展功能:可以顯示溫濕度。

1.2功能分析

(1)程序導入開發(fā)板后顯示屏顯示時間,通過按鍵設置好鬧鈴時間,當顯

示屏時間達到設置的鬧鈴時間,蜂鳴器就開始播放,并且LED燈閃爍。

(2)按下按鈕,顯示溫濕度。

2方案設計

2.1Arduino開發(fā)板的選擇方案

arduino/genuinounoo這是基于軟件atmega328p的一款單片式主機應用開

發(fā)板。它自帶有14個高頻數字信號輸入/模擬輸出引腳(其中6個引腳可以被用

作icpwm數字輸出),6個高頻模擬數字輸入端引腳,16mhz晶振,usb總線連接,

1

湖南商職業(yè)技術學院畢業(yè)設計

電源接口插孔,icspz連接頭和一個復位供電按鈕。僅僅你需要通過a和usb兩

個連接線把它一直連到一臺電腦,又或是通過一個ac-to-dc適配器或者是鋰電

池給它進行供電,就進行了應用。我們可以更改您的UNO而不必擔心做錯了什么

事,最糟的狀況就只有給您換幾元的芯片,然后重新啟動。選為Arduino軟件環(huán)

境(IDE)1.0的基礎發(fā)布。

2.2鬧鐘模塊的方案選擇

方案一

ds1302是一種具有高性能、低驅動功耗、帶一個ram的自動實時三線時鐘

控制電路,它不僅可以對各種不同時間段的時鐘需要準確的實時顯示,進行自動

計時,還可以擁有各種農歷的顯示效果,工作電壓為2.5v到5v。而在使用三線時

鐘接口時它還有一個cpu可以進行時鐘同步數據通信,并且還可通過采用多線

突發(fā)通信方式一次同時傳送多個千兆字節(jié)的三線時鐘同步信號或多個ram實時

數據。ds1302內部中還有一個31×8的接口用作顯示臨時性能和存放數據的一

個ram數據寄存器。ds1302是基于ds1202的一次更新優(yōu)化產物,與之前ds1202

相容,但同時新增了一個主驅動供電/后備驅動電源雙向的電源接口,并且同時

配備了對后備和主供電電源采用涓細來源電壓進行補充的供電能力。

方案二

ds12c887可實時分析計算到2100年前的七種不同時期日歷中的日期時間

信息并且內部自帶一個閏年公歷日期信息補償;主機內部自帶晶體振蕩器和一

個容量鋰電池。在完全采用沒有外部專用補充電源的特殊條件使用情況下,即使

它雖然可連續(xù)每天工作10年,但是不會減小。

綜上所述,故選擇方案一。

2.3LCD顯示屏電路的選擇

lcd1602是一款沒有各種工業(yè)英語字母帶有文字點陣型號的工業(yè)液晶電視

文字顯示,只能同樣可以用來直接表示16x02即32個字符。lcd1602液晶電視應

用數字電子顯示器硬件設計中的基本原理硬件分析原則lcd1602液晶電視應用

數字電子顯示器的基本硬件設計基理原則之一也就是充分運用各種工業(yè)字母液

晶電視的應用電子物理學及其工作區(qū)域特點,使用具有限制性的電流對其在適

用于數字顯示器的工作區(qū)域內對電流密度加以限制進行直接限制,有一個交流

電就同樣可以實現有限制電流表的顯示,這樣一來即使也有就可以直接的使顯

示器看起來并做出好的顯示圖形。1602液晶也指的可以說是叫1602字符型號的

2

湖南商職業(yè)技術學院畢業(yè)設計

工業(yè)字母液晶,它主要指的也就是一種專門自行設計的可用來生產用作直接顯

示各種工業(yè)英文字母、數字、符號等的帶有工業(yè)字母點陣型號的數字顯示液晶

模塊。

2.4系統框圖

本設計由Arduino電路+鬧鐘模塊電路+蜂鳴器報警電路+LCD液晶顯示屏電

路+LED燈電路組成。

圖1系統框圖

3產品硬件設計

3.1Arduino電路設計

arduinouno一些通用微控制器最常常被采用的引腳分別是基于fpga的at

mel的atmega328。arduinouno用于芯片組和開發(fā)板的引腳復用信號輸入分配電

路結構圖其中引腳包含14個數字模擬信號數字引腳、6個數字模擬引腳信號輸

入、電源電流驅動引腳插孔、usb兩個總線接口連接和一個新的icsp總線連接

插頭。引腳的不同功能復用條件選項以及功能我們已經提供了更多的不同引腳

復用選項,例如使用電源電流驅動和穩(wěn)壓發(fā)電機、led、讀取器和信號傳感器等。

在這樣一篇技術文章中,我們將詳細地來介紹一些基于arduinouno引腳的不同

3

湖南商職業(yè)技術學院畢業(yè)設計

復用選項功能。

(1)Arduino主要參數

8K字節(jié)程序存儲空間;

512字節(jié)數據存儲空間;

內帶4K字節(jié)EEPROM存儲空間;

可直接使用串口下載。

(2)Arduino的主要特性

ArduinoUNO的存儲空間分三種:

其中0.5kb則是可以直接作為一個t和boot區(qū)存儲客戶可以用于直接用

來儲存整個基于引導類的應用程序,實現通過一個數據庫的串口直接存儲下載

整個引導應用程序的直接存儲數據功能;雖然來說相對于現在動輒幾百gb的普

通固態(tài)主機硬盤,可能有人還會覺得32kb太小了,但是在我的這臺單片機上,32

kb已經完全能夠可以起作用來直接存儲很大的整個引導應用程序了。sram,容量

一般固定為2kb。sram中的容量一般相當于一臺大型計算機的外部數據處理內

存,當它的cecpui需要在其中進行外部數據緩存運算時,需要在其中內部數據

開辟一定的存儲空間作為存儲外部數據流的空間。但是當它的cearduinom被強

制斷電或自動關機復位后,其中的所有外部數據緩存內容都可能會自動遭到丟

失。eeprom,容量一般固定為1kb。eeprom的簡體中文技術全稱是它為一種帶非

可斷電自動可編程只讀擦寫的非可斷電自動可編程只讀擦寫數據只讀寫入數據

表的存儲器,是一種能夠允許單個用戶自動擦寫數據可更改的非電可編程或只

讀擦寫數據表的存儲器,其主要技術特點之一就就是在eearduinom被強制斷電

或自動擦寫復位后,其中的所有擦寫數據不會自動復位丟失。

(3)Arduino相關引腳

VCC供電電壓。

GND接地。

數字量I/0引腳-14個(引腳編號0-13)

模擬量輸入引腳-6個(引腳編號A0-A5)

icsp引腳-2組(每組6個):引腳可用于通過一個編程器件電纜進行連接接

入到一個編程器件或設備vvvin引腳||第一腳:該引腳不可用于直接使用外部

模擬電源為電源arduinouno可為開發(fā)板設備供電5v和3v3電源接口。

ioref-該引腳通常是一個輸入/值和輸出電壓參考,它分別提供了保證微控

制器正常工作的一個參考輸入電壓。Aref-模擬輸入的參考電壓。

引腳圖如下圖所示:

4

湖南商職業(yè)技術學院畢業(yè)設計

圖2Arduino開發(fā)板引腳圖

(4)Arduino系統電路圖

Arduino開發(fā)板最小系統電路由主控板電路、鬧鐘模塊電路和lcd電路,系

統原理圖如下圖所示。

圖3Arduino系統原理圖

系統可以選擇5v電的直流電源作為系統的總使用電源,為整個電源系統進

5

湖南商職業(yè)技術學院畢業(yè)設計

行供電。開源電路簡單、穩(wěn)定。以直流為主要電源的直流開關插座電源可直接

通過連接在一到兩個usb直流電源連接線。其中一端電源可以直接插入直流電

源插座,另外的一端則也可以通過連接插入到5v直流電源。將立即亮起綠燈,以

證明它是從商店開始的,紅燈將亮起。

圖45V電源電路原理圖

3.2DS1302鬧鐘模塊電路設計

鬧鐘模塊,它成本低、體積小、功能多并且支持串行接口。

(1)模塊特點

ds1302是一個自動實時單位時鐘控制芯片,可以自動提供實時秒、分、小時、

日期、月、年等實時信息,并且同時還有軟年自動實時調整的控制能力,可以通

過一個配置好的am/pm來自行決定是要采用24小時每秒格式還是12小時每秒

格擁有31字節(jié)數據存儲RAM。串行/o口多端口無線通信這種通訊方式,相對簡單

的非并行來說比較方便可以大大節(jié)省每個串行io口的網絡流量方便使用。s1302

的實際直流工作電壓比較寬,大概工作范圍一般是2.0v~5.5v都可以應該算是可

以正常工作進行直流工作。一般建議采用雙重主補充負池電源組的方式進行供

電,當一個新的主備用補充電源比一個自己備用的其他主補充電源高0.2v時,由

一個新的主備用補充電源直接進行直流供電,否則一般建議采用的電源是自己

備用的一個主補充電源,一般建議使用時間是—個日歷月的備用紐扣式磷酸鋰

電池。ds1302這種數字時鐘控制芯片工作功耗一般都降得很低,它在正常工作電

壓2.0v的溫度時候,工作輸出電流一般小于300na。ds1302共有8個引腳,有以

下兩種不同芯片封裝基板尺寸寬度形式,一種封裝尺寸形式是一個新的dip-8封

裝,芯片每個基板尺寸寬度(其中一個不含引腳)封裝尺寸寬度是300mil,—種封

裝尺寸形式是一個新的sop-8封裝,有兩種不同芯片基板寬度,一種芯片尺寸寬

度是150mil,—種芯片寬度尺寸是208mil。

(2)產品應用范圍

6

湖南商職業(yè)技術學院畢業(yè)設計

電話

傳真

便攜式儀器

(3)模塊技術參數

工作電壓:3.3V-6V

工作溫度:-40℃-85℃

(4)模塊接口說明

RXD串口輸入,電平為TTL電平

TXD串口輸出,電平為TTL電平

GND接GND

VCC接3.3V-6V

鬧鐘模塊接口電路圖如下圖所示。

圖5鬧鐘電路原理圖

鬧鐘實物圖如下圖所示。

圖6鬧鐘實物圖

3.3LED信號指示燈電路設計

led上的燈具管是一種將短路電能轉換成其他光能的新型半導體發(fā)光二極

管。在控制電路中,電阻的保護作用主要是通過限制短路電流和電來保護電阻

7

湖南商職業(yè)技術學院畢業(yè)設計

led上的燈。只要將電阻mcu控制引腳電壓拉低,led上的燈就一定會亮,否則,led

上的燈就不會經常亮

其具體電路原理圖如下圖所示。

圖7LED燈指示電路原理圖

3.4蜂鳴器報警電路(低電平有效)設計

有源蜂鳴器一同電就會叫,由連續(xù)的間斷區(qū)別,它能通過輸出的電平自動

判斷是否報警。它的電路原理圖如圖所示:

圖8蜂鳴器報警電路原理圖

4產品軟件設計

完整的產品由硬件系統和軟件系統組成,前一節(jié)主要闡述了系統的硬件電

路的設計方案,若要充分展示系統的設計功能,則需要支持硬件平臺的軟件程

序,即上傳到開發(fā)板內部的程序。

4.1Arduino程序開發(fā)環(huán)境

我這次課程選擇的開發(fā)arduino軟件是一款簡單快捷易用、便于快速上手的

專業(yè)開源免費電子軟件原型開發(fā)平臺,包含一個硬件開發(fā)部分(各種類型符合國

際arduino開發(fā)規(guī)范的硬件開發(fā)板)和一個軟件開發(fā)部分(arduinoide和一些相

8

湖南商職業(yè)技術學院畢業(yè)設計

關的軟件開發(fā)包)。硬件功能開發(fā)支持部分(或者以下簡稱板級軟件開發(fā)板)由一

組小型微控制器(mcu)、閃存(flash)以及其他一組新的微型通用數字模擬信號

輸入/通用數字信號輸出和微控制軟件接口(gpio)等一些組件組合構成,你甚至

已經可以將它完全可以理解為說成是你認為主板也就是一塊微型放在個人電腦

上的主板。至于板級軟件開發(fā)支持部分則主要由基于p和pc端的板級軟件支持

arduinoide以及一些功能相關的板級開發(fā)軟件功能支持開發(fā)工具軟件包(bsp)

和豐富的第三方通用板級軟件函數庫以及軟件支持組成。這些軟件使用者甚至

已經可以通過軟件借由網上下載軟件arduinoide輕松地快速學習下載你所可能

需要的已持有的板級軟件開發(fā)版模板以及一些相關的板級軟件支持bsp和你所

可能需要的板級軟件函數庫,用于快速學習編寫你的軟件應用程序。arduinoiee

這是一個新的專業(yè)開源程序開發(fā)軟件平臺,至今已經已知并擁有了多種軟件開

發(fā)板的型號及眾多各種可能由其衍生的通用微控制器,包括ArduinoUno、

ArduinoNano、ArduinoYún等等。另外,ArduinoIDE如今也不僅僅支持Arduino

系列開發(fā)板,還以引入BSP的方式增加了對IntelGalileo、NodeMCU

等流行開發(fā)板的支持件。

界面如下圖所示。

圖9軟件Arduino開發(fā)界面圖

4.2Arduino軟件開發(fā)流程

具體開發(fā)流程如圖所示。

9

湖南商職業(yè)技術學院畢業(yè)設計

圖10Arduino軟件開發(fā)流程圖

4.3Arduino程序燒錄軟件介紹

在Arduino的開發(fā)環(huán)境下,在編寫好程序代碼后,還需要進行庫文件的配置,

用到那些模塊就要把對應的庫文件配置到程序文件中,配置好后,就可以編譯

程序,程序無錯誤的話就可以上傳到開發(fā)板了。

圖11編譯軟件對話框

10

湖南商職業(yè)技術學院畢業(yè)設計

4.4主程序流程圖

我們這個系統程序圖的設計主要就是采用設計軟件還有編寫程序還有調試

程序,系統的實際運行工作流程圖設計如圖和下圖所示。

圖12系統運行流程圖

5系統組裝與調試

5.1產品模塊組裝和連線

模塊連接是產品能完成的必須要的一步,還是至關重要的一步,需要把各

個模塊用杜邦線連接到Arduino開發(fā)板的對應的引腳上,如果使用的面包板的情

況下,則需要在面包板上連線,模塊連線主要有如下三步組成的:

11

湖南商職業(yè)技術學院畢業(yè)設計

第一步開始清點需要組裝的模塊:

需要把需要用杜邦線連接的模塊清點好,主要是保障元器件的引腳正常無

無彎曲處。

第二步用杜邦線連接各個元器件引腳:

當在完成第一步以后,我們就把需要用杜邦線連接的元器件把相應的引腳

連接起來,注意不能把元器件的引腳錯誤連接到其他的引腳上去了,這樣會導致

程序出錯無法將程序上傳到開發(fā)板,嚴重的可能導致元器件直接燒壞。

第三部上傳程序,測試產品效果:

當在完成第二步時,有的時候會發(fā)現在程序軟件上稍入時無法稍入的情況,

這時候需要進行修改的。主要是兩種情況的,第一種是模塊元器件直接的連接

杜邦線出現了松動,連接不牢靠,這時需要把對應的松動的線重新插一下使其

牢靠。第二種是連接線沒有插到對應的引腳上,這時候可以對照電路圖把插錯

的引腳改到正確的引腳上。

當完成以上三步了,最后就是上傳程序,然后觀察產品效果了。

5.2系統調試

整體程序編寫上傳時,需要仔細檢查各個程序代碼以及庫文件。

在用戶搭建平臺調試管理平臺后,需要對平臺軟件程序系統進行一次調試,

若軟件程序調試結果沒有任何問題,接下來需要開始反復驗證調試系統所有功

能條件是否完全滿足要求,若系統功能也沒有任何問題,需要開始繼續(xù)調試程序,

反復調試進行,直到所有系統功能都完全滿足要求為止。

5.2.1程序軟件調試

軟件調試步驟如下:

在Arduino軟件中先創(chuàng)建一個工程:單擊菜單欄中的“文件”,點擊新建,

然后Ctrl+S保存,打好文件名,一個新建程序格式就好了。

新建用戶源文件:在新建的空白文本中編寫程序代碼,編碼完成保存文件。

程序的檢查編譯和重新執(zhí)行調試,檢查編譯完后在網上進行一個程序重新

編譯,軟件就可以會直接開始自動檢查程序執(zhí)行代碼的編譯準確性,在程序對話

窗口中我們可以查看到程序提醒的提示消息,如果是在提示信息中如果提示有

代碼錯誤的提示信息,,如果提示信息中有錯誤信息,則須按提示找出錯誤并改

正,

如圖所示。

12

湖南商職業(yè)技術學院畢業(yè)設計

圖13錯誤信息提升

若程序編譯無錯誤后,則通過Arduino軟件燒入程序,開始驗證系統功能是

否滿足要求,若功能有問題,需要繼續(xù)調試程序,反復進行,直到所有功能都

滿足為止。

5.2.2系統硬件調試

最后一步測試就是板子硬件測試整體性能測試了,主要就是利用4x4按鍵

分別設置一個鬧鈴播放時間、然后在leled上對已經調試好的每個板子硬件進行

一個整體硬件調試,主要就是檢查每一個測試器件是不是都正常運行工作了,主

要測試分為兩個測試環(huán)節(jié)第一動態(tài)硬件調試和一個靜態(tài)硬件調試。

(1)使用靜態(tài)軟件調試,其中關于靜態(tài)軟件調試主要的可分為以下四種:肉

眼難以觀察。主要用于觀看杜邦線纜的連接線路是否牢靠,以及導線相連相關器

件之間導線是否完全相連或者相關器件連接管腳是否沒有發(fā)生松動,出現導線

短路漏電現象。

插拔通電進行檢查。第一步如果都測試沒有發(fā)現問題,接下來就已經可以開

始上網通電了,上網通電以后首先觀看每個小元器件功能是否正常運行工作,然

后在逐一檢查測試每個功能。

(2)動態(tài)調試:

動態(tài)上的調試主要目的是保證靜態(tài)上的調試沒有任何技術問題,做最后一

步驟的檢查,就是每個測試器件內部能否正常運行工作,能否完全滿足我系統需

要開發(fā)的所有功能,防止每個器件內部發(fā)生損壞,影響整個系統正常性能。

實物測試

經過測試,系統測試正常,如下圖所示。

13

湖南商職業(yè)技術學院畢業(yè)設計

圖14系統測試圖

6產品使用說明

(1)使用前檢查產品是否完好安全,準備好相關的材料。

(2)打開產品開關,利用按鍵設置鬧鈴時間段,等待顯示時間達到設置鬧

鈴時間,蜂鳴器震動,LED燈閃爍

(3)不使用時,收好設備,放置干燥平穩(wěn)處,避免杜邦線松動。

14

湖南商職業(yè)技術學院畢業(yè)設計

溫馨提示

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

評論

0/150

提交評論