




已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
課程設(shè)計(jì)說(shuō)明書(2016 /2017 學(xué)年 第 2 學(xué)期)課程名稱 : 單片機(jī)應(yīng)用課程設(shè)計(jì) 題 目 : 九九乘法表判斷器 專業(yè)班級(jí) : 自動(dòng)化 學(xué)生姓名 : 學(xué) 號(hào): 1 指導(dǎo)教師 : 設(shè)計(jì)周數(shù) : 2 周 設(shè)計(jì)成績(jī) :_ 2017 年7月14日目錄一、課程設(shè)計(jì)任務(wù)及目的-1 1.1課程設(shè)計(jì)任務(wù)-1 1.1.1技術(shù)要求-1 1.1.2原始數(shù)據(jù)及主要任務(wù)-1 1.2課程設(shè)計(jì)目的-1二、課程設(shè)計(jì)正文-12.1硬件方案設(shè)計(jì)-1 2.1.1 電路原理圖-1 2.1.2 PCB圖-2 2.1.3 系統(tǒng)工作原理-2 2.1.4 STC90C52AD的引腳圖-32.2 單元電路設(shè)計(jì)-4 2.2.1單片機(jī)基本系統(tǒng)-4 2.2.2按鍵輸入模塊-5 2.2.3數(shù)碼管顯示模塊-5 2.2.4蜂鳴器輸出模塊-7 2.3軟件與硬件結(jié)合調(diào)試-7 2.4軟件設(shè)計(jì)-8 2.4.1系統(tǒng)分析-8 2.4.2程序設(shè)計(jì)-9三、課程設(shè)計(jì)心得體會(huì)-14四、參考文獻(xiàn)-15一、課程設(shè)計(jì)任務(wù)及目的 1.1 課程設(shè)計(jì)任務(wù) 1.1.1 技術(shù)要求:以MCS-51單片機(jī)為核心,設(shè)計(jì)出一個(gè)九九乘法表判斷器。2個(gè)數(shù)碼管顯示輸入答案;一個(gè)數(shù)字加1循環(huán)按鍵,一個(gè)乘按鍵,一個(gè)輸入答案按鍵,一個(gè)清零按鍵。若輸入正確,蜂鳴器鳴響2秒;答案錯(cuò)誤,則清零重新輸入。 1.1.2 原始數(shù)據(jù)及主要任務(wù) a、確定總體設(shè)計(jì)法案;b、設(shè)計(jì)鍵盤輸入電路;c、設(shè)計(jì)顯示電路;d、編寫系統(tǒng)程序;e、利用Protel設(shè)計(jì)硬件電路原理圖和PCB圖;f、軟硬件聯(lián)機(jī)調(diào)試。 1.2 課程設(shè)計(jì)目的(1)通過(guò)九九乘法表判斷器的設(shè)計(jì),掌握數(shù)碼管動(dòng)態(tài)顯示的原理;(2)通過(guò)單片機(jī)課程設(shè)計(jì),熟練掌握軟件編程的方法,將理論知識(shí)聯(lián)系到實(shí)踐中去,提高我們的動(dòng)腦動(dòng)手能力;(3)完成系統(tǒng)的硬件設(shè)計(jì)、軟件設(shè)計(jì)、仿真調(diào)試,學(xué)會(huì)將硬件知識(shí)和軟件知識(shí)結(jié)合起來(lái),使兩者相互補(bǔ)充,共同實(shí)現(xiàn)一個(gè)系統(tǒng)的功能;(4)通過(guò)課程設(shè)計(jì)加深理解課堂教學(xué)內(nèi)容,掌握單片機(jī)的基本應(yīng)用方法。通過(guò)實(shí)驗(yàn)熟悉微機(jī)基本接口芯片的外型、引腳、編程結(jié)構(gòu)。掌握程序設(shè)計(jì)和單片機(jī)基本接口電路的設(shè)計(jì)、應(yīng)用方法,做到理論聯(lián)系實(shí)際。2、 課設(shè)設(shè)計(jì)正文2.1硬件方案設(shè)計(jì) 2.1.1電路原理圖系統(tǒng)組成:該系統(tǒng)由單片機(jī)基本電路、數(shù)碼管顯示電路,按鍵輸入電路以及蜂鳴器電路組成。其中單片機(jī)基本電路已在課程設(shè)計(jì)專用單片機(jī)基本電路給出。2.1.2 PCB圖2.1.3系統(tǒng)工作原理 系統(tǒng)通過(guò)鍵盤輸入模塊向單片機(jī)輸入數(shù)據(jù),經(jīng)過(guò)單片機(jī)的計(jì)算按條件再向數(shù)碼管顯示模塊和蜂鳴器輸出指令,使之執(zhí)行相應(yīng)的動(dòng)作。各個(gè)模塊的工作原理將在下文做具體介紹。2.1.4STC90C52AD的引腳圖STC90C52AD的引腳說(shuō)明和功能說(shuō)明如下:XTAL1:接外部晶振的一個(gè)引腳。在單片機(jī)內(nèi)部,它是一反相放大器輸入端,這個(gè)放大器構(gòu)成了片內(nèi)振蕩器。采用外部振蕩器時(shí),此引腳應(yīng)接地。XTAL2:接外部晶振的一個(gè)引腳。在片內(nèi)接至振蕩器的反相放大器輸出端和內(nèi)部時(shí)鐘發(fā)生器輸入端。當(dāng)采用外部振蕩器時(shí),則此引腳接外部振蕩信號(hào)的輸入。RST:AT89C51的復(fù)位信號(hào)輸入引腳,高電位工作,當(dāng)要對(duì)芯片復(fù)位時(shí),只要將此引腳電位提升到高電位,并持續(xù)兩個(gè)機(jī)器周期以上的時(shí)間,AT89C51便能完成系統(tǒng)復(fù)位的各項(xiàng)工作,使得內(nèi)部特殊功能寄存器的內(nèi)容均被設(shè)成已知狀態(tài)。P0口(P0.0P0.7)是一個(gè)8位漏極開路雙向輸入輸出端口,當(dāng)訪問外部數(shù)據(jù)時(shí),它是地址總線(低8位)和數(shù)據(jù)總線復(fù)用。外部不擴(kuò)展而單片應(yīng)用時(shí),則作一般雙向IO口用。P0口每一個(gè)引腳可以推動(dòng)8個(gè)LSTTL負(fù)載。P2口(P2.0P2.7)口是具有內(nèi)部提升電路的雙向I/0端口(準(zhǔn)雙向并行I/O口),當(dāng)訪問外部程序存儲(chǔ)器時(shí),它是高8位地址。外部不擴(kuò)展而單片應(yīng)用時(shí),則作一般雙向IO口用。每一個(gè)引腳可以推動(dòng)4個(gè)LSTL負(fù)載。P1口(P1.0P1.7)口是具有內(nèi)部提升電路的雙向I/0端口(準(zhǔn)雙向并行I/O口),其輸出可以推動(dòng)4個(gè)LSTTL負(fù)載。僅供用戶作為輸入輸出用的端口。P3口(P3.0P3.7)口是具有內(nèi)部提升電路的雙向I/0端口(準(zhǔn)雙向并行I/O口),它還提供特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部隨機(jī)存儲(chǔ)器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋?.2單元電路設(shè)計(jì)2.2.1單片機(jī)基本系統(tǒng)1、電路說(shuō)明課程設(shè)計(jì)配發(fā)的小電路板(ISP-MCUBasiccircuit)電路原理圖。該板作為課程設(shè)計(jì)的核心電路板使用,板上有單片機(jī)及附屬電路,RS-232通信驅(qū)動(dòng)電路,高低電平測(cè)試電路等。課程設(shè)計(jì)電路中需要的其他電路在此基礎(chǔ)上擴(kuò)展,通過(guò)插孔連接。擴(kuò)展電路在萬(wàn)用板上制作。2、器件安裝PCB板上畫成熔斷器的器件“W1W4”安裝導(dǎo)線短接,最先安裝。然后依次安裝電阻、插孔座、DIP插座、發(fā)光二極管、瓷片電容、獨(dú)石電容、電解電容、按鈕,最后安裝接線端子和DB9插座。注意所有插座、插孔座、按鈕及接線端子一定要安裝牢靠。晶體諧振器處安裝插孔座,以便更換晶振。3、使用說(shuō)明基本電路板上的單片機(jī)使用宏晶公司支持串口下載程序(ISP)的單片機(jī),如STC90C52AD。單片機(jī)的技術(shù)資料和用于下載程序的軟件可從宏晶公司網(wǎng)站上下載,也可向指導(dǎo)老師所要。需要閱讀理解單片機(jī)資料中“在系統(tǒng)可編程使用”,用到模數(shù)轉(zhuǎn)換功能的組還要閱讀“A/D轉(zhuǎn)換寄存器及應(yīng)用”。調(diào)試程序時(shí)建議充分利用程序下載方便的有利條件,先編一些短小的程序驗(yàn)證硬件電路的正確性和使用方法的正確性。完整程序復(fù)雜時(shí)建議使用單片機(jī)仿真軟件幫助排除錯(cuò)誤。也可利用下載軟件自帶的串口工具幫助調(diào)試,通過(guò)單片機(jī)把運(yùn)行狀態(tài)和重要數(shù)據(jù)送到PC機(jī)。擴(kuò)展電路盡量不要再使用P3.0和P3.1口,必須使用時(shí)可作為單片機(jī)的輸出口使用。2.2.2按鍵輸入模塊按鍵輸入單元的電路圖如圖。該單元作為系統(tǒng)的輸入,采用了四個(gè)獨(dú)立按鍵,分別為數(shù)字加一循環(huán)按鍵S1(接P1.0口)、乘按鍵S2(接P1.1口)、答案輸入按鍵S3(接P1.2鍵)、清零按鍵S4按鍵(接P1.3口)。當(dāng)按鍵按下,電源與地短路,使單片機(jī)端口電平被拉低,從而檢測(cè)出一個(gè)輸入。各個(gè)接口通過(guò)插針與單片機(jī)相連。2.2.3數(shù)碼管顯示模塊(1) 電路說(shuō)明該單元作為系統(tǒng)的輸出顯示,采用兩個(gè)共陽(yáng)極數(shù)碼管動(dòng)態(tài)顯示。兩數(shù)碼管段選信號(hào)引腳并聯(lián)通過(guò)1K的限流電阻接到單片機(jī)的P2口,從P2.0到P2.7一次接數(shù)碼管的adp腳。由于采用了共陽(yáng)極的數(shù)碼管,因此不需要驅(qū)動(dòng)芯片來(lái)驅(qū)動(dòng)數(shù)碼管顯示,只需單片機(jī)引腳給出低電平相應(yīng)斷即可點(diǎn)亮。兩個(gè)數(shù)碼管的片選端分別接兩個(gè)PNP型三級(jí)管的集電極,三級(jí)管的射極接電源,基極接單片機(jī)P1.5、P1.6端。該三極管起到了控制以及放大電流的作用,使得單片機(jī)可以通過(guò)給相應(yīng)端口送低電平而使數(shù)碼管點(diǎn)亮。(2) 器件安裝通過(guò)查詢得到數(shù)碼管的引腳排序,找出響應(yīng)的引腳。在單片機(jī)端口外接1K的限流電阻,以防止電流過(guò)大損壞數(shù)碼管。兩個(gè)數(shù)碼管的片選端分別接兩個(gè)PNP型三級(jí)管的集電極,三級(jí)管的射極接電源,基極接單片機(jī)。注意數(shù)碼管、三極管的引腳不能接錯(cuò)。2.2.4蜂鳴器輸出模塊該單元作為系統(tǒng)的輸出,在計(jì)算結(jié)果正確時(shí)鳴響。2.3軟件與硬件結(jié)合調(diào)試硬件調(diào)試:硬件調(diào)試是利用DVCC實(shí)驗(yàn)與開發(fā)系統(tǒng)、基本測(cè)試儀器(萬(wàn)用表、示波器等),檢查用戶系統(tǒng)硬件中存在的故障。硬件調(diào)試可分為靜態(tài)調(diào)試與動(dòng)態(tài)調(diào)試兩步進(jìn)行。靜態(tài)調(diào)試:是在用戶系統(tǒng)未工作時(shí)的一種硬件檢測(cè)。第一步:目測(cè)。檢查外部的各種元件或者是電路是否有斷點(diǎn)。第二步:用萬(wàn)用表測(cè)試。先用萬(wàn)用表復(fù)核目測(cè)中有疑問的連接點(diǎn),再檢測(cè)各種電源線與地線之間是否有短路現(xiàn)象。第三步:加電檢測(cè)。給板加電,檢測(cè)所有插座或是器件的電源端是否符合要求的值第四步:聯(lián)機(jī)檢查。因?yàn)橹挥杏脝纹瑱C(jī)開發(fā)系統(tǒng)才能完成對(duì)用戶系統(tǒng)的調(diào)試。動(dòng)態(tài)調(diào)試:是在用戶系統(tǒng)工作的情況下發(fā)現(xiàn)和排除用戶系統(tǒng)硬件中存在的器件內(nèi)部故障、器件連接邏輯錯(cuò)誤等的一種硬件檢查。動(dòng)態(tài)調(diào)試的一般方法是由近及遠(yuǎn)、由分到合。由分到合是指首先按邏輯功能將用戶系統(tǒng)硬件電路分為若干塊,當(dāng)調(diào)試電路時(shí),與該元件無(wú)關(guān)的器件全部從用戶系統(tǒng)中去掉,這樣可以將故障范圍限定在某個(gè)局部的電路上。當(dāng)各塊電路無(wú)故障后,將各電路逐塊加入系統(tǒng)中,在對(duì)各塊電路功能及各電路間可能存在的相互聯(lián)系進(jìn)行調(diào)試。由分到合的調(diào)試既告完成。由近及遠(yuǎn)是將信號(hào)流經(jīng)的各器件按照距離單片機(jī)的邏輯距離進(jìn)行由近及遠(yuǎn)的分層,然后分層調(diào)試。調(diào)試時(shí),仍采用去掉無(wú)關(guān)元件的方法,逐層調(diào)試下去,就會(huì)定位故障元件了。軟件調(diào)試:軟件調(diào)試是通過(guò)對(duì)程序的匯編、連接、執(zhí)行來(lái)發(fā)現(xiàn)程序中存在的語(yǔ)法錯(cuò)誤與邏輯錯(cuò)誤并加以排除糾正的過(guò)程。可以利用仿真器加以調(diào)試,對(duì)系統(tǒng)單個(gè)單元進(jìn)行調(diào)試,當(dāng)單元電路成功后,在對(duì)整個(gè)程序調(diào)試,最后在用功CPU芯片調(diào)試。系統(tǒng)調(diào)試:在焊接完畢附加電路以后,可通過(guò)肉眼做初步的觀察,看是否存在虛焊、漏焊等明顯缺陷,確認(rèn)沒有以后,可以通電對(duì)蜂鳴器單元、數(shù)碼管顯示單元進(jìn)行調(diào)試:將蜂鳴器的使能端接到5V電源負(fù)極,正常鳴響則該單元合格。再將每個(gè)數(shù)碼管的使能端和段選端接到電源負(fù)極,如果每段都正常點(diǎn)亮則該單元合格。若某單元不正常,則需找出錯(cuò)誤改正后在調(diào)試,直到合格為止。對(duì)于按鍵單元?jiǎng)t可以通過(guò)萬(wàn)用表測(cè)其通態(tài)與斷態(tài)的電阻來(lái)確定其實(shí)否合格。合格時(shí),通態(tài)電阻接近0,斷態(tài)電阻接近無(wú)窮。至此,硬件電路設(shè)計(jì)完畢。2.4軟件設(shè)計(jì)2.4.1系統(tǒng)分析該系統(tǒng)為一個(gè)九九乘法表判斷器,故需要有乘數(shù)及答案的輸入。在硬件電路中設(shè)置了4個(gè)按鍵,S1、S2、S3、S4分別作為數(shù)字加一循環(huán)、乘、答案輸入、清零按鍵。兩個(gè)數(shù)碼管顯示輸入的數(shù)字。而蜂鳴器則在答案正確的時(shí)候作提示用。在按方面,由于只有一個(gè)數(shù)字循環(huán)鍵,所以,將乘按鍵和答案輸入鍵設(shè)置為多功能按鍵。在第一次按下S2時(shí)再按S1則可輸入第一個(gè)乘數(shù),第二次按下S2鍵的時(shí)候按K1鍵可以輸入第二個(gè)乘數(shù)。在S3第一次按下后,按S1輸入答案的十位數(shù),S3第二次按下后輸入答案的個(gè)位數(shù),S3第三次按下則判斷并顯示結(jié)果:正確則蜂鳴2秒,錯(cuò)誤則清零重來(lái)。這樣就減少了S1鍵的按鍵次數(shù)。同時(shí),在乘數(shù)沒有輸入完畢,即S2鍵按下少于2次時(shí),答案輸入按鍵是無(wú)效的;在輸入答案時(shí),S2是無(wú)效的。這樣避免了誤操作。在此技術(shù)要求下,程序流程圖如下:2.4.2程序設(shè)計(jì)/*Main.cfilegeneratedbyNewProjectwizard*Created:周五六月302017*Processor:80C51*Compiler:Keilfor8051*/#include#includetypedefunsignedchar uchar;typedefunsignedint uint;#defineSEG_INPUTP0sbitK1=P35;sbitK2=P34;sbitK3=P33;sbitK4=P32;sbitBUZZER=P36;sbitS1=P20;sbitS2=P21;voiddelay_ms(unsignedintx_ms);voidSEG_Display(uintnum,uinttime);unsignedcharSEG10=0xc0, 0xf9, 0xa4, 0xb0,0x99, 0x92, 0x82, 0xf8,0x80, 0x90;uintTime=0;uintNUMBER=0;ucharBUZZER_Flag=0;voidmain(void)ucharSTEP=0;ucharC1,C2,C3;ucharSignal_K1,Signal_K2,Signal_K3,Signal_K4;P1=0X00;TMOD=0x01;/設(shè)置定時(shí)器0為工作方式1TH0=(65536-100)/256;TL0=(65536-100)%256;EA=1;/打開中斷總開關(guān)ET0=1;/開定時(shí)器0中斷TR0=1;/啟動(dòng)定時(shí)器0Signal_K1=Signal_K2=Signal_K3=Signal_K4=0;while(1)/按鍵程序模塊if(K1=0) /輸入答案按鍵delay_ms(50);if(K1=0)Signal_K1=1;NUMBER=3;/ while(K1=1);if(K2=0) /數(shù)字加一循環(huán)delay_ms(5000);if(K2=0)Signal_K2=1; / while(K2=1);if(K3=0) /乘按鍵delay_ms(50);if(K3=0)Signal_K3=1; / while(K3=1);if(K4=0) /清零按鍵delay_ms(50);if(K4=0)Signal_K4=1;/ while(K4=1);/主邏輯程序模塊switch(STEP)case0:if(Signal_K1=1) STEP=1;NUMBER=0;break;case1:if(Signal_K1=1)NUMBER=0;if(Signal_K2=1)NUMBER+=10;if(Signal_K3=1)C1=NUMBER/10%10;STEP=2;break;case2:if(Signal_K1=1)NUMBER=C1*10;if(Signal_K2=1)NUMBER+=1;if(NUMBER%10=0)NUMBER-=10;if(Signal_K4=1)C2=NUMBER%10;C3=C1*10+C2;NUMBER=0;STEP=3;break;case3:if(Signal_K2=1)NUMBER+=1;if(Signal_K3=1)if(NUMBER%100=C1*C2)BUZZER_Flag=1;delay_ms(50000);delay_ms(50000);delay_ms(50000);delay_ms(50000);BUZZER_Flag=0;STEP=4;elseNUMBER=0; if(Signal_K1=1)NUMBER=0;break;/ case4:/ / break;default:STEP=0;Signal_K1=Signal_K2=Signal_K3=Signal_K4=0;/顯示模塊voiddelay_ms(uintx_ms)uinti=125;for(;x_ms0;x_ms-)for(;i0;i-);voidSEG_Display(uintnum,uinttime)ucharSEG_1,SEG_2;SEG_1=num%10;SEG_2=num/10%10;if(time=10)S1=1;S2=0;SEG_INPUT=SEGSEG_1;elseif(time=20)Time=0;if(BUZZER_Flag)if(Time)/BUZZER_Flag)BUZZER=0;elseBUZZER=1;voidDisplay()
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025商業(yè)辦公裝修合同協(xié)議范本
- 2025藝人經(jīng)紀(jì)合同范本(與經(jīng)紀(jì)人簽訂)
- 2025合作協(xié)議 合同范本
- 2025二手店面交易合同模板
- 2025企業(yè)茶葉批發(fā)合同
- 湖南省湘一名校聯(lián)盟2024-2025學(xué)年高一下學(xué)期4月期中聯(lián)考政治試題(原卷版)
- 基礎(chǔ)護(hù)理皮試說(shuō)課
- 超聲護(hù)理方案
- 酒店安全知識(shí)培訓(xùn)
- 大一自我鑒定總結(jié)模版
- DB37 5155-2019 公共建筑節(jié)能設(shè)計(jì)標(biāo)準(zhǔn)
- 2025年河北省職業(yè)院校高職組“食品安全與質(zhì)量檢測(cè)”技能大賽參考試題庫(kù)(含答案)
- 3、2024廣西專業(yè)技術(shù)人員繼續(xù)教育公需科目參考答案(99分)
- 中國(guó)血管性認(rèn)知障礙診治指南(2024版)解讀
- 康復(fù)治療技術(shù)-言語(yǔ)康復(fù)
- 闖關(guān)迷宮課件教學(xué)課件
- 浙江省臺(tái)州市2023-2024學(xué)年六年級(jí)上學(xué)期語(yǔ)文期末試卷(含答案)
- 統(tǒng)編版四年級(jí)下冊(cè)語(yǔ)文第七單元教學(xué)設(shè)計(jì)(含單元備課設(shè)計(jì)方案)
- 勞務(wù)掛靠合同范本(2篇)
- 體育-小學(xué)田徑水平二(三年級(jí))田徑單元-折返跑教學(xué)設(shè)計(jì)
- 踝泵運(yùn)動(dòng)健康宣教課件
評(píng)論
0/150
提交評(píng)論