單片機課程設(shè)——叮咚門鈴設(shè)計_第1頁
已閱讀1頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  單片機課程設(shè)計報告</b></p><p>  課 程 單片機課程設(shè)計 </p><p>  設(shè)計題目 “叮咚”門鈴設(shè)計 </p><p>  年級專業(yè) 12級自動化 </p><p>  學(xué) 號

2、 </p><p>  學(xué)生姓名 </p><p>  指導(dǎo)教師 </p><p><b>  設(shè)計題目:</b></p><p><b>  一、要求</b></p><p>  

3、要求按下按鍵時,蜂鳴器發(fā)聲,并播出“叮咚-叮咚-叮咚”聲音</p><p><b>  二、分析</b></p><p><b>  系統(tǒng)方案</b></p><p>  本次課設(shè)是基于STC89C51單片機的叮咚門鈴設(shè)計。STC89C51單片機是一款性能穩(wěn)定,價格比較低廉的單片機,用STC89C51作為主控芯片,結(jié)合外設(shè)

4、蜂鳴器電路,可使門鈴性能更加優(yōu)良,更適合用于現(xiàn)實生活中去。在該設(shè)計中,STC89C51單片機是整個系統(tǒng)主控芯片,它主要負(fù)責(zé)輸出不同頻率的PWM脈寬,從而控制三極管通斷次數(shù)來使揚聲器發(fā)出不同頻率的聲音。</p><p><b>  程序方案</b></p><p>  本次課設(shè)主要用高級語言C語言來實現(xiàn),通過KEIL公司的U vision4軟件編譯,stc-isp下載工

5、具下載程序</p><p><b>  三、設(shè)計</b></p><p>  1、硬件設(shè)計(包括設(shè)計方案及說明、完整的硬件連接圖等)</p><p>  叮咚門鈴硬件電路主要包括單片機最小系統(tǒng)、蜂鳴器電路、按鍵。</p><p><b>  電路圖如下</b></p><p>

6、;<b>  蜂鳴器電路</b></p><p><b>  最小系統(tǒng)</b></p><p><b>  總電路圖</b></p><p>  2、軟件編程(包括流程圖、完整的匯編源程序及其注釋)</p><p><b>  軟件設(shè)計流程圖</b><

7、;/p><p><b>  程序代碼</b></p><p>  #include <AT89X52.H></p><p>  unsigned char obuf1;</p><p>  unsigned char obuf2;</p><p>  unsigned int obuf3;

8、</p><p>  bit stopb;</p><p>  bit flagb;</p><p>  void delayms(unsigned int k)</p><p><b>  {</b></p><p>  unsigned char p;</p><p>

9、  for(; k > 0; k--)</p><p>  for(p = 110; p > 0; p--);</p><p><b>  }</b></p><p>  void main(void)</p><p><b>  {</b></p><p>  

10、unsigned char i,j, k;</p><p>  TMOD=0x02; //定時器T0初始化</p><p><b>  TH0=0x06;</b></p><p><b>  TL0=0x06;</b></p><p><b>  ET0=1;</b></

11、p><p>  EA=1; //允許總中斷</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  if(P1_0==0) //檢測K1按鍵</p><p><b>  {</b></p>

12、<p>  for(k = 0; k < 3; k++){ // 三重循環(huán)</p><p><b>  P1=0x00;</b></p><p>  for(i=10;i>0;i--)</p><p>  for(j=248;j>0;j--);</p><p>  if(P1_0==

13、0)</p><p><b>  {</b></p><p><b>  obuf1=0;</b></p><p><b>  obuf2=0;</b></p><p><b>  obuf3=0;</b></p><p><

14、b>  flagb=0;</b></p><p><b>  stopb=0;</b></p><p>  TR0=1; //啟動定時器T0,發(fā)出"叮咚"聲</p><p>  while(stopb==0);</p><p><b>  P1=0xff;</b>

15、;</p><p><b>  }</b></p><p>  delayms(3000); // 延時函數(shù)</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b>

16、;</p><p><b>  }</b></p><p>  void t0(void) interrupt 1 using 0</p><p><b>  {</b></p><p><b>  obuf3++;</b></p><p>  if(o

17、buf3==3000)</p><p><b>  {</b></p><p><b>  obuf3=0;</b></p><p>  if(flagb==0)</p><p><b>  {</b></p><p>  flagb=~flagb;&l

18、t;/p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p><b>  stopb=1;</b></p><p><b>  TR0=0;&l

19、t;/b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(flagb==0)</p><p><b>  {</b></p><p><b>  obuf2++;</b&g

20、t;</p><p>  if(obuf2==1)</p><p><b>  {</b></p><p><b>  obuf2=0;</b></p><p>  P1_6=~P1_6;</p><p><b>  }</b></p>&

21、lt;p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p><b>  obuf1++;</b></p><p>  if(obuf1==25)</p><

22、;p><b>  {</b></p><p><b>  obuf1=0;</b></p><p>  P1_6=~P1_6;</p><p><b>  }</b></p><p><b>  }</b></p><p>&

23、lt;b>  }</b></p><p><b>  3、調(diào)試說明</b></p><p>  在對系統(tǒng)設(shè)計以及實現(xiàn)后,需要進入調(diào)試階段,以檢查系統(tǒng)所存在的缺陷,以便排除各種可能出現(xiàn)的不利于系統(tǒng)正常運行的因素。調(diào)試本系統(tǒng)主要包括兩個步驟:調(diào)試控制系統(tǒng)和各個模塊是否能正常工作,其中分為底層硬件調(diào)試和上層軟件的調(diào)試。</p><p&g

24、t;  底層硬件調(diào)試和上層軟件的調(diào)試是不可缺少的調(diào)試,這兩者可分開調(diào)試,其間可以沒有聯(lián)系的調(diào)試,之后再整體的調(diào)試,看看是否能夠達到我們的預(yù)期的效果。這樣,我們才能及時的發(fā)現(xiàn)問題,從而著手的解決每一個問題。</p><p><b>  軟件調(diào)試</b></p><p>  程序經(jīng)KIEL4軟件多次編譯無誤后,下載到單片機中,通過反復(fù)的調(diào)試,更改單片機的延時時間和輸出頻率

25、,找到最適合的頻率段和效果最明顯的音頻,使蜂鳴器發(fā)出最悅耳的叮咚聲</p><p><b>  硬件調(diào)試</b></p><p>  本次課設(shè)只需要用到單片機最小系統(tǒng),和一個蜂鳴器電路,電路簡單,在工藝實習(xí)板子上稍作更改即可使用,在原有的工藝實習(xí)板子上,去掉多余的杜邦線和數(shù)碼管,提高系統(tǒng)的穩(wěn)定性。嘗試下載程序,檢查無誤,電路可正常使用。</p><

26、p><b>  按鍵的測試</b></p><p>  用電表對按鍵進行測試,當(dāng)按鍵的按下,跟按鍵連接的管腳變?yōu)榈碗娖?,松開變?yōu)楦唠娖?。按鍵沒有問題。</p><p><b>  聲音播放測試</b></p><p>  由于聲音播放模塊電路很簡單,只需一個高低電平即可進行測試。在測試中,我將聲音播放模塊的控制引腳給

27、了單獨斷開,將其對電源進行試觸、發(fā)現(xiàn)揚聲器有聲音傳出,這說明了聲音播放系統(tǒng)是能正常工作的!</p><p>  4、設(shè)計結(jié)果及錯誤分析</p><p>  在本次設(shè)計中,遇到了很多的問題和困難,由于自己不太擅長軟件編程,需要查閱大量的質(zhì)料,理解語句的意譯,不得不得向同學(xué)求問,剛開始由于輸出700Hz與500Hz的方波,我花了一個多禮拜的時間都無法攻克這個問題,因為頻率不對,蜂鳴器發(fā)出的叮咚

28、聲音不夠標(biāo)準(zhǔn),后來在同學(xué)的幫助下,通過不斷地調(diào)試,終于找到的最適合的頻率,</p><p><b>  四、總結(jié)</b></p><p>  經(jīng)過這一段時間的學(xué)習(xí),我學(xué)到了不少的知識。在這為期不長的一個月里,我發(fā)現(xiàn)了要想認(rèn)真做好一件并非是那么簡單的。從一開始的什么也不知道,直到逐漸的對整個系統(tǒng)有個整體的思路,我經(jīng)歷了很對的艱辛。在這段時間內(nèi),幸好有老師和同學(xué)的耐心指導(dǎo)

29、,我不斷的努力,不斷的嘗試,最終完成了課設(shè),我感覺我在短時間成長了很多很多。</p><p>  在硬件設(shè)計中,我盡量做到硬件系統(tǒng)能夠簡單而穩(wěn)定,給軟件提供一個良好的編程環(huán)境。軟件系統(tǒng)的編寫的時候,我盡量做到思路的清晰,代碼編寫得簡潔和規(guī)范,以使系統(tǒng)能夠更好的運作,性能更加穩(wěn)定,以便達到預(yù)期的要求。因時間有限,設(shè)計中還有許多需要改進的地方。</p><p>  在這一段時間的學(xué)習(xí)中,我也真

溫馨提示

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

評論

0/150

提交評論