999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

單片機課程設計實驗項目設計

2016-03-10 15:31:26明鑫盧丹萍
廣西教育·C版 2016年1期

明鑫 盧丹萍

【摘 要】針對單片機課程設計這門課程傳統實驗方式的不足之處,設計了一種新的實驗項目;圍繞“單片機系統設計方法”這一主線,從計算器系統電路的構成、仿真圖的繪制、程序的編寫、印制電路板的設計等方面對新項目的實施做了詳細分析。

【關鍵詞】單片機課程設計 計算器系統 實驗課

【中圖分類號】G 【文獻標識碼】A

【文章編號】0450-9889(2016)01C-0163-03

單片機課程設計作為單片機原理課程的延伸,是一門以學生動手實踐為主的實驗課。本課程在傳統的教學中一般會以單片機實驗箱作為操作的平臺。教師設計一個綜合的實驗項目,學生在實驗箱上完成線路的連接程序的調試運行等操作,之后學生完成設計報告。單片機實驗箱內模塊眾多、接線雜亂,與實際應用不符,不利于學生理解和掌握單片機控制系統的設計過程及調試方法。因此在單片機課程設計中有必要引入一種新的實驗形式。該實驗項目作為單片機課程設計的一個綜合實驗內容,既要做到有別于單片機原理課程的驗證性實驗,又要做到理論聯系實際,具有一定的實用價值,還要能夠體現單片機系統開發的流程,激發學生的學習興趣,增強學生的動手能力。

鑒于此,開發了一個“計算器的設計”項目作為單片機課程設計的教學內容。本項目的要求如下:設計一個簡易計算器,能實現8位數之內的加減乘除運算,并要求學生按照單片機控制系統的開發流程,完成電路的仿真、程序的編寫、電路圖繪制、PCB板制作、焊接調試等工作。

一、計算器項目總體設計

為了實現計算器的功能,本系統應由單片機、輸入模塊、顯示模塊、聲光提示模塊和電源模塊幾部分構成,其組成框圖如圖1所示。

(一)控制器的選擇

本項目中選取STC90C58RD+單片機作為控制器。STC90C58RD+與AT89C51完全兼容,可直接替換。前者具備高達1280Btye的SRAM,32K字節flash存儲器,29K字節EEPROM,更高的可靠性及更低的功耗,使得它被越來越多的單片機開發者選用。

(二)顯示模塊的設計

單片機系統的輸出顯示部分,可以選用液晶屏或者數碼管。液晶屏價格相對較貴,驅動程序編寫較復雜,而數碼管具有價格低廉、驅動電路簡單、控制程序容易編寫等特點。而且本設計要求完成8位數范圍內的計算,因此使用8位數碼管作為顯示器件。

(三)輸入模塊的設計

按鍵作為單片機系統人機交互的輸入部分,有獨立式按鍵和行列式按鍵之分。獨立式按鍵占用單片機的IO口資源較多,不選用。本計算器項目中,需要輸入0-9的數字鍵以及代表各種運算操作的按鍵,需要按鍵數量多,因此選用行列式鍵盤。行列式鍵盤通過對行線和列線的電平狀態的組合來判斷哪個鍵被按下,可以用較少的IO口得到較多的按鍵。在本設計中采用4×4的行列式按鍵。

(四)聲光提示模塊的設計

本設計中需要在按鍵按下時發出“嘀”提示音,而且在運算結果溢出的時候發出聲光提示。溢出選用最常用的蜂鳴器和發光二極管作為聲光提示模塊。

二、計算器項目的仿真

在電路實際制作之前的仿真是單片機系統開發過程中一個非常重要的環節,通過仿真能夠驗證設計方案是否可行。本設計是一個單片機系統,既有電路的仿真又有程序的仿真,因此選用Proteus軟件進行系統仿真。

仿真軟件Proteus是英國Lab Center Electronics公司研制的EDA軟件。它不但和普通仿真軟件一樣能夠仿真模擬電路,最大的特色是能夠仿真單片機及外圍器件,能進行代碼調試。

學生熟練掌握本軟件的使用,對完成單片機項目的設計開發有較大的促進作用。

(一)仿真電路設計

1.單片機最小系統仿真電路設計

單片機的最小系統指單片機工作的、由最少的電路構成的系統,包括晶振電路和復位電路。晶振X1和兩個瓷片電容C1、C2構成了單片機的時鐘電路。手動復位按鍵、電解電容C3和電阻R2構成單片機的上電復位和手動復位電路。

2.顯示模塊仿真電路設計

數碼管的驅動由斷碼驅動和位選端驅動構成。單片機的P0口用于輸出數碼管的段碼。由于P0口是標準的雙向IO口,內部沒有上拉電阻,因此P0口連了一個1K的排阻RP1。P2口的8個引腳用于控制8個數碼管的位選端,分別經過Q2-Q9這8個三極管驅動8位數碼管。

3.輸入模塊仿真電路設計

單片機的P1口連接一個4×4的行列式鍵盤。P1口的低4位作為行列式鍵盤的4條列線,高4位作為行列式鍵盤的4條行線。

4.聲光提示模塊仿真電路設計

聲光提示電路由一個發光二極管和一個蜂鳴器構成。蜂鳴器由NPN型三極管Q1驅動。當系統上電時P3.6引腳為高電平,三極管截止,蜂鳴器不會誤動作。當需要蜂鳴器發出聲音時置P3.6引腳為低電平即可。發光二極管有P3.3引腳控制,低電平有效。

綜上各個模塊,此計算器系統完整的仿真電路如圖2所示:

(二)計算器程序設計

計算器項目的控制程序在Keil C軟件中完成。Keil 是一款針對51單片機內核的集成編譯環境,具有很高的編譯效率。

1.程序設計思路

本程序主要完成3方面的任務:掃描數碼管、掃描按鍵、處理按鍵;因此編制了兩個獨立的函數Display( )和KeyBoard( )完成掃描數碼管和掃描按鍵的功能。為了在按下不同的鍵值的時候完成不同的功能,使用了switch語句,這樣程序的結構會比較清晰。

在主程序里面定義了以下幾個變量:

unsigned char Key,InputCnt,LastOpt。

unsigned long Result,InputData。

變量Key用于暫存當前按下去的鍵值。

變量InputCnt用于存放輸入數字的個數,當輸入數字超過8個時就不能接收這個數字,并報警提示;

變量LastOpt用于存放前一次輸入的運算類型。因為按下加、減、乘、除中某種運算的時候,計算器做的并不是當前的這種運算類型,而是前一次按下的運算類型。

變量Result用于存放運算的結果。由于計算器可以進行連續的多次運算,Result的值是會在每次運算之后改變的。

變量InputData用于保存輸入的操作數,并作按下某種運算的按鍵后與Result的值進行相應的運算,把結果保存到Result里面。

2.主程序設計

程序的流程圖如圖3所示。

系統上電后首先進行系統初始化,對各個變量賦初值。然后調用按鍵函數,判斷是否有鍵按下。若無按鍵按下則掃描數碼管,接下來再次掃描按鍵。

若有按鍵按下,則會出現3種情況。第一種情況,按下的為數字鍵“0-9”,而且輸入數字的位數InputCnt小于8的話,就把按下去的鍵值接收到變量InputData里面,更新一次顯示緩沖區,讓數碼管顯示輸入的數字。如果InputCnt大于等于8,說明輸入數字的位數已經達到最大不能再輸入了,并發出報警提示;第二種情況,按下的鍵為“加、減、乘、除、等于”鍵,則根據LastOpt的取值把變量Result和InputData的值進行運算,并把結果存放到Result里面。同時更新一次顯示緩沖區,讓數碼管顯示運算的結果;第三種情況,按下的鍵為清零鍵“C”,則給各個變量重新賦初值,顯示緩沖區清零,準備開始下一次計算。

3.子程序分析

在程序中調用了幾個子函數,這幾個子函數的邏輯關系如圖4所示。

函數原型: void FillDispBuf(ulong a)

函數功能: 把ulong a這個數處理后存入顯示緩沖區。若a沒有超過8位十進制數的范圍則把它拆分后直接存入顯示緩沖區即全局數組DispBuf[8];若a超過這個范圍則需要在數碼管顯示“Error”,因此需要把這幾個字形的段碼存入DispBuf[8]。

函數原型: uchar KeyBoard(void)

函數功能: 讀取4×4行列式鍵盤的鍵值。若有按鍵按下則返回0- 15之間的某個鍵值,若無按鍵按下則返回21。

函數原型: void Display(void)

函數功能: 掃描8位數碼管。全局數組uchar DispBuf[8]為顯示緩沖區。本函數把數組DispBuf[8]里面的8個元素的數值在8個數碼管上顯示出來。

函數原型: void DelayMs(uint j)

函數功能: 延時N毫秒,參數 j 表示需要延時的時間為j毫秒。

在實驗的過程中,只要把幾個子函數的代碼及相應功能告訴學生,學生就能在此基礎上進行頂層代碼的編寫調試。如果學生時間充裕,也可自己編寫以上幾個子函數的代碼。

三、計算器實物的制作及調試

本項目的設計內容在仿真軟件中驗證通過之后,就是實物電路的制作。電路圖原理圖和PCB圖的設計在PROTEL99SE中完成。

本設計所需元件清單如表1所示。實驗室為每個學生準備一套對應的元器件。

為了更好的讓學生掌握單片機系統開發的流程,后續的實驗有3種方式可以進行,每個學生可根據自己的實際情況選擇。

A:學生可根據原理圖和元件清單中的元器件,在萬用板上自己焊接這個電路。直到電路調試成功,并下載程序運行。

B:學生可根據電路原理圖繪制PCB電路板,并在實驗中完成電路板的轉印、腐蝕、鉆孔等操作,然后焊接元器件并調試運行。

C:實驗室通過專業的電路板工廠把“計算器項目”的PCB板加工出來。并且把此電路板及配套的元器件分發給學生焊接調試。統一生產出來的電路板及元器件套件如圖5所示。

最終學生都能制作出一個調試成功的實物計算器。

通過對單片機課程設計新實驗項目的實施,改變了本課程的教學組織形式,激發了學生的興趣,增強了學生的動手能力。學生在完成“計算器設計”項目的過程中掌握了單片機系統的設計方法以及調試技巧。實踐表明這樣的方式收到了良好的效果,具有較大推廣價值。

【參考文獻】

[1]代芬,王衛星,鄧小玲,等.單片機綜合實驗開發板設計[J].實驗室研究與探索2010,29(8)

[2]林祥果.高職單片機課程設計與教學實踐[J].寧波職業技術學院學報,2014,18(01)

[3]潘談.基于STC89C58芯片的小型GPS船舶航跡儀的設計[J].船舶科學技術,20=14,36(12)

[4]袁芳,江偉,陳冬等.籃球比賽場地計時計分系統的設計[J].實驗室研究與探索,2014,33(11)

[5]王海燕,楊艷華.Proteus和Keil軟件在單片機實驗教學中的應用[J].實驗室研究與探索,201,31(5)

[6]包建華,張興奎,丁啟勝.模塊化單片機實驗系統的研制[J].電氣電子教學學報,2010,32(6)

[7]丁春霞.基于51單片機的LCD數字鐘設計與制作[J].中國科技信息,2013(18)

主站蜘蛛池模板: 国产爽歪歪免费视频在线观看| 五月激情婷婷综合| 美女内射视频WWW网站午夜| 激情六月丁香婷婷四房播| 欧美中文字幕第一页线路一| 麻豆国产在线不卡一区二区| 国产色婷婷| 欧美在线精品一区二区三区| 亚洲二三区| 19国产精品麻豆免费观看| AV天堂资源福利在线观看| 中文字幕丝袜一区二区| 国产丝袜丝视频在线观看| 亚洲中字无码AV电影在线观看| 国产 日韩 欧美 第二页| 亚洲激情区| 青草视频久久| 亚洲第一精品福利| 在线欧美一区| 青青青亚洲精品国产| 98超碰在线观看| 强乱中文字幕在线播放不卡| 五月婷婷综合在线视频| 一本久道久综合久久鬼色| 亚洲欧洲日韩久久狠狠爱 | 国产午夜人做人免费视频| 成人一区在线| 亚洲一区二区约美女探花| 日韩精品一区二区深田咏美| 思思热精品在线8| 久久国产拍爱| 亚洲国内精品自在自线官| 亚洲天堂精品视频| 伊在人亞洲香蕉精品區| 丁香婷婷激情网| 亚洲高清在线天堂精品| 免费在线a视频| 国产免费福利网站| 91精品人妻互换| 伊伊人成亚洲综合人网7777| 日韩成人在线网站| 一级片一区| 成年午夜精品久久精品| 五月天丁香婷婷综合久久| 国产精品无码作爱| 好吊色妇女免费视频免费| 亚洲最猛黑人xxxx黑人猛交| 久久精品人人做人人综合试看| 亚洲国产中文精品va在线播放| 亚洲av片在线免费观看| 国产二级毛片| 香蕉久久国产超碰青草| 欧美激情综合一区二区| 五月婷婷导航| 无码 在线 在线| 五月天天天色| 91视频青青草| 1769国产精品视频免费观看| 亚洲激情99| 天天操精品| 国产成人a在线观看视频| 亚洲男人的天堂久久精品| 亚洲无码视频图片| 国产一区二区三区夜色 | 美女视频黄频a免费高清不卡| 久久这里只有精品免费| 免费在线色| 国产精品视频3p| 亚洲AV成人一区二区三区AV| 亚洲国产精品一区二区第一页免| 日韩欧美国产成人| 国产特一级毛片| 人人看人人鲁狠狠高清| 日韩美一区二区| 美女被操91视频| 精品视频一区二区观看| 伊在人亚洲香蕉精品播放 | 久久亚洲国产视频| 亚洲视屏在线观看| 露脸真实国语乱在线观看| 免费A级毛片无码免费视频| 无码人妻热线精品视频|