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)

主站蜘蛛池模板: 国产国语一级毛片| 伊人久久福利中文字幕| 特级毛片8级毛片免费观看| 久久精品丝袜| 久久香蕉国产线看观看精品蕉| 日本午夜精品一本在线观看| 国产福利不卡视频| 毛片在线播放网址| 国产成人禁片在线观看| 在线观看无码av免费不卡网站| 欧美日韩免费观看| 996免费视频国产在线播放| 黄色片中文字幕| 欧美日韩一区二区在线免费观看| 色综合天天综合中文网| 亚洲精品你懂的| 欧美日韩福利| 日本不卡视频在线| 国产剧情一区二区| 不卡午夜视频| 九九九精品视频| 在线精品视频成人网| 亚洲人成人伊人成综合网无码| 欧美成人手机在线观看网址| 欧美一区二区啪啪| 青青青国产在线播放| 韩国v欧美v亚洲v日本v| 国产91久久久久久| 久久久久青草大香线综合精品| 国产精品无码一二三视频| 久久久久亚洲av成人网人人软件| 久久久久九九精品影院 | 男人天堂亚洲天堂| 性69交片免费看| 亚洲无码熟妇人妻AV在线| 国产在线无码一区二区三区| 91青青视频| 国产中文在线亚洲精品官网| 欧美黄网站免费观看| 亚洲人人视频| 黄片一区二区三区| 国产精品第页| 亚洲人成网线在线播放va| 在线不卡免费视频| 中文字幕乱码二三区免费| 91小视频在线观看免费版高清| 亚洲人成色在线观看| 久久人妻xunleige无码| 国产女人在线观看| 国产午夜不卡| 在线观看欧美国产| 伊人久久青草青青综合| 欧美日韩中文国产| 国产成人无码播放| 欧美不卡视频一区发布| 999国内精品视频免费| 亚洲成在人线av品善网好看| 欧美成人综合在线| 露脸国产精品自产在线播| 久久国产成人精品国产成人亚洲| 国产三级成人| 91国内视频在线观看| 国产成人夜色91| 久久久久亚洲av成人网人人软件| 国产内射在线观看| 国产偷国产偷在线高清| 免费一级成人毛片| 欧美福利在线播放| 一区二区理伦视频| 日本午夜三级| 久久这里只有精品8| 国产高清无码第一十页在线观看| 波多野结衣一区二区三区88| 91成人在线观看视频| 国产在线观看91精品亚瑟| a级毛片在线免费| 亚洲福利视频网址| www.youjizz.com久久| 91成人免费观看在线观看| 91在线中文| 亚洲区欧美区| 亚洲国产成人麻豆精品|