《計(jì)算機(jī)編程能力實(shí)訓(xùn)》動員-基于教育機(jī)器人_第1頁
《計(jì)算機(jī)編程能力實(shí)訓(xùn)》動員-基于教育機(jī)器人_第2頁
《計(jì)算機(jī)編程能力實(shí)訓(xùn)》動員-基于教育機(jī)器人_第3頁
《計(jì)算機(jī)編程能力實(shí)訓(xùn)》動員-基于教育機(jī)器人_第4頁
《計(jì)算機(jī)編程能力實(shí)訓(xùn)》動員-基于教育機(jī)器人_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基于“教育機(jī)器人”的計(jì)算機(jī)編程能力實(shí)訓(xùn)2016-06-20信息技術(shù)教學(xué)與實(shí)驗(yàn)中心王淑鴻wangshuhong@1實(shí)訓(xùn)動員內(nèi)容一、教育機(jī)器人硬件概述二、主控板介紹及面包板使用三、相關(guān)軟件介紹及安裝四、程序的編寫、編譯、下載、運(yùn)行

案例1--表情流水燈

案例2--讓小車動起來

案例3--觸須導(dǎo)航2一、教育機(jī)器人—“龍人寶貝車”概述主板金屬車架舵機(jī)2個主動輪2個隨動輪1個輪子防滑膠圈2個電池盒1個充電鋰電池2個充電器程序下載器(USBASP下載器)USB轉(zhuǎn)串口線基本元器件、螺絲螺母、導(dǎo)線若干螺絲刀、尖嘴鉗QTI巡線傳感器(4個)深圳市中科鷗鵬智能科技有限公司(WWW.SZOPEN.CN)3Whycallitrobot?4二、控制板(主板)結(jié)構(gòu)簡介1、MCU:AT89S522、四個I/O端口P0-P33、Vcc+5VGND接地4、面包板5三、相關(guān)軟件介紹及安裝1、keilC--編寫C語言程序、

編譯給AT89S52單片機(jī)2、下載器驅(qū)動程序--USBASP下載器3、AVR_fighter--將程序下載至單片機(jī)4、USB轉(zhuǎn)串口驅(qū)動5、串口調(diào)試助手61、開發(fā)環(huán)境KeilC安裝完成后,將寶貝車所需頭文件拷貝到

C:\Keil\C51\INC72、USBASP下載器驅(qū)動安裝USB-ASP下載器83、AVR_fighter程序下載軟件9四、程序的編寫、編譯、下載、運(yùn)行步驟:電路搭建程序編寫及編譯下載運(yùn)行案例1--表情流水燈案例2--讓小車動起來案例3--觸須導(dǎo)航10案例1--表情流水燈LED燈與單片機(jī)的連接電路圖搭接電路的面包板介紹和線路搭建11最簡單的機(jī)器人C程序設(shè)計(jì):表情流水燈#include<BoeBot.h>#include<uart.h>intmain(void){uart_Init();//初始化串口

printf("TheLEDconnectedtoP1_0isblinking!\n");while(1){P1_0=1;P1_1=0;delay_nms(500);//延時500msP1_0=0;P1_1=1;delay_nms(500);//延時500ms}}121.新建工程Pro1。

2.選擇芯片Atmel–AT89S52確定(彈出窗口點(diǎn)否)

3.新建文件,編程,保存為Pro1.C4.將文件添加到項(xiàng)目

5.右鍵單擊項(xiàng)目,選擇Optiontotarget

如右圖進(jìn)行設(shè)置

6.編譯連接程序,得到Pro1.hex文件

用KeilC創(chuàng)建與編輯你的第一個機(jī)器人程序13用AVR_fighter下載.hex文件到機(jī)器人控制器第一步:選擇需要下載的hex文程序第二步:選擇正確的芯片類型第三步:確保開發(fā)板供電正常和線路連接正確。點(diǎn)擊該按鈕將程序下載到開發(fā)板上。141、舵機(jī)的連接

實(shí)例二--控制舵機(jī)讓機(jī)器人動起來151、舵機(jī)的連接

實(shí)例二--控制舵機(jī)讓機(jī)器人動起來設(shè)定面包板朝前為正方向,觀察你的小車左輪和右輪的連接162、☆☆☆舵機(jī)調(diào)零☆☆☆

while(1) { P1_0=1; delay_nus(1500); P1_0=0; delay_nus(20000); }

實(shí)例二--控制舵機(jī)讓機(jī)器人動起來173、全速逆時針旋轉(zhuǎn)

while(1) {P1_0=1; delay_nus(1700); P1_0=0; delay_nus(20000); }實(shí)例二--控制舵機(jī)讓機(jī)器人動起來184、全速順時針旋轉(zhuǎn)

while(1) { P1_0=1; delay_nus(1300); P1_0=0; delay_nus(20000); }實(shí)例二--控制舵機(jī)讓機(jī)器人動起來195、智能車全速前進(jìn)

//以左輪接P1_0,右輪接P1_1為例

//小車直行時,左輪全速逆時針旋轉(zhuǎn),右輪全速順時針轉(zhuǎn)。Why?

while(1){ P1_0=1; delay_nus(1700);P1_0=0; P1_1=1; delay_nus(1300); P1_1=0; delay_nms(20); }實(shí)例二--控制舵機(jī)讓機(jī)器人動起來206、程序最后while(1);語句的作用

單片機(jī)是單任務(wù)的,如果不永真循環(huán)將程序停在該語句,

MCU就會繼續(xù)從內(nèi)存中向下讀取指令,程序就跑飛了。實(shí)例二--控制舵機(jī)讓機(jī)器人動起來21#include<at89x52.h>#include<BoeBot.h>#include<LCD.h>voidForward(void){inti;for(i=1;i<=65;i++) {P1_0=1;delay_nus(1700);P1_0=0; P1_1=1;delay_nus(1300);P1_1=0; delay_nms(20); }}voidLeft_Turn(void){inti;for(i=1;i<=10;i++) {P1_0=1;delay_nus(1300);P1_0=0; P1_1=1;delay_nus(1300);P1_1=0; delay_nms(20); }}實(shí)例二--控制舵機(jī)讓機(jī)器人動起來22voidRight_Turn(void){inti;for(i=1;i<=10;i++) { P1_0=1;delay_nus(1700);P1_0=0; P1_1=1;delay_nus(1700); P1_1=0; delay_nms(20);}}voidBackward(void){inti;for(i=1;i<=65;i++) { P1_0=1;delay_nus(1300);P1_0=0; P1_1=1;delay_nus(1700);P1_1=0; delay_nms(20);}}voidStop(void){inti;while(1){ P1_0=1;delay_nus(1500);P1_0=0; P1_1=1;delay_nus(1500);P1_1=0; delay_nms(20);}}23intmain(void){ charNavigation[]={'F','R','F','R','F','L','F','L','F','R','B','B','\0'}; intaddress=0;delay_nms(2000); while(Navigation[address]!='\0'){ switch(Navigation[address]){ case'F':delay_nms(500); Forward();delay_nms(2000); break; case'L':delay_nms(500); Left_Turn();delay_nms(2000); break; case'R':delay_nms(500); Right_Turn(); delay_nms(2000); break; case'B':delay_nms(500); Backward();delay_nms(2000); break; } address++; } while(1);}實(shí)例三—觸須導(dǎo)航機(jī)器人24實(shí)例三—觸須導(dǎo)航機(jī)器人25實(shí)例三—觸須導(dǎo)航機(jī)器人26實(shí)例三—觸須導(dǎo)航機(jī)器人27#include<BoeBot.h>#include<uart.h>

intP1_4state(void){return(P1&0x10)?1:0;}

intP2_3state(void){return(P2&0x08)?1:0;}28 voidForward(void){

P1_1=1;delay_nus(1700);P1_1=0;

P1_0=1;delay_nus(1300);P1_0=0;

delay_nms(20); } voidBackward(void){

inti;

for(i=1;i<=65;i++){

P1_1=1;delay_nus(1300);P1_1=0;

P1_0=1;delay_nus(1700);P1_0=0;

delay_nms(20);

} }29 voidForward(void){

P1_1=1;delay_nus(1700);P1_1=0;

P1_0=1;delay_nus(1300);P1_0=0;

delay_nms(20); } voidBackward(void){

inti;

for(i=1;i<=65;i++){

P1_1=1;delay_nus(1300);P1_1=0;

P1_0=1;delay_nus(1700);P1_0=0;

delay_nms(20);

} }30 voidLeft_Turn(void){

inti;

for(i=1;i<=26;i++){

P1_1=1;delay_nus(1300);P1_1=0;

P1_0=1;delay_nus(1300);P1_0=0;

delay_nms(20); }}

voidRight_Turn(void){

inti;

for(i=1;i<=26;i++){

P1_1=1;delay_nus(1700);P1_1=0;

P1_0=1;delay_nus(1700);P1_0=0;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論