① 單片機實訓總結範文5篇
單片機實訓課程,是農業工程類專業非常重要的專業技術課,是後續專業實踐課的基礎,大家做好實訓 總結 ,總結更多的 經驗 。下面是我給大家帶來的單片機實訓總結 範文 _單片機實訓 工作總結 ,以供大家參考,我們一起來看看吧!
↓ ↓ 更多關於 「 實 訓總 結 」 內容推薦 ↓ ↓
★ 單 片機實 訓報 告 ★
★ 單 片 機實 訓心得 體 會 ★
★ 實 訓總 結報 告范 文 ★
★ 實 訓總 結與心 得 體 會 ★
★ 實 習實訓總 結報 告 ★
▼ 單片機實訓總結範文篇一:
通過今次單片機實訓,使我對單片機的認識有了更深刻的理解。系統以51單片機為核心部件,利用匯編軟體編程,通過鍵盤控制和數碼管顯示實現了基本時鍾顯示功能、時間調節功能,能實現本設計題目的基本要求和發揮部分。
由於時間有限和本身知識水平的限制,本系統還存在一些不夠完善的地方,要作為實際應用還有一些具體細節問題需要解決。例如:不能實現只用兩個按鍵來控制時鍾時間,還不能實現鬧鍾等擴展功能。
踉踉蹌蹌地忙碌了兩周,我的時鍾程序終於編譯成功。當看著自己的程序,自己成天相伴的系統能夠健康的運行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最終都會化為甜美的甘泉。
但在這次實訓中同時使我對匯編語言有了更深的認識。當我第一次接觸匯編語言就感覺很難,特別是今次實訓要用到匯編語言,盡管困難重重,可我們還是克服了。這次的實訓使培養了我們嚴肅認真的做事作風,增強了我們之間的團隊合作能力,使我們認識到了團隊合作精神的重要性。
這次實訓的經歷也會使我終身受益,我感受到這次實訓是要真真正正用心去做的一件事情,是真正的自己學習的過程和研究的過程,沒有學習就不可能有研究的能力,沒有自己的研究,就不會有所突破。希望這次的經歷能讓我在以後學習中激勵我繼續進步。
▼ 單片機實訓總結範文篇二:
通過這一個學期的單片機學習,我收獲了很多關於單片機的知識,並且這些知識和日常的生活息息相關。了解了一些簡單程序的錄入,LED 顯示器 、鍵盤、和顯示器的應用和原理。
LED顯示器:LED顯示器是由發光二管組成顯示欄位的器件。通常的8段LED顯示器是由8個發光二極體組成,LED顯示器分共陽極和共陰極兩種。有段選碼和和位選碼。當LED顯示器每段的平均電流位5MA時,就有較滿意的亮度,一般選擇斷碼5-10MA電流;位線的電流應選擇40-80MA。LED顯示器的顯示方式有動態和靜態兩種。7289A晶元是具有SPI串列介面功能的顯示鍵盤控制晶元,它可同時取得8位共陰極數碼管和64個鍵的鍵盤矩陣。7289A的控制指令分為兩類:8位寬度的單位元組指令和16位寬度雙位元組指令;還有閃爍指令和消隱指令。7289A採用串列方式SPI匯流排與微處理器通信;7289A與AT89C52介面電路,在實際電路中無論接不接鍵盤,電路中連接到其各段上的8個 100千歐的下拉電阻均不可以省去,如果不接鍵盤而只接顯示器可以省去8個10千歐電阻,若僅接鍵盤而不接顯示器,可省去串入DP及SA-SG連線的8個220歐電阻,7289A還需要外接晶體振盪電路。液晶顯示器簡稱LCD,其顯示原理是用經過處後的液晶具有能改變光線傳輸方向的特性,達到顯示字元和圖形的目的。最簡單的筆段式液晶顯示器類似於LCD顯示器,可以顯示簡單的字元和數字,而目前大量使用的是點陣式LCD顯示器,既可以顯示字元和數字也可以顯示漢字和圖形。如果把LCD顯示屏、背光可變電源、介面控制邏輯、驅動集成晶元等部件構成一個整體,是的與CPU介面十分方便。
鍵盤:鍵盤是最常見的計算機輸入設備,它廣泛應用於微型計算機和各種終端設備上。計算機操作者通過鍵盤向計算機輸入各種指令、數據,指揮計算機的工作。按照鍵盤的工作原理和按鍵方式的不同,可以劃分為四種:機械式鍵盤採用類似金屬接觸式開關,工作原理是使觸點導通或斷開,具有工藝簡單、噪音大、易維護的特點。 塑料薄膜式鍵盤鍵盤內部共分四層,實現了無機械磨損。其特點是低價格、低噪音和低成本,已佔領市場絕大部分份額。 導電橡膠式鍵盤觸點的結構是通過導電橡膠相連。鍵盤內部有一層凸起帶電的導電橡膠,每個按鍵都對應一個凸起,按下時把下面的觸點接通。這種類型鍵盤是市場由機械鍵盤向薄膜鍵盤的過渡產品。 無接點靜電電容式鍵盤使用類似電容式開關的原理,通過按鍵時改變電極間的距離引起電容容量改變從而驅動編碼器。特點是無磨損且密封性較好。
按照按鍵方式的不同鍵盤可分為接觸式和無觸點式兩類。接觸式鍵盤就是我們通常所說的機械式鍵盤,它又分為普通觸點式和干簧式。普通觸點式的兩個觸點直接接觸,從而使電路閉合,產生信號;而干簧式鍵盤則是在觸點間加裝磁鐵,當鍵按下時,依靠磁力使觸點接觸,電路閉合。與普通觸點式鍵盤相比,干簧式鍵盤具有響應速度快、使用壽命長、觸點不易氧化等優點。無觸點式鍵盤又分為電容式、霍爾式和觸摸式三種。其中電容式是我們最常用到的鍵盤類型,它的觸點之間並非直接接觸,而是當按鍵按下時,在觸點之間形成兩個串聯的平板電容,從而使脈沖信號通過,其效果與接觸式是等同的。電容式鍵盤擊鍵時無雜訊,響應速度快,但是價格很高一些。
顯示器:按照顯示器的顯示管分類CRT、LCD。按顯示色彩分類單色顯示器、彩色顯示器。按大小分類通常有14寸、15寸、17寸和19寸,或者更大。顯示管的屏幕上塗有一層熒光粉,電子槍發射出的電子擊打在屏幕上,使被擊打位置的熒光粉發光,從而產生了圖像,每一個發光點又由「紅」「綠」「藍」三個小的發光點組成,這個發光點也就是一個象素。由於電子束是分為三條的,它們分別射向屏幕上的這三種不同的發光小點,從而在屏幕上出現絢麗多彩的畫面。顯示器顯示畫面是由顯示卡來控制的。若仔細觀察顯示器上的文本或圖像是由點組成的,屏幕上點越多越密,則解析度越高。
屏幕上相鄰兩個同色點的距離稱為點距,常見點距規格有0.31mm、0.28mm、0.25mm等。顯示器點距越小,在高解析度下越容易取得清晰的顯示效果。電子束採用光柵掃描方式,從屏幕左上角一點開始,向右逐點進行掃描,形成一條水平線;到達最右端後,又回到下一條水平線的左端,重復上面的過程;當電子束完成右下角一點的掃描後,形成一幀。此後,電子束又回到左上方起點,開始下一幀的掃描。這種 方法 也就是常說的逐行掃描顯示。而隔行掃描指電子束在掃描時每隔一行掃一線,完成一屏後再返回來掃描剩下的線,這與電視機的原理一樣。隔行掃描的顯示器比逐行掃描閃爍得更厲害,也會讓使用者的眼睛更疲勞。完成一幀所花時間的倒數叫垂直掃描頻率,也叫刷新頻率,比如60Hz、75Hz等。
通過這幾天的單片機的實訓,我在理論的基礎上更深刻的掌握了單片機的深層內容及實際生活中的應用,實訓鍛煉了自己動手能力和思維能力,還有在軟體方面的編程能力,讓我受益匪淺,同時也暴露出一些平時學習上的問題,讓我深刻 反思 。這些問題的發現將為我以後的學習和工作找明道路,查漏補缺為進一步學習作好准備。通過實訓,讓我懂得了如何編寫一些簡單的程序,學會了如何製作單片機應用程序,並且可以在今後的日常生活中靈活運用。
▼ 單片機實訓總結範文篇三:
一 實習目的
1. 通過對單片機小系統的設計、焊接、裝配,掌握電路原理圖及電子線路的基本焊接裝配工藝、規范及注意事項;
2. 通過對系統板的測試,了解系統板的工作原理及性能,掌握元器件及系統故障的排除方法;
3. 掌握程序編制及調試方法,完成系統初始化、存儲器操作、埠操作、鍵盤顯示等程序的編制及調試(匯編語言、C語言均可);
4. 通過單片機系統的組裝,調試以及程序編制、調試及運行,與理論及實驗的有機結合和指導教師的補充介紹,使學生掌握控制系統的工作原理、開發方法和操作方法。
5. 培養學生解決實際問題的能力,提高對理論知識的感性認識。
二 實習意義
通過本實習不但可以掌握單片機軟、硬體的綜合調試方法,而且可以熟練掌握電路原理圖,激發對單片機智能性的探索精神,提高學生的綜合素質,培養學生應用單片機實現對工業控制系統的設計、開發與調試的能力。在製作學習過程中,不但可以掌握軟、硬體的綜合調試方法,而且可以使學生對單片機智能性產生強烈的慾望。達到最大限度地掌握微機應用技術,軟體及介面設計和數據採集與處理的技能,培養電綜合實踐素質的目的。
三 系統基本組成及工作原理
1 系統基本組成
系統以單片機STC89C52作為控制核心,各部分基本組成框圖如圖1所示。
流水燈部分由單片機、鍵盤模塊等組成;
四位數碼顯示,編程實現30秒倒計時部分由單片機、鍵盤模塊、液晶顯示模塊等組成;
按鍵功能部分通過按鍵控制流水燈部分、四位數碼顯示部分;
電子鍾部分由單片機、鍵盤模塊、液晶顯示模塊等組成;
使用功能鍵實現相應的功能組合部分通過流水燈部分、30秒倒計時部分實現;
模數轉換部分由單片機、ADC0809轉換模塊、鍵盤模塊、液晶顯示模塊等組成。
2 系統工作原理
本設計採用STC89C52RC單片機作為本系統的控制模塊。單片機可把由ADC0809及單片機中的數據利用軟體來進行處理,從而把數據傳輸到顯示模塊,實現阻值大小的顯示。以數碼管顯示為顯示模塊,把單片機傳來的數據顯示出來。在顯示電路中,主要靠按鍵來實現各種顯示要求的選擇與切換。
對於模數轉換部分,單片機89C51通過P0口的I/O線向ADC0809發送鎖存地址以及復位、啟動轉換等信號,並查詢轉換狀態。 ADC0809啟動轉換後,將0-8個通道一次輸入的電壓信號轉換成相應的數字量,供89c51讀取使用,並且將EOC置1供單片機查詢轉換狀態。而滑動變阻器負責將阻值信號轉換成電壓信號,再送到ADC0809的八個通道。當單片機查詢到轉換結束後依次讀取數據並按照現實的需要進行二進制轉BCD碼等處理最後控制顯示電路顯示出數字。 其實現方式是:ADC0809轉換來自3通道的阻值變化信號。80c51的P2口與ADC0809的輸出相連用於讀取轉換結果,同時P0.0-P0.6作控制匯流排,向ADC0809發送鎖存、啟動等控制信息,並查詢EOC狀態。ALE經分頻後給ADC0809提供時鍾信號。P3.0和P3.1口用於向顯示電路輸出段碼,P3.2-P3.7用於數碼管的位選。
四 系統硬體設計
結合本設計的要求和技術指標,通過對系統大致程序量的估計和系統工作的估計,考慮價格因素。選定AT89C51單片機作為系統的主要控制晶元,8位模擬轉換器ADC0809進行阻值轉換。 逐次比較法A/D轉換器是目前種類最多、應用最廣的A/D轉換器,其原理即「逐位比較」,其過程類似於用砝碼在天平上稱物體重量。它由N位寄存器、A/D轉換器、比較器和控制邏輯等部分組成,N位寄存器代表N位二進制碼。目前應用最廣的逐次比較法A/D轉換器有ADC0809。它是一種8路模擬輸入8位數字輸出的逐次比較法A/D轉換器件。其主要性能指標和特性如下:
分表率:8位
轉換時間:取決於晶元時鍾頻率,轉換一次時間位64個時鍾周期
單一電源:+5v
模擬輸入電壓范圍:單極性0-+5v;雙極性-5v-+5v
具有可控三態輸出鎖存器
啟動轉換控制位脈沖式,上升沿使內部所有寄存器清零,下降沿使A/D轉換開始。
通過以上性能比較,我們不難看出ADC0809滿足本設計的要求,所以本設計採用ADC0809作為A/D轉換器
1 按鍵電路設計
利用單片機的P1口擴展一個8位鍵盤。
2 晶振與復位電路設計
本設計採用的是上電復位的形式,如圖3.3所示,上電順進RST獲得高電平,隨著電容器C的充電,RST引腳上的高電平將逐漸下降,只要高電平能保持復位所需要的兩個機器周期以上時間,單片機就能實現復位操作。 晶振電路為單片機提供工作所需要的時鍾信號。震盪頻率越高,系統時鍾頻率也越高,單片機運行的速度就越快。其電路如圖3.4所示。89C51的_TAL1和_TAL2兩個引腳跨接晶體振盪器和微調電容C1、C2形成反饋電路,就構成了穩定的自激振盪器,本設計的震盪器頻率為12MHZ。
3 下載電路設計
4 流水燈模塊設計
5 模數轉換模塊設計
6 顯示電路設計
本設計採用六位數碼管。本系統採用共陽極動態掃描的方式連接。數碼管的段碼數據由89C51的P3.0-P3.1口送出,89C51的P3.2-P3.7輸出位選通信號,只有被選中的那位數碼管才會顯示段碼
7 整體電路設計
五 系統軟體設計
1主程序設計
主程序採用分支結構,以狀態號標識系統所處的狀態。在上電初始化後即進入狀態號的輪詢掃描,狀態號的值決定了分支程序的入口。其中分支程序分別為:AD轉換模塊(狀態號為0),數字模塊狀態號為1),倒計時模塊(狀態號為2),電子鍾模塊(狀態號為3),功能組合模塊(狀態號為4),流水燈模塊(狀態號為5)。
2 功能子程序設計
2.1 流水燈模塊
流水燈模塊利用單片機的P3口,通過給P3口的各位送低電平,相應的實現流水燈有規律的點亮。
2.2 30秒倒計時模塊
30秒倒計時模塊利用單片機的P3.0與P3.1口送相應的段控數據,P3.2-P3.7口送相應的位控數據。通過程序實現30秒倒計時。
2.3 數字加減模塊
利用數碼管實現數字顯示,通過加一鍵或者是減一鍵實現數字變數的加一或者減一,進而實現利用數碼管顯示加一鍵、減一鍵功能。
2.4 電子鍾模塊
利用數碼管實現時間顯示,通過加一鍵或者是減一鍵實現小時變數或者是分鍾變數的加一,從而實現調時功能。
2.5 模數轉換模塊
對於模數轉換部分,單片機89C51通過P0口的I/O線向ADC0809發送鎖存地址以及復位、啟動轉換等信號,並查詢轉換狀態。 ADC0809啟動轉換後,將0-8個通道一次輸入的電壓信號轉換成相應的數字量,供89c51讀取使用,並且將EOC置1供單片機查詢轉換狀態。而滑動變阻器負責將阻值信號轉換成電壓信號,再送到ADC0809的八個通道。當單片機查詢到轉換結束後依次讀取數據並按照現實的需要進行二進制轉BCD碼等處理最後控制顯示電路顯示出數字。 其實現方式是:ADC0809轉換來自3通道的阻值變化信號。80c51的P2口與ADC0809的輸出相連用於讀取轉換結果,同時P0.0-P0.6作控制匯流排,向ADC0809發送鎖存、啟動等控制信息,並查詢EOC狀態。ALE經分頻後給ADC0809提供時鍾信號。P3.0和P3.1口用於向顯示電路輸出段碼,P3.2-P3.7用於數碼管的位選。
六 實習總結 、體會
本次單片機實習我們一共完成了個模塊的程序設計,包括:led顯示模塊、數碼管顯示模塊和鍵盤模塊。分別實現了流水燈的循環點亮控制、數碼管的靜態和動態計數顯示,還有矩陣鍵盤按鍵控制數碼管顯示的程序設計。然後我們分別用protues系統模擬軟體對各個模塊進行了模擬模擬,用keil軟體編制了匯編語言程序,驗證了我們所設計的程序。 這次實習還使我理解了編寫程序的一些技巧。單片機應用系統一般由包含多個模塊的主程序和由各種子程序組成。每一模塊都要完成一個明確的任務,實現某個具體的功能,如計算、接受、發送、延時、顯示等。採用模塊化程序設計方法,就是將這些具體功能程序進行獨立設計和分別調試,最後將這些模塊程序裝配成整體程序並進行聯合調試。模塊化程序設計方法的優點:一個模塊可以為多個程序所共享;單個功能明確的程序模塊的設計和調試比較方便,容易完成;利用已經編好的成熟模塊,將大大縮短開發程序的時間,降低開發成本。採用循環結構和子程序結構可以使程序的容量大大減少,提高程序的效率,節省內存。對於多重循環,要注意各重循環的初值和循環結束的條件,避免出現程序無休止循環的「死循環」現象; 通過這次的實習我發現,只有理論水平提高了,才能夠將課本知識與實踐相結合,理論知識服務於教學實踐,以增強自己的動手能力。這次實習十分有意義,這次實習我們知道了理論和實踐的距離,也知道了理論和實踐相結合的重要性。 回顧起此次課程設計,感覺受益匪淺,從拿到題目到完成整個編程,從理論到實踐,學到很多很多的課堂理論中沒學到過的東西,不僅對鍵盤的識別技術這一章節的知識點有了深刻的認識,而且對這學期開設的單片機這門課程有了更全面的了解,尤其是在學習使用proteus軟體片編程和模擬時收獲良多。通過這次單片機課程設計,還使我懂得了實踐的重要性。同時在程序調試的過程中提高自己的發現問題、解決問題、實際動手和獨立思考的能力。 這次課程設計能順利的完成,除了我們的努力外,當然也離不開指導老師申老師的辛勤指導,致使我在設計的過程中學到了很多實用性的知識。同時,對給過我幫助的所有同學和各位指導老師表示忠心的感謝!
▼ 單片機實訓總結範文篇四:
通過為期一周的單片機實訓,是我們對這門課有了許多新的了解,彌補了在課堂上學習的不足。相信這對我們以後的學習和工作都會有很大的幫助。我們一定要在最短的時間里對這些不足加以改正!
首先,在這次試訓中我被單片機強大的功能所震撼,以前在課堂上完全沒有能理解可編程單片機的優越性。這次通過實體模擬軟體等輔助軟體的共同效果,是這次試訓有了鮮明的活力。換是我們認識到這次試訓不僅僅是一個軟體的應用,更多的是使我們認識到學習到很多在課堂上無法得到的東西。特別是protues軟體的功能是我們了解了當今開發系統的新方向,簡直太不可思議啦!
單片機作為一種最簡單的軟體,與我們的日常生活息息相關,了解一些單片機程序的簡單錄入是非常必要的。如:LED顯示器、鍵盤和顯示器的應用和原理。
在被刺實訓中我們每個人通過一個八位流水燈的製作,使我們深深地體會到了單片機在現實生活中的小小應用,既增強了我們的好奇心,又鞏固了我們的理論知識。更讓我們體會到了單片機手動的開始平台的完善與成熟。只要你有想法,單片機就有可能讓他成為現實。這里我學習完protues軟體後的第一感覺是,雖然這軟體工作不穩定,但是會有相當不錯的效果出來。這對我以後的工作一定會有幫助的。在這次試訓中不僅只對單片機編程有了新的認識,還對整個單片機的開發平台都有了一廳的了解,這是一筆不錯的收獲。
通過這幾天的試訓,使我的感觸很深,真實「條條大路通羅馬」,要達到目的,不同的人就有不同的方法。只要你的方法不錯!五花八門都可以,而且是各有特色。走出來的結果都有各自的獨到之處。在編程中「簡」字貫穿於整個程序設計中,越簡單越好,畢竟單片機留給用戶的資源是有限的,所以我們要充分利用這些資源,達到更好的效果,這些是我們在以後的學習生活中應值得注意的地方。
在試訓中有苦有甜,當我們為一個很難攻破的程序找出路時,心情煩躁,感覺自己很不可理喻,當程序一點一點編好後,自己從心底感覺到一點小小的安慰,看著自己的成果。感覺很欣慰,有一絲絲的甜意,幾天的實訓使自己的思維邏輯也有了小小的進步。
▼ 單片機實訓總結範文篇五:
這是我第一次做單片機實驗,說起來有一些緊張和新奇。在此之前我並沒有接觸過單片機,我本以為與之前的光學實驗及 其它 實驗差不多,可我進到實驗室之後,我就改變了這個看法。
單片機實驗要求的是一種思維的創新,而不是簡單的重復老師所說的實驗步驟。因此第一次實驗,實驗老師向我們講解了CVAVR編譯器的大體情況及使用方法和技巧,並簡單的向我們示例——如何在CVAVR中編寫一段程序。編完程序之後,知道我們如何使用AVRStudio達到將編好的程序輸入到單片機中來使其運行。
之後老師讓我們以組為單位合作編寫一段程序,並使其運行。我們組想要編寫一個跑馬燈的程序。在第一次運行CVAVR時,我們組就遇到了一個麻煩,我們在建立一個新project文件那裡出現了錯誤。在保存這個新project文件的時候,我們單擊了Save,而不是Generate,SaveandE_it.因此它彈不出我們我們所需要的源程序。之後我們通過詢問其他人解決了這個問題。在編程中,我們開始做的是兩盞燈的交替閃爍,間隔時間是1000ms。在運用AVRStudio的時候,我們又犯了一個錯誤。在我們打開編譯好的工程文件時,開始調試,在最後一步點擊Finish時,彈出一對話框,問我們是否更新,然後我們單擊了Yes。這導致了模擬器無法下次使用。這是由於實驗室中的模擬器是盜版的,無法進行更新。
經過我們的不斷努力,我們終於實現了簡單的跑馬燈的運行,便是兩個燈地交替閃爍。我們感到興奮極了。但是我們並沒有滿足於當前,我們又編寫了三個燈地交替閃爍,四個及多個。當我們一步步實現我們的目的時,我得到莫大成就感和自信。
在這次實驗中,我體會到了合作的重要性。一個人也可能實現這一系列的過程,但是要花費很多精力和時間。群策群力,分工明確,可以使我們更好、更快地完成我們的工作。在此期間,你可以更好知道自己的不足和缺陷,來得到改正。還可以知道自己的優勢所在,把握好自己的優勢。
單片機實訓總結相關 文章 :
★ 單片機實訓報告範文精選5篇
★ 單片機實訓總結範文3篇
★ 單片機實驗心得體會範文
★ 單片機實訓報告範文
★ 單片機實訓工作報告範文精選
★ 單片機實習報告範文
★ 單片機實驗的心得體會
★ 單片機課程設計心得體會3篇
★ 實驗總結5篇精選
★ 單片機設計的心得體會
var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm..com/hm.js?"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })();② 單片機中硬體模擬軟體模擬區別,單片機的硬體模擬器是什麼有什麼用,keil能進行硬體模擬嗎,模擬哪些項目
硬體模擬:
顧名思義就是你想像到的每一個信號都是由實體硬體發出的,比如說一個單片機硬體模擬器,它也會給你提供和真實單片機相同的封裝、腳數的一個介面,然後你通過計算機把程序寫到模擬器裡面去,模擬器就會在上面的這個介面向外提供和真實單片機一模一樣的數據,也就是說,對真個電路板而言,這個模擬器上的介面插在單片機應該在的位置時,他就「假裝」成了一個單片機。模擬器出現的意義,就是你不必每次修改程序都要把單片機插上拔下,可以讓你隨時在線修改和調試程序,如單步、全速等,等你啥時候發現程序沒有問題了,再把程序燒到真正的單片機中,插上去就成了。
軟體模擬:
顧名思義就是你想像到的每一個信號都是由一種軟體合成出來的,典型的有proteus、multisim等,就是說你想要模擬的系統中的每一個電容、電阻、IC器件、電源、單片機等等都是在某個軟體中畫出來的虛擬的東西,但是牛逼的是,這個軟體提供了很多庫器件,你把某個單片機畫在電路里,它會馬上知道你畫出來的是個啥,將要怎麼工作,並且能夠像實物那樣給你提供一個下載程序的介面(通常是一個讓你填寫程序文件的對話框),然後通過運行按鈕等控制項就可以在無任何真實硬體的情況下,對你將設計的單片機系統進行一個模擬。相比於硬體模擬,軟體模擬可靠性較低,因為他並不能考慮到所有硬體短路、受干擾的情況。
keil只是用來開發單片機程序的一個開發環境,也就是一個編譯程序的工具,它本身並不提供單片機模擬的功能,或者說只是能看到單片機內部寄存器值的變化。但是不乏有一些硬體模擬器是支持與keil進行介面的,那麼你就可以連接模擬器,然後在keil中來調程序。不過據我所知大部分模擬器生產商都配套出售自己的開發軟體,與keil類似,如LCA51等。要看具體的硬體模擬器是否支持。純手打,謝謝
③ 簡論單片機課程中單片機實驗教學探究
簡論單片機課程中單片機實驗教學探究
論文摘要:單片機的開發與應用、學習將造就一批計算機智能化控制的工程師、科學家。一些中等院校也相繼開設了單片機課程設計及相關的課程。在單片機及介面技術課程的教學過程中,實驗教學是重要的組成部分。針對單片機課程的教學改革,不斷加強單片機課程實驗環節,改革教學方法,虛擬模擬實驗在單片機教學中的應用,實踐表明,該方法有利於激發學生的學習興趣,培養學生的工程素養和創新能力,提高了教學效果。
論文關鍵詞:單片機;教學;模擬實驗
「單片機原理」是一門理論性、邏輯性、實踐性很強的學科,是電類專業一門非常重要的專業基礎課,把微機介面部分、匯編語言部分、通信技術部分的知識點等綜合在一起,屬於邏輯性、工程性、技術性、實踐性很強的一門專業基礎課。該課程作為電類專業最重要的核心課程之一,它是電類專業高素質技能型人才所需全部自動控制類知識結構的載體,占據著非常重要的位置。
然而,傳統的單片機教學一般注重課程本身的體系結構和前後的邏輯聯系,均以學科體系為出發點,忽略了「可學性」,致使學生學得吃力,老師教得辛苦,教學效果卻沒有顯現出來。
一、研究背景及意義
目前,全國將單片機列入單獨的比賽項目,在考查中注重學生的能力培養,學生的技能素養教育成為重中之重,加之社會需求高技能人才,許多學校為了適應社會的發展和市場需求在不同的專業開設了單片機課程,然而單片機課程是一門實踐性很強的課程,要想在教學過程中取得很好的效果,就必須要求學生在學習過程中多動手實踐,但有的學校教學設備有限,怎樣解決這個問題。模擬實驗課可以讓學生在單片機工作室里做中學,真正玩轉單片機,也同時解決了學生學起來枯燥,老師教起來吃力的尷尬局面。
目前單片機教學中存在諸多問題。如單片機課程理論為主,實驗教學多是進行驗證性實驗。單片機實驗室存在場地和時間限制,學生除了課上,很難有機會接觸到所需要的設備,如模擬器、實驗板等,個人配備成本太高,個體無法承擔。而且實驗箱只能驗證試驗的基本作用和意義,就無從談起學生動手能力的訓練和提升。單片機在當今社會中的應用速度發展迅速,然而單片機教材陳舊,實驗設備很容易落後、老化等問題,必然會帶來耗資等問題。由此可見,構建成本低廉的單片機模擬實驗系統對於單片機教學意義重大。它不僅可以降低實驗設備投資,而且能培提高學生的工程素質,養學生的創新精神。在單片機控制系統的設計開發過程中,我們不單要突出設備的自動化程度及智能性,另一方面也要重視控制系統的工作穩定性,否則就無法體現控制系統的優越性。
由於單片機控制系統應用系統的工作環境往往是比較惡劣和復雜的,其應用的可靠性、安全性就成為一個非常突出的問題。單片機控制系統應用必須長期穩定、可靠地運行,否則將導致控制誤差加大,嚴重時會使系統失靈,甚至造成巨大的損失。
影響單片機控制系統應用的可靠、安全運行的主要因素是來自系統內部和外部的各種電氣干擾,以及系統結果設計、元器件選擇、安裝、製造工藝和外部環境條件等。這些因素對控制系統造成的干擾後果主要表現在下述幾個方面。(1)數據採集誤差加大。(2)控制狀態失靈。(3)數據受干擾發生變化。(4)程序運行失常。
由於受到干擾後計數器的值是隨機的,因而導致程序混亂。通常的情況是程序將執行一系列毫無意義的指令,最後進入「死循環」,這將使輸出嚴重混亂或系統失靈。
隨著單片機及其介面技術的飛速發展,目前面對職業教育存在的突出問題:質量能力與規模能力不相適應,教學信息化程度低,古老的填鴨式課堂教學模式仍應用普遍,「雙師型」教師隊伍建設機制缺乏完善性,科學管理水平和改革創新能力就提到了日程,管理制度不健全,學校基本辦學規范不健全,科學的職業教育評價標准和評價機制達不到標准,學生成長的「通道」不暢通。
從新的教學要求來看,這類課程僅在課堂上講授基本原理是不夠的,必須在教學中加強實踐環節,開出一定數量的高質量的配套實驗課活獨立的實驗課程,讓學生有足夠的實驗機會。那麼對於單片機實驗教學環境建設就相應提出了高要求。怎樣解決這個問題,單片機模擬實驗應運而生。
二、「單片機模擬實驗」初探
伴隨著計算機技術的飛速發展,在各個領域都出現了各種模擬系統,為各種實際系統的開發提供了准確可靠的保證,同時為很多學校、企業等節約了大量的人力和物力。在電子信息技術領域也同樣出現了大量的模擬工具,如課堂上用到的各種EDA工具;模數混合模擬的Protel、Multisim等常見的電子應用模擬軟體,數字系統設計的Fundation、Maxplus II、Expert等。
所謂「模擬」,就是通過開發工具真實地模擬用戶系統的運行環境,使用戶能夠在透明和可控的條件下觀察系統運行過程中的狀態和結果,模擬實際上也是一種軟體和硬體的綜合調試手段,它能提高應用系統開發的效率。
用通俗的話來描述「單片機模擬實驗」就是在一塊虛擬電路板上按照真實電路的設計構想放置一些虛擬的元器件,並模擬實際燒ROM的過程鏈接上程序代碼,「接通」電路觀察效果,如果不理想的話可以反復修改電路或程序代碼,直至符合設計要求為止。
模擬實驗的好處是顯而易見的。在沒有模擬實驗的年代,每架構一個真實的電路都需要費時費力費錢,稍有不慎還有可能前功盡棄,再加上單片機中的ROM晶元是有擦寫次數的,而一段程序可能需要修改擦寫多次,無形中減少了ROM晶元的使用壽命。模擬實驗是在計算機上進行的(可能會費點兒電),以上問題都不存在,而且就現在的模擬軟體來說,模擬出來的電路效果與真實電路一模一樣,毫不誇張地說,只要模擬是成功的,就可以直接下工廠的流水線生產了。
④ 《單片機》課程學習總結
《單片機》課程學習總結
篇一:《單片機》課程學習總結
《單片機》這門課程我已經學了一個學期了,在這一個學期的學習過程中,我一開始不怎麼懂得編程,但慢慢的我現在已經不僅會讀程序還會寫程序了。真為自己一個學期來努力學到的單片機知識只是而感到高興。
怎麼學單片機?也常看到有人說學了好幾個月可就是沒有什麼進展。當然,受限於每個人受到的教育水平不同和個人理解能力的差異,學習起來會有快慢之分,但我感覺最重的就是學習方法。一個好的學習方法,能讓你事半功倍,這里說說我學習單片機的經歷和方法。
我覺得學習單片機首先要懂得C語言,因為單片機大多說都是靠程序來實現的,如果看不懂程序或則不懂的編程是很難學會單片機的。學習單片機首先要明白一個程序是怎麼走的,要完全懂得程序每一個步驟的意思。其次要懂得每一條指令的意思,不能盲目地去靠背指令,這是記得不牢靠的,最主要的還是靠了解。學習單片機最主要的對89C51晶元內部結構有全方面的,只要了解了89C51才能知道單片機實現什麼樣的功能和作用,才能對單片機有更深一步的了解。 通過一個學期《單片機》這門課程的學習,我也從中有了不少心
得和體會想和大家分享一下。
萬事開頭難、要勇敢邁出第一步。開始的時候,不要老是給自己找借口,不要說單片機的程序全是英文,自己看不懂。遇到困難要一件件攻克,不懂指令就要勤奮看書,不懂程序就先學它,這方面網上教程很多,隨便找找看一下,做幾次就懂了。然後可以參考別的人程序,抄過來也無所謂,寫一個最簡單的,讓它運行起來,先培養一下自己的感覺,知道寫程序是怎麼一回事,無論寫大程序還是小程序,要做的工序不會差多少。然後建個程序,加入項目中,再寫代碼、編譯、運行。必須熟悉這一套工序。個人認為,一塊學習板還是必要的,寫好程序在上面運行一下看結果,學習效果會好很多,模擬器就看個人需要了。單片機是注重理論和實踐的,光看書不動手,是學不會的。
知識點用到才學,不用的暫時丟一邊。厚厚的一本書,看著人頭都暈了,學了後面的,前面的估計也快忘光了,所以,最好結合實際程序,用到的時候才去看,不必說非要把書從第一頁看起,看完它才來寫程序。比如你寫流水燈,完全就沒必要看中斷的知識,專心把流水燈學好就是了,這是把整本書化整為零,一小點一小點的啃。 程序不要光看不寫,一定要自己寫一次。最開始的時候,什麼都不懂,可以抄人家的程序過來,看看每一句是干什麼用的,達到什麼目的,運行後有什麼後果。看明白了之後,就要自己寫一次,你會發現,原來看明白別人的程序很容易,但到自己寫的時候卻一句也寫不出來,這就是差距。當你自己能寫出來的時候,說明你就真的懂了。
必須學會掌握調試程序的方法。不少人寫程序,把代碼寫好了,
然後一運行,不是自己想要的結果,就暈了,然後跑到論壇上發個帖子,把程序一貼,問:為什麼我的程序不能正常運行?然後就等別人來給自己分析。這是一種很不好的行為,應該自己學會發現問題和學會如何解決問題。這就需要學習調試程序的方法,比如KEIL里,可以下斷點啦,查看寄存器內容等等,這些都是調試程序的手段,當你發現你寫的程序運行結果和你想像中不一樣的時候,你可以單步,也可以下斷點,然後跟蹤,查看各相關寄存器內容,看看程序運行過中是不是有什麼偏差,找出影響結果的地方,改正過來。這一個過程非常重要,通過程序的排錯,你可以學到的知識是書上得不到的。
找到解決問題思路比找到代碼更重要。我們用單片機來控制周邊器件,達到我們想到的目的,這是一個題目,而如何寫出一個程序,來控制器件按你想要的結果去運作,這個就是解題的思路。要寫程序,就得先找到解決問題的思路,你學會找出這個解題思路,比你找到代碼更為重要。不少人很喜歡找人家的代碼,有的人甚至有了代碼就直接復制到自己的程序中,可以說,這不是一種學習的態度,無助於你編程水平的提高。
我幾乎不怎麼看人家的代碼,多數時候是看別人的思路,有方框圖最好,沒有的話文字說明也可以。要從代碼中看出別人處理問題的思路,是相當困難的,特別是大型的程序,看起來是非常的累人。所以現在我也明白了,以前讀書時說的程序流程圖很重要,現在算是知道了。當你知道一個問題怎麼去解決了,那麼剩下的只是你安排代碼去完成,這就已經不是什麼問題了。
開動腦筋,運用多種方法,不斷優化自己的程序。想想用各種不同方法來實現同一功能。這是一個練習和提高的過程,一個問題,你解決了,那麼你再想想,能不能換種寫法,也可以實現同一功能,或者說,你寫出來的代碼,能不能再精簡一點,讓程序執行效率更高,這個過程,就是一個進步的過程。很多知識和經驗的獲得,並不是直接寫在書讓你看就可以得到的,需要自己去實踐,開動腦筋,經驗才能得到積累,編程水平才能有所提高。
看別人的程序,學習人家的思路。這個在學習初期是很有用,通過看別人的程序,特別是老師寫出的具有一定水平的程序,可以使自己編程水平得到迅速的提高。同時,也可以結合別人的編程手法,與自己的想法融合在一起,寫出更高水平的程序,從中得到進步。但要注意,切忌將學習變成抄襲,更不是抄襲完了就認為自己學會了,這樣做只會使你退步。
嘗試編寫一下綜合應用的程序。從流水燈學起,到動態掃描,再到中斷,那麼,你可以試試寫一下時鍾這種綜合性應用的程序,不要小看時鍾,要寫好它不是一件容易的事情,它包括了單片機大部分的知識,比如有按鍵(IO讀取)、動態掃描(IO輸出)、中斷等,如何協調好各功能模塊正常工作,才是編程者需要學習的地方,當你單獨寫一個功能的時候,比如按鍵讀取,你可能感覺很容易,因為你的程序什麼也不做,只是讀按鍵。但把它和其它功能混合在一起,如何在整個程序運行中使每一部分都正常工作,這就不是寫一個按鍵讀取這么容易的事情,功能模塊之間有可能會互相影響,比如你需要讓數碼管既能顯示,又要去處理按鍵讀取,怎麼使這兩部分都正常工作,這就是一個協調過程。當你有了這個處理協調能力,你就算是入門了。
著重於培養解決問題的能力,而不是具體看自己編寫了多少程序或者做過什麼。「學單片機重點在於學習解決問題的思路,而不是局限於具體的晶元類型和語言」這一直是我的座右銘,是我學單片機學習單片機之後感悟出來的。真正的能力不是你曾經編寫過多少個可以實現的程序,而應該是:「遇到沒有解決過的問題,能利用自己已學的知識,迅速找到解決問題的方法。」這個才是能力。
面對一個新程序時,多自己開動腦筋,不要急於找別人的程序。
有不少人面對一個新程序時,第一步想到的就是網上找別人寫過的程序,然後抄一段,自己再寫幾句,湊在一起就完成任務,這雖然可能是省時間,但絕對不利你的學習。當你接到一個程序時,應該先自己構思一下整個程序的架構,想想如何來完成。有可能的話,畫一個流程圖,簡單的可以畫在腦子里,對程序中用到的數據、變數有一個初步的安排,然後自己動手去寫,遇到實在沒辦法解決的地方,再去請教老師或同學,或看別人是怎麼處理的,這樣首先起碼你自己動過腦想過,自己有自己的思路。如果你一開始就看別人的程序,你的思維就會受限在別人的思維里,自己想再創新就更難了,這樣你自己永遠也沒辦法提高,因為你是走在別人的影子里。
學會提問題。一般來說,學習過程中,你遇上的問題,多數人也有遇上的,所以如果有什麼不懂,你可以去問老師。我覺得學習單片機最主要的要多提問,對於一個自己不是太懂的程序,自己一定要多提問幾遍,這樣不但有利於加深自己的印象還能從中學到不少別人的方法。
經過一個學期我對《單片機》這門課程的學習,不僅讓我懂得了很多程序的編寫,還讓我學到了很多對自己有用的學習方法。總結這個學期來的我自己的學習情況,我覺得自己對編程進步了不少,懂得運用正確的學習方法學習單片機程序,不再去死記硬背指令了。所以我覺得學習要不斷總結學習方法,才能讓自己學習不斷進步。
交通信號燈設計報告
實驗目的: P1口的使用方法,延時程序的編寫
實驗要求:在一個十字路口分為東西南北走向,信號等按以下的狀態順序工作:
(1) 初始狀態0,東西、南北紅燈全亮。延時一定時間;
(2) 狀態1,南北綠燈亮通車,東西紅燈,延時一定時間;
(3) 狀態2,南北綠燈閃爍幾次轉黃燈,東西仍然紅燈,延時一定
時間;
(4) 狀態3,南北紅燈,東西綠燈通車,延時一定時間;
(5) 狀態4,南北仍然紅燈,東西綠燈閃爍幾次轉黃燈,延時一定
時間;
(6) 循環至狀態1,繼續
實驗電路和流程框架圖:
(1) 硬體電路
交通燈實訓設備用最小系統板和信號燈組合而成。
2、軟體編程
若各路口燈亮滅的時間間隔為2s鍾,燈光閃爍時間間隔為0.5s。用軟體延時的方法,晶振頻率12MHz時,一個機器周期為1us。
編寫交通信號燈程序:
編寫主程序,由R7做主程序的計數器,確定調用延時時間為0.5s,從而獲得交通燈的亮滅時間。
篇二:《單片機》課程學習總結
時光飛逝,一轉眼,一個學期又進尾聲了,本學期的單片機課程也結束,但通過這次單片機的學習,我不僅加深了對單片機理論的理解,將理論很好地應用到實際當中去,而且我還學會了如何去培養我們的創新精神,從而不斷地戰勝自己,超越自己。創新可以是在原有的基礎上進行改進,使之功能不斷完善,成為真己的東西。
當今社會隨著電子技術的發展,特別是隨著大規模集成電路的產生,給人們的生活帶來了根本性的變化,如果說微型計算機的出現使現代的科學研究得到了質的飛躍,那麼可編程式控制制器的出現則是給現代工業控制測控領域帶來了一次新的革命。在現代社會中,溫度控制不僅應用在工廠生產方面,其作用也體現到了各個方面。本學期我們就學習了單片機這門課程,感覺是有點難呢。也不知道整個學習過程是怎麼過來得,可是時間不等人。
剛開始學習的時候,對單片機沒有什麼認識,不知道什麼是單片機,更不知道它有什麼作用。通過學習才大體知道了單片機的一些知識。單片機是一塊在集成電路晶元上集成了一台有一定規模的微型計算機。簡稱為:單片微型計算機或單片機。單片機的應用到處可見,應用領域廣泛,主要應用在智能儀表、實時控制、通信、家電等方面。由中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、I/O介面、定時器/計數器以及串列通信介面等集成在一塊晶元上,構成了一個單片微型計算機,簡稱為單片機。它的應用范圍很廣,在工業自動化中應用有數據採集、測控技術。
在智能儀器儀表中應用有數字示波器、數字信號源、自動取款機等。在消費類電子產品中應用有空調機、電視機、微波爐、手機、IC卡、汽車電子設備等。在通訊方面應用有手機、小靈通等。在武器裝備方面應用有飛機、坦克、導彈、太空梭、智能武器等。剛開始學習時只能抄寫別人做成功的程序,一遍一遍的寫,從簡單的入手,逐步的積累,一步步的能夠將小的程序結合到一起,拼接成較為復雜一些的程序。但是程序不要只是看別人得,一定要自己寫過才是自己的。只有當你自己能寫出來的時候說明你真懂了。剛接觸KEIL時確實很讓人頭疼,使用 KEIL不會建項目、不會使用實驗板。然後可以參考已經成功的程序,抄過來,寫一個最簡單的,讓它運行起來,先培養一下自己的感覺,先建個項目,再配置一下項目,然後建個程序,加入項目中,再寫代碼、編譯、生成HEX,刷進單片機中、運行。其實當遇到問題一定要自己嘗試著解決,不能遇到問題就去問別人,自己一定要掌握解決問的方法和思路。對一個新項目時,自己一定要多想想,不要急著去看別人是怎麼寫的。應該先想一下程序的構架,想想如何來完成。然後自己動手去寫,理清自己的思路這樣更容易提高自己。
熟悉單片機的人都知道,要學好單片機可不是一件容易的事,倒不是因為單片機很難學,而是很難找到一本專為單片機入門者而編寫的教材。翻一下身邊的單片機教材,都好像是為已經懂單片機的人而寫的,一般先介紹單片機的硬體結構和指令系統,再是系統擴展和外圍器件,順便講一些應用設計(隨便說一下,很多書中的電路設計已經過時,並且有些程序還是錯誤的`)。如果按照此種學習方法,想進行產品開發,就必須先把所有的知識全部掌握了才可以進行實際應用。學習使用單片機只能靠循序漸進的積累,雖然單片機的課程只上了幾節就去上班了,但在學習的過程中有了一定的了解。下面就本人學習單片機的過程和經驗做簡要介紹。
首先,學習單片機要有一定的基礎:電子技術方面要有數字電路和模擬電路等方面的理論基礎,特別是數字電路;編程語言要求匯編語言或C語言。要想成為單片機高手,建議初學者首先學習匯編語言,學的差不多的時候,轉入C語言學習。盡管匯編語言屬於低級語言,編程效率低,但是較C語言具有目標代碼簡短,佔用內存少,執行速度快等優點,更重要的是能使初學者盡快熟悉單片機的內部結構,並能對其進行精確的控制。匯編語言在單片機教材裡面都會涉及,不需要單獨購買教材和學習。C語言是一門學問,有很多專業書籍來講解,並且對我們今後的編程生涯有絕對的好處,因此要深入學習,千萬不要自以為看了某某的視頻教程就以為掌握了C語言,那隻是C語言的一部分。在這里給大家推薦一本單片機C語言程序設計參考書,馬忠梅等著,北京航空航天大學出版社出版的《單片機的C語言應用程序設計》,要求C語言基礎。如果沒學過C語言,建議學習清華大學譚浩強編寫的C語言程序設計,這本書寫的不錯,通俗易懂。
其次,是單片機教材選擇。單片機是一門非常重視實踐的技術,不能總是看書,但要學習它首先應看書,對單片機引腳、內部結構、寄存器和原理有一定地了解和感官認識,它的是怎樣工作的,能幹些什麼?剛開始時,也許你看不明白,但這並不要緊,因為你還缺乏實踐經驗。現在單片機應用廣泛,因此各個廠家分別推出了自己的單片機,我們沒必要每樣都學!因為他們的編程方法和調試過程以及內部指令結構有一定的相似,只要學精通一款就OK了!尤其是用C語言編程,就幾乎不用分什麼派系,但是我們要選擇一款有代表性的知識范圍廣,並且入門容易,書籍多。一般來說,MCS-51系列單片機已經得到廣泛的普及和應用,市場上它的資料也比較多,用的人也很多。給大家推薦一些參考書,學習時只需要一本就足夠拉。書名:《新編MCS-51單片機應用設計》,哈爾濱工業大學出版,作者:張毅剛;書名:《單片機原理及應用》,高等教育出版社,作者:張毅剛等;書名:《單片機高級教程:應用與設計》,北京航空航天大學出版社,作者:何立民。相關教材還有很多,在這不一一列舉。
然後,是開發工具和開發環境的選擇。選擇一塊合適的學習板,對於初學者來說一般無力接受,如果經濟條件允許、本人又對單片機很感興趣、有從事相關工作意向的話,鼓勵大家購買。隨便說一句,學習板功能要求太全,具有流水燈、數碼管、獨立鍵盤、矩陣鍵盤、AD或DA、液晶、蜂鳴器等就差不多啦,畢竟,功能齊全的價格比較高。模擬器對單片機初學者來說既是那麼耳熟,同時又有些陌生,這主要是因為市場上傳統的模擬器價格都在千元以上,對經濟不是非常寬裕的人來說是不小的開支。同時模擬器是用來提高調試程序效率的,也不是非需不可的,如果你沒有模擬器,遇到程序出錯的時候,只好苦思冥想,反復燒寫調試。
隨便推薦一下,學林電子的51tracer模擬器,有興趣的朋友可關注一下。有了單片機教程板以後,先看下指導說明書,熟悉一下學習板,開卷有益。以後就得靠自己多練習了,將學習板與電腦連接好,先學會開發軟體的使用,然後從最簡單的流水燈實驗做起,按照你自己的意願控制流水燈,當你完成時,你會發現這是多麼愜意的事情。太好玩了,你會覺得這不是在學習,而是在玩,當你發現,單片機能夠按照你編寫的程序工作時,你會覺得非常興奮,比做什麼事情都開心,這樣你會慢慢迷上單片機,真的。不少網站上說搞定某個實驗,就恭維的告訴你一聲」恭喜你,學會了」自己學會了單片機,這有點可笑,這只能說明你算過關了,對單片機有了一定了解和會使用它了。但是單片機能完成的功能太多了,尤其是對外圍器件的控制,綜合起來能設計出許多意想不到的產品.因此除了入門外,精通可千萬別輕易說出口。
最後,在熟練掌握和應用後,那可以說對於單片機方面的硬體你已經入門了,剩下的就是自己練習設計開發各種課題,不斷的積累經驗。最終,自己完全設計具有個人風格的課題,產品,這樣你就是單片機高手拉。只要過了第一關,後面的路就好走多了,萬事開頭難,這大家可能都聽過。
有時候單片機的學習很單調,有些知識學起來很抽象,不容易理解,只能慢慢適應,一邊學習理論知識,一邊編寫程序,將程序刷入單片機進行調試,通過這種方式才能更快速的學習單片機。要堅定自己的學習信心,在付出持之以恆的努力,我相信自己能進一步加深對單片機的了解,在單片機的學習道路上走得更遠!
;⑤ 單片機的模擬器什麼作用
最早的單片機模擬器是一套獨立裝置,具有專用的鍵盤和顯示器,用於輸入程序並顯示運行結果。
隨著單片機的小型化,貼片化和具有ISP,IAP等功能的單片機的廣泛應用,傳統單片機模擬器的應用范圍也有所縮小。而軟體單片機模擬器(即單片機模擬程序)的應用逐漸廣泛,單片機模擬程序即在個人計算機上運行的特殊程序,可在一定程度上模擬單片機運行的硬體環境,並在該環境下運行單片機目標程序,並可對目標程序進行調試、斷點、觀察變數等操作,可大大提升單片機系統的調試效率。純軟體單片機模擬器往往與硬體設計程序集成在一起發布,使得開發者可以對單片機硬體與軟體進行同步開發。
⑥ 單片機秒錶畢業設計的總結與展望怎麼寫
畢業設計(論文)是學生畢業前最後一個重要學習環節,是學習深化與升華的重要過程。它既是學生學習、研究與實踐成果的全面總結,又是對學生素質與能力的一次全面檢驗,而且還是對學生的畢業資格及學位資格認證的重要依據。為了保證我校本科生畢業設計(論文)質量,特製定「同濟大學本科生畢業設計(論文)撰寫規范」。
一、畢業設計(論文)資料的組成A.畢業設計(論文)任務書;B.畢業設計(論文)成績評定書;C.畢業論文或畢業設計說明書(包括:封面、中外文摘要或設計總說明(包括關鍵詞)、目錄、正文、謝辭、參考文獻、附錄);D.譯文及原文復印件;E.圖紙、軟盤等。
二、畢業設計(論文)資料的填寫及有關資料的裝訂畢業設計(論文)統一使用學校印製的畢業設計(論文)資料袋、畢業設計(論文)任務書、畢業設計(論文)成績評定書、畢業設計(論文)封面、稿紙(在教務處網上下載用,學校統一紙面格式,使用A4列印紙)。
畢業設計(論文)資料按要求認真填寫,字體要工整,卷面要整潔,手寫一律用黑或藍黑墨水;任務書由指導教師填寫並簽字,經院長(系主任)簽字後發出。畢業論文或設計說明書要按順序裝訂:封面、中外文摘要或設計總說明(包括關鍵詞)、目錄、正文、謝辭、參考文獻、附錄裝訂在一起,然後與畢業設計(論文)任務書、畢業設計(論文)成績評定書、譯文及原文復印件(訂在一起)、工程圖紙(按國家標准折疊裝訂)、軟盤等一起放入填寫好的資料袋內交指導教師查收,經審閱評定後歸檔。
三、畢業設計說明書(論文)撰寫的內容與要求一份完整的畢業設計(論文)應包括以下幾個方面:
1.標題
標題應該簡短、明確、有概括性。標題字數要適當,不宜超過20個字,如果有些細節必須放進標題,可以分成主標題和副標題。
2.論文摘要或設計總說明論文摘要以濃縮的形式概括研究課題的內容,中文摘要在300字左右,外文摘要以250個左右實詞為宜,關鍵詞一般以3~5個為妥。
設計總說明主要介紹設計任務來源、設計標准、設計原則及主要技術資料,中文字數要在1500~2000字以內,外文字數以1000個左右實詞為宜,關鍵詞一般以5個左右為妥。
3.目錄
目錄按三級標題編寫(即:1……、1.1……、1.1.1……),要求標題層次清晰。目錄中的標題應與正文中的標題一致,附錄也應依次列入目錄。
4.正文
畢業設計說明書(論文)正文包括緒論、正文主體與結論,其內容分別如下:緒論應說明本課題的意義、目的、研究范圍及要達到的技術要求;簡述本課題在國內外的發展概況及存在的問題;說明本課題的指導思想;闡述本課題應解決的主要問題,在文字量上要比摘要多。
正文主體是對研究工作的詳細表述,其內容包括:問題的提出,研究工作的基本前提、假設和條件;模型的建立,實驗方案的擬定;基本概念和理論基礎;設計計算的主要方法和內容;實驗方法、內容及其分析;理論論證,理論在課題中的應用,課題得出的結果,以及對結果的討論等。學生根據畢業設計(論文)課題的性質,一般僅涉及上述一部分內容。
結論是對整個研究工作進行歸納和綜合而得出的總結,對所得結果與已有結果的比較和課題尚存在的問題,以及進一步開展研究的見解與建議。結論要寫得概括、簡短。
5.謝辭
謝辭應以簡短的文字對在課題研究和設計說明書(論文)撰寫過程中曾直接給予幫助的人員(例如指導教師、答疑教師及其他人員)表示自己的謝意,這不僅是一種禮貌,也是對他人勞動的尊重,是治學者應有的思想作風。
6.參考文獻與附錄
參考文獻是畢業設計(論文)不可缺少的組成部分,它反映畢業設計(論文)的取材來源、材料的廣博程度和材料的可靠程度,也是作者對他人知識成果的承認和尊重。一份完整的參考文獻可向讀者提供一份有價值的信息資料。一般做畢業設計(論文)的參考文獻不宜過多,但應列入主要的文獻可10篇以上,其中外文文獻在2篇以上。
附錄是對於一些不宜放在正文中,但有參考價值的內容,可編入畢業設計(論文)的附錄中,例如公式的推演、編寫的程序等;如果文章中引用的符號較多時,便於讀者查閱,可以編寫一個符號說明,註明符號代表的意義。一般附錄的篇幅不宜過大,若附錄篇幅超過正文,會讓人產生頭輕腳重的感覺。
四、畢業設計(論文)要求
我校畢業設計(論文)大致有設計類、理論研究類(理科)、實驗研究類、計算機軟體設計類、經濟、管理及文科類、綜合類等,具體要求如下:
1.設計類(包括機械、建築、土建工程等):學生必須獨立繪制完成一定數量的圖紙,工程圖除了用計算機繪圖外必須要有1~2張(2號以上含2號圖)是手工繪圖;一份15000字以上的設計說明書(包括計算書、調研報告);參考文獻不低於10篇,其中外文文獻要在2篇以上。
2.理論研究類(理科):對該類課題工科學生一般不提倡,各院系要慎重選題,除非題目確實有實際意義。該畢業設計報告或論文字數要在20000字以上;根據課題提出問題、分析問題,提出方案、並進行建模、模擬和設計計算等;參考文獻不低於15篇,其中外文文獻要在4篇以上。
3.實驗研究類:學生要獨立完成一個完整的實驗,取得足夠的實驗數據,實驗要有探索性,而不是簡單重復已有的工作;要完成15000字以上的論文,其包括文獻綜述,實驗部分的討論與結論等內容;參考文獻不少於10篇,包括2篇以上外文文獻。
4.計算機軟體類:學生要獨立完成一個軟體或較大軟體中的一個模塊,要有足夠的工作量;要寫出10000字以上的軟體說明書和論文;畢業設計(論文)中如涉及到有關電路方面的內容時,必須完成調試工作,要有完整的測試結果和給出各種參數指標;當涉及到有關計算機軟體方面的內容時,要進行計算機演示程序運行和給出運行結果。
5.經濟、管理及文科類:學生在教師的指導下完成開題報告;撰寫一篇20000字以上的有一定水平的專題論文(外國語專業論文篇幅為5000個詞以上。);參考文獻不少於10篇,包括1-2篇外文文獻。
6.綜合類:綜合類畢業設計(論文)要求至少包括以上三類內容,如有工程設計內容時,在圖紙工作量上可酌情減少,完成10000字以上的論文,參考文獻不少於10篇,包括2篇以上外文文獻。
每位學生在完成畢業設計(論文)的同時要求:(1)翻譯2萬外文印刷字元或譯出5000漢字以上的有關技術資料或專業文獻(外語專業學生翻譯6000~8000字元的專業外文文獻或寫出10000字元的外文文獻的中文讀書報告),內容要盡量結合課題(譯文連同原文單獨裝訂成冊)。(2)使用計算機進行繪圖,或進行數據採集、數據處理、數據分析,或進行文獻檢索、論文編輯等。繪圖是工程設計的基本訓練,畢業設計中學生應用計算機繪圖,但作為繪圖基本訓練可要求一定量的墨線和鉛筆線圖。畢業設計圖紙應符合制圖標准,學生應參照教務處2004年3月印製的《畢業設計制圖規范》進行繪圖。
五、畢業設計(論文)的寫作細則
1.書寫
畢業設計(論文)要用學校規定的文稿紙書寫或列印(手寫時必須用黑或藍墨水),文稿紙背面不得書寫正文和圖表,正文中的任何部分不得寫到文稿紙邊框以外,文稿紙不得隨意接長或截短。漢字必須使用國家公布的規範字。
2.標點符號畢業設計(論文)中的標點符號應按新聞出版署公布的"標點符號用法"使用。3.名詞、名稱科學技術名詞術語盡量採用全國自然科學名詞審定委員會公布的規范詞或國家標准、部標准中規定的名稱,尚未統一規定或叫法有爭議的名稱術語,可採用慣用的名稱。使用外文縮寫代替某一名詞術語時,首次出現時應在括弧內註明其含義。外國人名一般採用英文原名,按名前姓後的原則書寫。一般很熟知的外國人名(如牛頓、達爾文、馬克思等)可按通常標准譯法寫譯名。
4.量和單位
量和單位必須採用中華人民共和國的國家標准GB3100~GB3102-93,它是以國際單位制(SI)為基礎的。非物理量的單位,如件、台、人、元等,可用漢字與符號構成組合形式的單位,例如件/台、元/km。
5.數字
畢業設計(論文)中的測量統計數據一律用阿拉伯數字,但在敘述不很大的數目時,一般不用阿拉伯數字,如"他發現兩顆小行星"、"三力作用於一點",不宜寫成"他發現2顆小行星"、"3力作用於1點"。大約的數字可以用中文數字,也可以用阿拉伯數字,如"約一百五十人",也可寫成"約150人"。
6.標題層次
畢業設計(論文)的全部標題層次應有條不紊,整齊清晰。相同的層次應採用統一的表示體例,正文中各級標題下的內容應同各自的標題對應,不應有與標題無關的內容。章節編號方法應採用分級阿拉伯數字編號方法,第一級為"1"、"2"、"3"等,第二級為"2.1"、"2.2"、"2.3"等,第三級為"2.2.1"、"2.2.2"、"2.2.3"等,但分級阿拉伯數字的編號一般不超過四級,兩級之間用下角圓點隔開,每一級的末尾不加標點。
各層標題均單獨占行書寫。第一級標題居中書寫;第二級標題序數頂格書寫,後空一格接寫標題,末尾不加標點;第三級和第四級標題均空兩格書寫序數,後空一格書寫標題。第四級以下單獨占行的標題順序採用A.B.C.…和a.b.c.兩層,標題均空兩格書寫序數,後空一格寫標題。正文中對總項包括的分項採用⑴、⑵、⑶…單獨序號,對分項中的小項採用①、②、③…的序號或數字加半括弧,括弧後不再加其他標點。
7.注釋
畢業設計(論文)中有個別名詞或情況需要解釋時,可加註說明,注釋可用頁末注(將注文放在加註頁的下端)或篇末注(將全部注文集中在文章末尾),而不可行中注(夾在正文中的注)。注釋只限於寫在注釋符號出現的同頁,不得隔頁。
8.公式
公式應居中書寫,公式的編號用圓括弧括起放在公式右邊行末,公式和編號之間不加虛線。9.表格
每個表格應有表序和表題,表序和表題應寫在表格上放正中,表序後空一格書寫表題。表格允許下頁接寫,表題可省略,表頭應重復寫,並在右上方寫"續表××"。
10.插圖
畢業設計的插圖必須精心製作,線條粗細要合適,圖面要整潔美觀。每幅插圖應有圖序和圖題,圖序和圖題應放在圖位下方居中處。圖應在描圖紙或在白紙上用墨線繪成,也可以用計算機繪圖。
11.參考文獻
參考文獻一律放在文後,參考文獻的書寫格式要按國家標准GB7714-87規定。參考文獻按文中出現的先後統一用阿拉伯數字進行自然編號,一般序碼宜用方括弧括起,不用園括弧括起。
⑦ 對單片機模擬概念及應用的理解
你的理解是沒有錯誤,但敢問問你的想法可不可以放寬點……
用模擬軟體確實是所有器件用軟體替代,即而來模擬你所編寫的程序到底能不能達到你所想要的結果,這個結果也能不能在這個模擬軟體上實現出來……
可用硬體來實現的話,畢竟與軟體模擬有點區別的,你管它叫模擬器,反正它就是實實在在的硬體,你把你寫的程序下載到硬體當中,看它也能不能實現你所想要結果……
硬體模擬器是在你沒有的時候才用軟體模擬,你說是不是,在有些條件下,我沒有硬體模擬器,但我又在編程,有模擬的軟體,你說,我肯定用軟體來模擬嘍,看看我的程序能不能實現這個結果……
軟體和硬體各有各的好處,你若有硬體模擬器,可以不用軟體,但軟體可以變的啊,你硬體設計出來的,就變不了了,……
⑧ 單片機模擬器作用
模擬器可以看作一個特殊的單片機,你用模擬頭代替單片機,可以在電腦上讓它一句句的執行你寫的指令,也可以讓它運行到某個指令時就停止,程序有問題可以隨時改,重要的是你可以隨時看寄存器的值,所以它可以幫你快速調試程序。當然這種特殊功能的"單片機"挺貴的,幸好現在有的功能強大的單片機本身已經把這種功能集成了,你買個JTAG介面就行了!
有時也別太相信它,否則你也許會被它害苦了,它只是"模擬",不是真的"真"
`
大哥!這是我一個字一個字打的,說假話我不是人!
「有時也別太相信它,否則你也許會被它害苦了,它只是"模擬",不是真的"真"」
這是我的真實經歷,我有一回用偉福模擬器調TLC549,收到的8位二進制采樣值不知為何向左循環移了一位,我用了兩小時才發現這個規律,然後被這個問題折磨一天,因為程序確實沒錯。第二天實在是沒招了,燒了一片AT89C52放上去一試,居然一點問題也沒有了。你說不確定的事我能瞎說嗎?我CONTROL-C、CONTROL-V有啥意思?
心酸啊我!
356448120,請教不敢當,因為我水平也不怎麼樣,共同探討吧!
⑨ 單片機軟體模擬和在線模擬的區別是什麼(用keil)
軟體模擬:這時候是在你的計算機中有一個虛擬的單片機,代碼在這個虛擬的單片機中運行。由計算機模擬單片機的運行過程,給出運行的結果。這個結果與實際運行的結果絕大多數情況下沒有差別,所以可以模擬。但模擬與實際有時候也有差別,特別是有較多的復雜的外設的情況下,並不能夠很好並准確的模擬實際的外設
在線模擬:需要鏈接一台實實在在存在的單片機系統,代碼被下載到單片機裡面,由單片機實際運行。需要一定的軟/硬體手段把運行的結果返回到計算機裡面顯示出來。因為是實實在在的運行,所以是實際的運行結果,是最真實的結果。
一般情況下,先做軟體模擬(不需要其他設備),基本沒問題了,再做在線模擬。
⑩ 怎樣用51單片機做計算器啊
1、硬體模擬圖
4、程序源代碼
#include <reg51.h>#include <intrins.h>
#include <ctype.h>
#include <stdlib.h>
#define uchar unsigned char
#define uint unsigned int
uchar operand1[9], operand2[9];
uchar operator;
void delay(uint);
uchar keyscan();
void disp(void);
void buf(uint value);
uint compute(uint va1,uint va2,uchar optor);
uchar code table[] = {0xc0,0xf9,0xa4,0xb0,0x99,
0x92,0x82,0xf8,0x80,0x90,0xff};
uchar dbuf[8] = {10,10,10,10,10,10,10,10};
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
uchar keyscan()
{
uchar skey;
P1 = 0xfe;
while((P1 & 0xf0) != 0xf0)
{
delay(3);
while((P1 & 0xf0) != 0xf0)
{
switch(P1)
{
case 0xee: skey = '7'; break;
case 0xde: skey = '8'; break;
case 0xbe: skey = '9'; break;
case 0x7e: skey = '/'; break;
default: skey = '#';
}
while((P1 & 0xf0) != 0xf0)
;
}
}
P1 = 0xfd;
while((P1 & 0xf0) != 0xf0)
{
delay(3);
while((P1 & 0xf0) != 0xf0)
{
switch(P1)
{
case 0xed: skey = '4'; break;
case 0xdd: skey = '5'; break;
case 0xbd: skey = '6'; break;
case 0x7d: skey = '*'; break;
default: skey = '#';
}
while((P1 & 0xf0) != 0xf0)
;
}
}
P1 = 0xfb;
while((P1 & 0xf0) != 0xf0)
{
delay(3);
while((P1 & 0xf0) != 0xf0)
{
switch(P1)
{
case 0xeb: skey = '1'; break;
case 0xdb: skey = '2'; break;
case 0xbb: skey = '3'; break;
case 0x7b: skey = '-'; break;
default: skey = '#';
}
while((P1 & 0xf0) != 0xf0)
;
}
}
P1 = 0xf7;
while((P1 & 0xf0) != 0xf0)
{
delay(3);
while((P1 & 0xf0) != 0xf0)
{
switch(P1)
{
case 0xe7: skey = '$'; break;
case 0xd7: skey = '0'; break;
case 0xb7: skey = '='; break;
case 0x77: skey = '+'; break;
default: skey = '#';
}
while((P1 & 0xf0) != 0xf0)
;
}
}
return skey;
}
void main()
{
uint value1, value2, value;
uchar ckey, cut1 = 0, cut2 = 0;
uchar operator;
uchar i, bool = 0;
init:
buf(0);
disp();
value = 0;
cut1 = cut2 = 0;
bool = 0;
for(i = 0;i < 9;i++)
{
operand1[i] = '