freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)字電子時(shí)鐘的設(shè)計(jì)與制作畢業(yè)設(shè)計(jì)(編輯修改稿)

2024-10-02 12:04 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 , K2 對(duì)十位進(jìn)行減操作。 同理,按 K3 健兩下時(shí)對(duì)湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 15 分位調(diào)整,按三下時(shí)對(duì)個(gè)位進(jìn)行調(diào)整,按四下即跳出時(shí)間的調(diào)節(jié)。 若跳出時(shí)間的調(diào)節(jié)后, K4 健被按下,則啟動(dòng)秒表功能。如果沒(méi)有跳出對(duì)時(shí)間的調(diào)節(jié) ,則無(wú)論怎樣按 K4 健,秒表功能都無(wú)法啟動(dòng)。在秒表功能下,按 K1按鍵,則秒表開(kāi)始工作,再按 K1 則秒表停止計(jì)時(shí);若按 K2 健,則秒表清零;如果再按 K4 健則跳出秒表,則轉(zhuǎn)換為時(shí)鐘工作狀態(tài)。 整個(gè)設(shè)計(jì)的硬件電路就由這幾部分組成:一個(gè)單片機(jī)的最小系統(tǒng),包括晶振電路和上電自動(dòng)復(fù)位電路;一個(gè)數(shù)碼管顯示電路;一個(gè)蜂鳴器控制電路和一個(gè)按鍵控制電路,構(gòu)成了整體的設(shè)計(jì)電路。 整體設(shè)計(jì)的電路圖如圖 39 所示。 圖 39 數(shù)字時(shí)鐘的總體設(shè)計(jì)電路 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 16 4 數(shù)字時(shí)鐘的軟件設(shè)計(jì) 本次設(shè)計(jì)所實(shí)現(xiàn)的要求有 : 用六位 LED 數(shù)碼管顯示時(shí)、分、 秒;以 24h(小時(shí))計(jì)時(shí)方式;白天整點(diǎn)報(bào)時(shí),晚上 22點(diǎn)后不報(bào)時(shí);可實(shí)現(xiàn)時(shí)分調(diào)整、秒表功能轉(zhuǎn)換;可實(shí)現(xiàn)時(shí)分調(diào)整、時(shí)鐘功能轉(zhuǎn)換 。 根據(jù)設(shè)計(jì)要求,所編寫的程序除了主程序外還包括的子程序有數(shù)碼管顯示子程序;按鍵檢測(cè)子程序;蜂鳴器報(bào)時(shí)子程序還有中斷函數(shù)。 數(shù)碼管顯示子程序通過(guò)控制 P0 口以及兩個(gè)鎖存器向數(shù)碼管分別輸送斷碼和位碼,來(lái)實(shí)現(xiàn)時(shí)鐘和秒表的顯示;按鍵檢測(cè)子程序則是通過(guò) — 四個(gè)口來(lái)控制四個(gè)獨(dú)立的按鍵,以實(shí)現(xiàn)時(shí)鐘的調(diào)整和時(shí)鐘 /秒表功能的轉(zhuǎn)換;蜂鳴器報(bào)時(shí)子程序是通過(guò)控制 口來(lái)實(shí)現(xiàn)整點(diǎn)報(bào)時(shí)。通過(guò)中斷函數(shù) 來(lái)精確定時(shí)。 此次設(shè)計(jì)采用 C語(yǔ)言 來(lái)編程。 C語(yǔ)言 作為一種非常方便的語(yǔ)言而得到廣泛的支持,很多硬件開(kāi)發(fā)都要 C語(yǔ)言編程,如各種單片機(jī)、 DSP、 ARM 等。 C語(yǔ)言程序本身不依賴于機(jī)器硬件系統(tǒng),不需要對(duì) C語(yǔ)言程序做修改或者僅僅只是很簡(jiǎn)單的修改就可以將 C 語(yǔ)言程序從一個(gè)系統(tǒng)一直到另外一個(gè)完全不同的系統(tǒng)中。 C語(yǔ)言不僅支持浮點(diǎn)運(yùn)算還提供了很多數(shù)學(xué)函數(shù),其開(kāi)發(fā)的高效性在很大程度上縮短了開(kāi)發(fā)的時(shí)間,程序的可維護(hù)性和可讀性大大增加。對(duì)單片機(jī)使用 C51 編程跟匯編 ASM51 編程相比有很多優(yōu)點(diǎn): 解,而 C 語(yǔ)言則不需要有任何的了解就可以直接進(jìn)行編程 。 ,函數(shù)可以分成不同的類型,使程序的結(jié)構(gòu)簡(jiǎn)單明了。 、寄存器分配及數(shù)據(jù)類型等。 語(yǔ)言庫(kù)中有許多標(biāo)準(zhǔn)的子程序,其數(shù)據(jù)處理能力很強(qiáng)大,使用起來(lái)很方便。 語(yǔ)言具有很好的移植性,可以直接由一個(gè)系統(tǒng)移入另一個(gè)系統(tǒng)。 C 語(yǔ)言常用語(yǔ)法不多,尤其是單片機(jī) C 語(yǔ)言常用語(yǔ)法更少,初學(xué)者沒(méi)有必要再系統(tǒng)地將 C語(yǔ)言重學(xué)一遍,只需要在實(shí)踐中遇到難點(diǎn)時(shí)適當(dāng)?shù)夭殚?C語(yǔ)言書籍里的相關(guān)內(nèi)容。 C 語(yǔ)言僅僅是一個(gè)開(kāi)發(fā)工具,其本身并不難, 難的是如何在將來(lái)開(kāi)發(fā)龐大系統(tǒng)中靈活應(yīng)用 C語(yǔ)言的正確邏輯編寫出結(jié)構(gòu)完善的程序。綜合以上 C語(yǔ)言的優(yōu)點(diǎn), 故 本次程序編寫采用 C 語(yǔ)言編寫。 下面分別對(duì)主程序和相應(yīng)的子程序做簡(jiǎn)要的湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 17 介紹。 主程序 設(shè)計(jì) 編寫程序必須要理清思路,邏輯正確,而繪制流程圖可以使程序的思路簡(jiǎn)單清晰,有利于編寫程序。此 次的數(shù)字電子鐘設(shè)計(jì) 的主程序 流程圖如圖 41 所示。 圖 41 主程序流程圖 通電后, 啟動(dòng) 定時(shí)器, 定時(shí)器的初值為 50ms,計(jì)數(shù) 20次為 1 秒 ,則數(shù)碼管上相應(yīng)的數(shù)值加一。 按鍵 檢測(cè) 是先檢測(cè)是否 有鍵 被按下。 若 K3健被 按下, 當(dāng) K3 按 一下時(shí),從左數(shù)第一二位數(shù)碼管即顯示時(shí)位的兩位數(shù)碼管的小數(shù)點(diǎn)亮,即可以通過(guò)K1 和 K2 來(lái)對(duì)時(shí)位進(jìn)行加減的調(diào)整, K1 對(duì)十位進(jìn)行加操作, K2 對(duì)十位進(jìn)行減操作。同理,按 K3 健兩下時(shí)對(duì)分位調(diào)整,按三下時(shí)對(duì)個(gè)位進(jìn)行調(diào)整,按四下即跳出時(shí)間的調(diào)節(jié)。 若跳出時(shí)間的調(diào)節(jié)后, K4健被按下,則啟動(dòng)秒表功能。如果沒(méi)有跳出對(duì)時(shí)間的調(diào)節(jié),則無(wú)論怎樣按 K4健,秒表功能都無(wú)法啟動(dòng)。在秒表功能下,按 K1按鍵,則秒表開(kāi)始工作,再按 K1則秒表停止計(jì)時(shí);若按 K2 健,則秒表清零;如果再按 K4 健則跳出秒表,則轉(zhuǎn)換為時(shí)鐘工作狀態(tài)。 如果顯示時(shí)間在 六點(diǎn)整到二十二點(diǎn)整時(shí),則蜂鳴器開(kāi)始報(bào)時(shí),即到了幾點(diǎn)就響幾下,在其他的時(shí)間不報(bào)時(shí)。 根據(jù)所要實(shí)現(xiàn)的功能,編寫相應(yīng)的子程序。 開(kāi)始 啟動(dòng)定時(shí)器 時(shí)間顯示 按鍵檢測(cè) 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 18 數(shù)碼管顯示 子程序 設(shè)計(jì) 數(shù)碼管顯示函數(shù)利用的是數(shù)碼管的動(dòng)態(tài)掃描,所謂動(dòng)態(tài)掃描顯示,即輪流向各位數(shù)碼管送出字形碼和相應(yīng)的位選,利用發(fā)光管的余暉和人眼視覺(jué)暫留作用,使人的感覺(jué)好像各位數(shù)碼管同時(shí)都在顯示,而實(shí)際上多位數(shù)碼管是一位一位輪流顯示的,只是輪流的速度非???,人眼已經(jīng)無(wú)法分辨出來(lái)。 本次的數(shù)碼管顯示函數(shù)也是利用這種發(fā)光管的余暉和人眼視覺(jué)暫留作用, 利用單片機(jī)的 P0 口以及兩個(gè)鎖存器 來(lái)向數(shù)碼管的輸送段選和位選數(shù)據(jù),實(shí)現(xiàn)所要顯示的時(shí),分,秒。數(shù)碼管顯示 子函數(shù) 的流程圖如圖 42所示: 圖 42 數(shù)碼管顯示流程圖 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 19 按鍵檢測(cè) 子程序 設(shè)計(jì) 本次的設(shè)計(jì)遵循的按鍵檢測(cè)原則是按鍵執(zhí)行是先檢測(cè)調(diào)時(shí)間的健是否被按下。若 K3 健被按下, 當(dāng)按 K3按鍵 按 一下時(shí),從左數(shù)第一二位數(shù)碼管即顯示時(shí)位的兩位數(shù)碼管的小數(shù)點(diǎn)亮,即可以通過(guò) K1 和 K2 來(lái)對(duì)時(shí)位進(jìn)行加減的調(diào)整, K1 對(duì)十位進(jìn)行加操作, K2 對(duì)十位進(jìn)行減操作。 同理,按 K3 健兩下時(shí)對(duì)分位調(diào)整,按三下時(shí)對(duì)個(gè)位進(jìn)行調(diào)整,按四下即跳出時(shí)間的調(diào)節(jié)。 若跳出時(shí)間的調(diào) 節(jié)后, K4 健被按下,則啟動(dòng)秒表功能。如果沒(méi)有跳出對(duì)時(shí)間的調(diào)節(jié),則無(wú)論怎樣按 K4 健,秒表功能都無(wú)法啟動(dòng)。在秒表功能下,按 K1 按鍵,則秒表開(kāi)始工作,再按 K1則秒表停止計(jì)時(shí);若按 K2 健,則秒表清零;如果再按 K4 健則跳出秒表,則轉(zhuǎn)換為時(shí)鐘工作狀態(tài)。 其程序流程圖如圖 43所示: 圖 43 按鍵檢測(cè)流程圖 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 20 蜂鳴器報(bào)時(shí)子程序設(shè)計(jì) 本次設(shè)計(jì)的蜂鳴器報(bào)時(shí)函數(shù)雖然比較簡(jiǎn)單,但是在編寫的過(guò)程中還是遇到了一些困難。就像程序中的注釋一樣,延時(shí)時(shí)間的長(zhǎng)短決定了蜂鳴器的發(fā)聲頻率,也就是聲音的長(zhǎng)短。通過(guò)不斷的嘗試,最終 找到了比較滿意的發(fā)聲頻率。蜂鳴器報(bào)時(shí)函數(shù)實(shí)現(xiàn)的是在早上六點(diǎn)到晚上二十二點(diǎn)之間整點(diǎn)報(bào)時(shí),也就是幾點(diǎn)響幾下。蜂鳴器報(bào)時(shí)函數(shù)如下: void baoshi(int c) { int x。 uchar i。 for(x=c。x0。x) { for(i=0。i80。i++) //延時(shí)時(shí)間 , 控制蜂鳴器發(fā)聲頻率 { //報(bào)時(shí)時(shí)仍然顯示時(shí)鐘狀態(tài) xianshi(shi,0xfd,0xfe)。 xianshi(fen,0xef,0xf7)。 xianshi(miao,0x7f,0xbf)。 } bs=!bs。 //整點(diǎn)到則蜂鳴器響 } } 除以上三個(gè)實(shí)現(xiàn)所需功能的函數(shù)外,還需要中斷函數(shù) , 初始化函數(shù)等 。將所有滿足要求的函數(shù)整合到一起,通過(guò)在主函數(shù)中調(diào)用相應(yīng)的子函數(shù)來(lái)實(shí)現(xiàn)設(shè)計(jì)要求。雖然編寫的程序順利的實(shí)現(xiàn)了所要求的功能,但自己認(rèn)為還有一定的缺陷,那就是在秒表功能的狀態(tài)下, 無(wú)論按哪一個(gè)按鍵, 在按住不放的情況下數(shù)碼管不顯示任何數(shù)據(jù)。通過(guò)多次的修改與調(diào)試也沒(méi)能找到解決的方法,希望在以后的學(xué)習(xí)中能夠找到解決方案。 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 21 5 數(shù)字時(shí)鐘 的仿真 與制作 程序編寫完后 ,必須進(jìn)行調(diào)試。因?yàn)榫帉懙倪^(guò)程中難免會(huì)出現(xiàn)一些小的錯(cuò)誤,甚至是一些邏輯性的錯(cuò)誤。只有在一步步的調(diào)試過(guò)程中逐步發(fā)現(xiàn)錯(cuò)誤,并逐步改進(jìn),才能實(shí)現(xiàn)最終預(yù)定的功能。 本次設(shè)計(jì),采用 Keil 進(jìn)行編譯調(diào)試。 在使用 Keil 軟件之前,要保證在用戶的計(jì)算機(jī)上裝有一套穩(wěn)定可靠地軟件。本次畢業(yè)設(shè)計(jì)所使用的 Keil 版本為 。在學(xué)習(xí)中,我們應(yīng)該采用邊學(xué)邊用的學(xué)習(xí)方法, 而不是將某個(gè)軟件的所有功能都講解的非常仔細(xì),很多不用的地方不用去研究,需要用到什么就學(xué)什么這樣才能有效地理解它,記憶它,最終達(dá)到學(xué)以致用的目的。 調(diào)試與 仿真 新建一個(gè)工程, 并設(shè)置相應(yīng)的參數(shù),選擇相關(guān)的單片機(jī)型號(hào)。設(shè)置好一切相關(guān)的數(shù)據(jù)后,便可以將工程保存,并命名為 qipeibiyesheji。 然后在新建的工程中添加文件,將編寫好的程序添加到新建的工程中。 如下圖51 所示。 圖 51 Keil中添加新文件 然后 對(duì)添加到工程中的文件進(jìn)行編譯,若出現(xiàn)錯(cuò)誤則需要慢慢的調(diào)試,根據(jù) 提示修改出現(xiàn)的錯(cuò)誤,直到編 譯無(wú)誤為止。 編譯無(wú)誤后,需要生成 Hex 文件, 如下圖所示。 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 22 圖 52 編譯生成 Hex文件 編譯生成 的 Hex 文件,最終需要導(dǎo)入到 Proteus 中進(jìn)行仿真。 Proteus 軟件現(xiàn)在對(duì)于自己來(lái)說(shuō)最大的好處就是能夠?qū)崿F(xiàn)仿真,能夠檢查自己的程序到底有沒(méi)有達(dá)到本次設(shè)計(jì)的要求。雖然 Proteus 也有很多不完善的地方,而且模擬和硬件實(shí)物是有差別的,但是只有經(jīng)過(guò)了仿真這一步,才能對(duì)自己編的程序心里有底,才敢開(kāi)始動(dòng)手開(kāi)始實(shí)物制作。 在繪畫 Proteus 仿真圖的過(guò)程中也遇到過(guò)很多困難,首先遇到的困難就是相應(yīng)元器件的查找。自己 只知道最基本的單片機(jī),鎖存器等元器件如何添加,而數(shù)碼管、晶振、對(duì)應(yīng)的電容、電阻等都還不熟悉。因此只有自己上網(wǎng)查找資料現(xiàn)將所有需要用到的元器件添加到新建的工程中,然后再來(lái)考慮連線所要注意的問(wèn)題。 繪畫仿真圖的過(guò)程雖然比較艱辛,而且比較考驗(yàn)人的耐性, 尤其是出現(xiàn)的一點(diǎn)點(diǎn)錯(cuò)誤都有可能實(shí)現(xiàn)不了仿真,只有通過(guò)自己慢慢檢 查,翻書,查閱相關(guān)的資料以及與同學(xué)老師交流查找錯(cuò)誤,并及時(shí)糾正。雖然這個(gè)過(guò)程是痛苦的,但是當(dāng)自己看到 編寫的程序在自己辛苦幾天繪畫出的仿真圖中完整無(wú)誤的實(shí)現(xiàn)了設(shè)計(jì)的要求 時(shí) ,那種興奮感和成就感是多么的讓人陶醉 。 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 23 與此同時(shí),在畫仿真圖的過(guò)程中自己 學(xué)到了很多知識(shí),而且也把以前學(xué)的知識(shí)又鞏固了一遍 ,并收集了很多關(guān)于畫 Proteus 仿真圖的資料。雖然自己只是懂Proteus 的一點(diǎn)點(diǎn),其功能的強(qiáng)大自己還沒(méi)有完全領(lǐng)略,但我想這次單獨(dú)完成仿真繪制的過(guò)程為自己以后研究 Proteus 打下了很好的基礎(chǔ),做了一個(gè)完美的開(kāi)始。 下面是自己仿真的截圖,分別為 時(shí)鐘和秒表兩個(gè)狀態(tài)。 如圖 53 所示,是時(shí)鐘狀態(tài)下的仿真圖 : 圖 53 時(shí)鐘狀態(tài)下的仿真圖 由前面的按鍵電路的流程圖可知通過(guò)按 K K K3按鍵實(shí)現(xiàn)相應(yīng)的時(shí)間調(diào)整。并且在六 點(diǎn)和二十二點(diǎn)之間還會(huì)報(bào)時(shí)。通過(guò)按 K4健實(shí)現(xiàn)秒表功能的轉(zhuǎn)換。秒表狀態(tài)下的仿真圖如下圖 54所示: 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 24 圖 54 秒表狀態(tài)下的仿真圖 仿真圖缺陷分析 雖然自己繪制的仿真圖能實(shí)現(xiàn)所有的設(shè)計(jì)功能,但仍然存在一些缺陷。綜合自己的分析,其缺陷有以下幾點(diǎn): ( 1)在時(shí)鐘與秒表轉(zhuǎn)換的時(shí)候, 按下 K4健時(shí),也就是處于秒表狀態(tài)但沒(méi)有啟動(dòng)秒表時(shí),單個(gè)的共陽(yáng)極數(shù)碼管會(huì)有輕微的閃動(dòng),也就是不穩(wěn)定,找了很久都沒(méi)有發(fā)現(xiàn)原因。 ( 2) 在秒表狀態(tài)下,無(wú)論按哪一個(gè)按鍵,在按下不放時(shí),數(shù)碼管就會(huì)出現(xiàn)不顯示的現(xiàn)象。雖然按鍵按下的過(guò)程很短暫 ,如果不刻意去注意的話根本不會(huì)。但這也是一個(gè)缺陷,我想要求完美的人都會(huì)發(fā)現(xiàn)這個(gè)缺陷。 上述兩個(gè)缺陷只是自己做仿真和編程的時(shí)候發(fā)現(xiàn)的,暫時(shí)還沒(méi)有找到其相應(yīng)的解決方法。但我想肯定也還存在其他的缺陷,只是自己暫時(shí)沒(méi)有發(fā)現(xiàn)。我相信在以后的設(shè)計(jì)與制作中自己要求的更嚴(yán)格,爭(zhēng)取做到?jīng)]有任何缺陷。 湖 北理工學(xué)院 畢業(yè)設(shè)計(jì)(論文) 25 完成了 程序的調(diào)試與仿真,剩下的就是制作實(shí)物這一步了。雖然以前沒(méi)有動(dòng)手制作過(guò)任何實(shí)物,有很多東西自己也不懂,但這是一次很好的鍛煉自己的機(jī)會(huì)。不要因?yàn)闆](méi)有嘗試過(guò)就放棄,更不要因?yàn)椴粫?huì)害怕失敗而不敢去嘗試。 要相信只要自己肯學(xué)肯鉆研,就一定會(huì)有所收獲的,結(jié)果并不是最重要的,重要的是自己親自動(dòng)手嘗試的過(guò)程。 數(shù)字時(shí)鐘 的 制作 經(jīng)過(guò)詢問(wèn)同學(xué)老師以及上網(wǎng)搜索資料,最初決定用 Altium Designer 來(lái)繪制原理圖和 PCB 板。 Altium Designer 這款軟件自己以前從來(lái)沒(méi)學(xué)過(guò),也沒(méi)聽(tīng)說(shuō)過(guò)。但是當(dāng)自己去學(xué)習(xí)它去了解它的時(shí)候發(fā)現(xiàn)它功能的強(qiáng)大性真的讓自己難以置信。而想要學(xué)好單片機(jī)的話必須掌握畫 PCB 板的基本軟件。很多公司用的都是 Protel99 來(lái)學(xué)習(xí)單片機(jī),但 Altium Designer 比 Protel99 的 功能更強(qiáng)大,是最新發(fā)明出來(lái)的軟件。因此自己決定用 Altium Designer 來(lái)繪畫 PCB 板。 學(xué)習(xí)和繪畫的過(guò)程是辛苦的,因?yàn)闆](méi)有人指導(dǎo), 也沒(méi)有任何
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1