一、任務(wù) 以單片機為核心,設(shè)計一個節(jié)日彩燈控制器。 二、設(shè)計要求
以單片機為核心,設(shè)計一個節(jié)日彩燈控制器,要求有四個控制按鍵:
0.png (19.29 KB, 下載次數(shù): 46)
下載附件
2018-1-6 02:49 上傳
第5章 系統(tǒng)調(diào)試與測試結(jié)果分析
5.1 使用的調(diào)試工具及調(diào)試環(huán)境
1 調(diào)試工具
本設(shè)計調(diào)試工具采用電腦、單片機仿真以及5V直流穩(wěn)壓電源。
2 調(diào)試環(huán)境
地點:寢室
室溫:30 ℃
2 系統(tǒng)調(diào)試
根據(jù)系統(tǒng)設(shè)計方案,本系統(tǒng)的調(diào)試共分為三大部分:硬件調(diào)試,軟件調(diào)試和軟硬件聯(lián)調(diào)。由于在系統(tǒng)設(shè)計中采用模塊設(shè)計法,所以方便對各電路模塊功能進行逐級測試,最后將各模塊組合后進行整體測試。
1硬件調(diào)試
對各個模塊的功能進行調(diào)試,主要調(diào)試各模塊能否實現(xiàn)指定的功能。通過kill軟件燒錄下載到硬件中驗證功能。
2軟件調(diào)試
軟件調(diào)試采用單片機仿真器及微機,將編好的程序進行調(diào)試,主要是檢查語法錯誤。
3硬件軟件聯(lián)調(diào)
將調(diào)試好的硬件和軟件進行聯(lián)調(diào),主要調(diào)試系統(tǒng)的實現(xiàn)功能。
3 測試結(jié)果及狀態(tài)分析
此次系統(tǒng)設(shè)計結(jié)果較好,經(jīng)Proteus軟件仿真系統(tǒng)的調(diào)試,可檢測出仿真電路正常;對應(yīng)按鍵按下,彩燈出現(xiàn)不同花型,實現(xiàn)了多控制、多閃爍的LED彩燈循環(huán);經(jīng)以上仿真測試證實,本設(shè)計能實現(xiàn)設(shè)計系統(tǒng)要求的預(yù)期功能。
結(jié) 論
本次課程設(shè)計以STC89C51單片機作為主控核心,按鍵控制電路、彩燈顯示電路以及單片機最小系統(tǒng)等模塊組成的核心主控制電路,利用軟件編程燒錄程序到單片機來實現(xiàn)對LED節(jié)日彩燈的控制。
通過軟硬件的仿真調(diào)試,對彩燈控制器的運行成果感覺比較滿意,它實現(xiàn)了我們要求達到的目標,實現(xiàn)了多控制、多閃爍方式的LED節(jié)日彩燈循環(huán),并且用快慢兩種節(jié)拍實現(xiàn)花型交換。本系統(tǒng)亮燈模式多,可根據(jù)操作提示隨意變換想要的閃爍方式。同時本設(shè)計具有電路結(jié)構(gòu)簡單、易操作、硬件少、體積小、成本低、低能耗等優(yōu)點,具有一定的實用和參考價值。
但是在設(shè)計中也出現(xiàn)了一些問題:Proteus仿真軟件不是很穩(wěn)定,造成仿真頁面奔潰,另外硬件調(diào)試程序時出現(xiàn)了延時問題等。這種都是以后的工作當中需要注意并解決的問題。
參考文獻[1] 劉宏.電子工藝實習(xí),華南理工大學(xué)出版社,2011.
[2] 鄧奕.電子線路CAD實用教程,華中科技大學(xué)出版社,2013
[3] 康華光.電子技術(shù)基礎(chǔ).高等教育出版社,2006.
[4] 手把手教你學(xué)51單片機C語言版,宋雪松,清華大學(xué)出版社。2010
[5] C語言程序設(shè)計,譚浩強,清華大學(xué)出版社,2010
單片機源程序如下:
- #include <reg52.h>
- #define uchar unsigned char //宏定義
- #define uint unsigned int
- sbit k1=P1^2; //位定義
- sbit k2=P1^3;
- sbit k3=P1^4;
- sbit k4=P1^5;
- uchar a=0; //定義所需變量
- uchar b;
- uchar code table1[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //從上到下流水數(shù)組
- uchar code table2[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; //從下到上流水數(shù)組
- void delay_ms(uint xms) //延時函數(shù)
- {
- uint i,j;
- for(i=xms;i>0;i--)
- for(j=110;j>0;j--);
- }
- void key_scan(uchar b) //按鍵掃描
- {
- if(b==1) //若K1按下
- {
- while(k2==1&&k3==1&&k4==1)
- {
- for(a=0;a<8;a++) //執(zhí)行從上到下流水操作
- {
- P0=table1[a];
- delay_ms(100);
- }
- a=0;
- }
- }
- if(b==2) //若K2按下
- {
- while(k1==1&&k3==1&&k4==1)
- { //P0全部輸出高電平,關(guān)閉LED
- P0=0xff;
- }
- }
- if(b==3) //若K3按下
- {
- while(k1==1&&k2==1&&k4==1)
- {
- for(a=0;a<8;a++) //執(zhí)行從下到上流水操作
- {
- P0=table2[a];
- delay_ms(100);
- }
- a=0;
- }
- }
- if(b==4) //若K4按下
- {
- while(k1==1&&k2==1&&k3==1)
- {
- P0=0xaa; //奇偶位分別點亮
- delay_ms(100);
- P0=0x55;
- delay_ms(100);
- }
- }
- }
- void main(void) //主函數(shù)
- {
- TMOD=0X01; //定時器中斷初始化
- TH0=(65536-1000)/256;
- TL0=(65536-1000)%256;
- EA=1;
- ET0=1;
- TR0=1;
- while(1);
-
- }
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼
0.png (6.24 KB, 下載次數(shù): 57)
下載附件
2018-1-6 02:50 上傳
所有資料51hei提供下載:
電工1512班 周苗 節(jié)日彩燈控制器.zip
(106.51 KB, 下載次數(shù): 60)
2018-1-5 19:52 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|