嵌入式系統基礎課程設計報告

2021-05-22 12:39:35 字數 4453 閱讀 1037

河南機電高等專科學校

《嵌入式系統基礎》

課程設計報告

設計題目: 智慧型循跡小車

系部: 電子通訊工程系

專業: 醫電

班級: 091

學生姓名: 程瑞

學號: 090411114

成績2023年 06月

《嵌入式系統基礎》課程設計任務書

1.時間:2023年06月14日~2023年06月25日

2. 課程設計單位:河南機電高等專科學校

3. 課程設計目的:掌握《嵌入式系統基礎》課程基本概念、基本原理,具有一定的微控制器設計能力,能夠利用所學知識完成設計內容,提高實際動手能力。

4. 課程設計任務:

①參考相關的的書籍、資料,根據設計要求完成原理圖設計;

②製作電路板並完成除錯;

③繪製軟體流程圖;

④完成軟體設計並完成除錯;

作好筆記,對自己所發現的疑難問題及時請教解決;

聯絡自己所學知識,總結本次設計經驗;

認真完成課程設計報告。

5. 設計要求

能夠運用微控制器對小車的控制實現自動循跡功能。

《嵌入式系統基礎》課程設計報告

前言:****的迅速發展,關於汽車的研究也就越來越受人關注。本設計題目是結合微控制器而確定的設計類課題。設計的智慧型電動小車應該能夠自動尋跡。

根據題目的要求,確定如下方案:在現有玩具電動車的基礎上,加裝光電、紅外線、實現對電動車的速度、位置、執行狀況的實時測量,並將測量資料傳送至微控制器進行處理,然後由微控制器根據所檢測的各種資料實現對電動車的智慧型控制。

本設計採用mcs-51系列中的80c51微控制器。以80c51為控制核心,利用紅外線檢測道路上的黑白線,控制電動小汽車的自動尋跡,以及自動停車,80c51是一款八位微控制器,它的易用性和多功能性受到了廣大使用者的好評。它是第三代微控制器的代表。

硬體設計

1. 設計思路及原理框圖

本設計採用mcs-51系列中的80c51微控制器。以80c51為控制核心,利用紅外線檢測道路上的黑白線,控制電動小汽車的自動尋跡,以及自動停車。

2. 採用的晶元功能介紹

at89c51是一種帶4k位元組flash儲存器(fperom—flash programmable and erasable read only memory)的低電壓、高效能cmos 8位微處理器,俗稱微控制器。at89c2051是一種帶2k位元組快閃儲存器可程式設計可擦除唯讀儲存器的微控制器。微控制器的可擦除唯讀儲存器可以反覆擦除1000次。

該器件採用atmel高密度非易失儲存器製造技術製造,與工業標準的mcs-51指令集和輸出管腳相相容。由於將多功能8位cpu和閃爍儲存器組合在單個晶元中,atmel的at89c51是一種高效微控制器,at89c2051是它的一種精簡版本。at89c微控制器為很多嵌入式控制系統提供了一種靈活性高且價廉的方案。

主要效能引數:

與mcs-51 相容

4k位元組可程式設計flash儲存器

壽命1000寫/擦迴圈

資料保留時間:10年

全靜態工作:0hz-24mhz

**程式儲存器鎖定

128×8位內部ram

32可程式設計i/o線

兩個16位定時器/計數器

5個中斷源11·可程式設計序列通道

低功耗的閒置和掉電模式

片內振盪器和時鐘電路

引腳說明

vcc:供電電壓。   gnd:

接地。   p0口:p0口為乙個8位漏級開路雙向i/o口,每腳可吸收8ttl門電流。

當p0口的管腳第一次寫1時,被定義為高阻輸入。p0能夠用於外部程式資料儲存器,它可以被定義為資料/位址的第八位。在fiash程式設計時,p0 口作為原碼輸入口,當fiash進行校驗時,p0輸出原碼,此時p0外部必須被拉高。

  p1口:p1口是乙個內部提供上拉電阻的8位雙向i/o口,p1口緩衝器能接收輸出4ttl門電流。p1口管腳寫入1後,被內部上拉為高,可用作輸入,p1口被外部下拉為低電平時,將輸出電流,這是由於內部上拉的緣故。

在flash程式設計和校驗時,p1口作為第八位位址接收。   p2口:p2口為乙個內部上拉電阻的8位雙向i/o口,p2口緩衝器可接收,輸出4個ttl門電流,當p2口被寫「1」時,其管腳被內部上拉電阻拉高,且作為輸入。

並因此作為輸入時,p2口的管腳被外部拉低,將輸出電流。這是由於內部上拉的緣故。p2口當用於外部程式儲存器或16位位址外部資料儲存器進行訪問時,p2口輸出位址的高八位。

在給出位址「1」時,它利用內部上拉優勢,當對外部八位位址資料儲存器進行讀寫時,p2口輸出其特殊功能暫存器的內容。p2口在flash程式設計和校驗時接收高八位位址訊號和控制訊號。   p3口:

p3口管腳是8個帶內部上拉電阻的雙向i/o口,可接收輸出4個ttl門電流。當p3口寫入「1」後,它們被內部上拉為高電平,並用作輸入。作為輸入,由於外部下拉為低電平,p3口將輸出電流(ill)這是由於上拉的緣故。

  p3口也可作為at89c51的一些特殊功能口,如下表所示:   口管腳備選功能   p3.0 rxd(序列輸入口)   p3.

1 txd(序列輸出口)   p3.2 /int0(外部中斷0)   p3.3 /int1(外部中斷1)   p3.

4 t0(記時器0外部輸入)   p3.5 t1(記時器1外部輸入)   p3.6 /wr(外部資料儲存器寫選通)   p3.

7 /rd(外部資料儲存器讀選通)   p3口同時為閃爍程式設計和程式設計校驗接收一些控制訊號。   rst:復位輸入。

當振盪器復位器件時,要保持rst腳兩個機器週期的高電平時間。   ale/prog:當訪問外部儲存器時,位址鎖存允許的輸出電平用於鎖存位址的地位位元組。

在flash程式設計期間,此引腳用於輸入程式設計脈衝。在平時,ale端以不變的頻率週期輸出正脈衝訊號,此頻率為振盪器頻率的1/6。因此它可用作對外部輸出的脈衝或用於定時目的。

然而要注意的是:每當用作外部資料儲存器時,將跳過乙個ale脈衝。如想禁止ale的輸出可在sfr8eh位址上置0。

此時, ale只有在執行movx,movc指令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執行狀態ale禁止,置位無效。

  /psen:外部程式儲存器的選通訊號。在由外部程式儲存器取指期間,每個機器週期兩次/psen有效。

但在訪問外部資料儲存器時,這兩次有效的/psen訊號將不出現。   /ea/vpp:當/ea保持低電平時,則在此期間外部程式儲存器(0000h-ffffh),不管是否有內部程式儲存器。

注意加密方式1時,/ea將內部鎖定為reset;當/ea端保持高電平時,此間內部程式儲存器。在flash程式設計期間,此引腳也用於施加12v程式設計電源(vpp)。   xtal1:

反向振盪放大器的輸入及內部時鐘工作電路的輸入。   xtal2:來自反向振盪器的輸出。

  振盪器特性:   xtal1和xtal2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振盪器。

石晶振盪和陶瓷振盪均可採用。如採用外部時鐘源驅動器件,xtal2應不接。有餘輸入至內部時鐘訊號要通過乙個二分頻觸發器,因此對外部時鐘訊號的脈寬無任何要求,但必須保證脈衝的高低電平要求的寬度。

3.原理圖

光電管電機部分

總的原理圖

pcb圖

二、軟體設計

1. 設計思路

採用紅外探測法,即利用紅外線在不同顏色的物體表面具有不同額反射性質的特點,在小車行駛過程中不斷地向地面發射紅外光,當紅外光遇到白色紙質地板時發生漫發射,發射光被裝在小車上的接收管接收;如果遇到黑線則紅外光唄吸收,小車上的接收管接收不到紅外光。微控制器就是否收到反射回來的紅外光為依據來確定黑線的位置和小車的行走路線。

2. 程式流程圖(必須要有)

3. 具體程式

#include

#define uchar unsigned char

sbit in1=p1^1;

sbit in2=p1^2;

sbit in3=p1^5;

sbit in4=p1^6;

sbit ena=p1^0;

sbit enb=p1^4;

sbit fk1=p2^0;

sbit fk2=p2^7;

void delay(uchar x)

void main()

while(fk1==1&&fk2==1)

if(k==1)

}if(fk1==1&&fk2==0)

if(fk1==0&&fk2==1)

}心得體會:

此次課程設計是做我們一直想做的只能小車,在這個製作的過程中我主要負責硬體部分,原理圖,pcb圖,電路板地製作,元器件的焊接。在電路圖到pcb的製作過程中遇到了很多問題,開始原理圖很多地方夠畫錯了,在指導老師的指導下都做了改正,而且在畫pcb圖佈線時候都有好多地方畫錯了,經過乙個星期時間的修改,結果正確圖總算是畫出來了,通過本次設計,深深感到理論與實踐之間的差距。在學習單片課程時,很多知識點在理論完全理解了,但到具體的電路設計與實現中,會出現很多一時無法理解的現象,要通過不斷的通過強化自身的實踐動手能力的培養,才能用理論來指導實踐,通過實踐來進一步深入理解理論,有些東西看試容易做起來難。

參考文獻:

[1]微控制器原理及應用

[2]電子線路cad

嵌入式系統課程設計報告 模版

專業 班級 學院 二 一二年六月 目錄第一章 概述3 1.1研究動機3 1.2研究進度3 1.3專題成果概述3 第二章 實驗平台的構建3 2.1wince的燒寫3 2.2microsoft activesync的同步6第三章 系統設計9 3.1介面要求9 3.2功能要求9 第四章 實作完成9 4.1...

嵌入式課程設計報告

題目 觸控螢幕五子棋遊戲程式設計 基於mx1下的lcd觸控控制以及rs232串列埠通訊 學院自動化 專業自動化 年級 09級 姓名施紅星 2011 年 12月 9 日 根據選作實驗二觸控螢幕的控制提供的例程以及相關驅動,在c語言下適當修改了硬體驅動程式,並根據嵌入式的開發方式,利用相關介面實現在mx...

嵌入式系統課程設計題目

2016.5 共同要求 在lcd上顯示設計題目 設計者名字 主設計者在前 常用外設引腳 led led0 上邊 led3 下邊 分別接pf5 pf9引腳,低電平點亮 按鈕 k0 上邊 k3 下邊 分別接pa0 pc13 pa8 pd3引腳,另一端均接地,按下為低電平。蜂鳴器 蜂鳴器beep接pb10...