創(chuàng)意之星模塊化機(jī)器人實(shí)驗(yàn)程序_第1頁(yè)
創(chuàng)意之星模塊化機(jī)器人實(shí)驗(yàn)程序_第2頁(yè)
創(chuàng)意之星模塊化機(jī)器人實(shí)驗(yàn)程序_第3頁(yè)
創(chuàng)意之星模塊化機(jī)器人實(shí)驗(yàn)程序_第4頁(yè)
創(chuàng)意之星模塊化機(jī)器人實(shí)驗(yàn)程序_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、“創(chuàng)意之星”模塊化機(jī)器人程序代碼 學(xué)生姓名: 學(xué)院: 學(xué)號(hào): 第一次實(shí)驗(yàn):MultiFLEX控制卡編程實(shí)驗(yàn)蜂鳴器實(shí)驗(yàn)#include <avr/io.h>#define BEEP_ON PORTG |= _BV(PG3)#define BEEP_OFF PORTG &= _BV(PG3)int main(void)inti,j;PORTG = 0;DDRG = 0xff;while(1)for(i=0;i<0xFF;i+)for(j=0;j<0xFF;j+);BEEP_ON;for(i=0;i<0xFF;i+)for(j=0;j<0xFF;j+);B

2、EEP_OFF;IO口控制實(shí)驗(yàn)#include "Public.h"#include "Usertask.h"void user_task(void)uint8 io_in; uint8 io_out; uint8 temp8;uint16 temp16;gpio_mode_set(0x00FF);write_gpio(0xFF00);while(1)temp16 = read_gpio();io_in = (uint8)(temp16>>8);temp8=(io_in&0x80);if(temp8=0)io_out=0x01;whi

3、le(io_out)write_gpio(uint16)io_out);delay(5);/延時(shí)5×20MS=0.1sio_out<<=1;write_gpio(uint16)io_out);delay(5);else write_gpio(0xFF00);第二次實(shí)驗(yàn):多自由度串聯(lián)式機(jī)械手#include"Public.h"#include "Usertask.h"voiduser_task(void)uint8array_rc23=0;/舵機(jī)控制數(shù)組長(zhǎng)度為24,可控制12路舵機(jī),舵機(jī)運(yùn)動(dòng)函數(shù)要求array_rc偶數(shù)為舵機(jī)目標(biāo)角度值

4、,array_rc奇數(shù)為舵機(jī)運(yùn)動(dòng)速度值array_rc0=90;/舵機(jī)1,中位為0度(對(duì)應(yīng)數(shù)值90),目標(biāo)角度+20度。取值范圍0-180,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_rc1=170;/舵機(jī)1,速度為170。取值范圍0-255,超過(guò)范圍程序會(huì)丟棄此數(shù)據(jù)array_rc2=90;/舵機(jī)2目標(biāo)角度設(shè)置array_rc3=170;/舵機(jī)2轉(zhuǎn)動(dòng)速度設(shè)置array_rc4=90+90;/舵機(jī)3array_rc5=170;rc_moto_control(array_rc);/將舵機(jī)運(yùn)動(dòng)信息交給舵機(jī)運(yùn)動(dòng)函數(shù),實(shí)現(xiàn)舵機(jī)運(yùn)動(dòng)delay(50);/延時(shí)50*20MS= 1S,給舵機(jī)提供反應(yīng)時(shí)間,此反應(yīng)時(shí)

5、間應(yīng)大于舵機(jī)實(shí)際運(yùn)動(dòng)所需時(shí)間array_rc0=90-90;array_rc1=170;array_rc2=90-90;array_rc3=170;array_rc4=90+90;array_rc5=170;rc_moto_control(array_rc);delay(50);array_rc0=90;array_rc1=170;array_rc2=90;array_rc3=170;array_rc4=90;array_rc5=170;rc_moto_control(array_rc);delay(50);array_rc0=90-90;array_rc1=170;array_rc2=90-

6、90;array_rc3=170;array_rc4=90;array_rc5=170;rc_moto_control(array_rc);delay(50);第三次實(shí)驗(yàn):簡(jiǎn)易四足機(jī)器人#include"Public.h"#include "Usertask.h"voiduser_task(void)uint8array_rc23=0;/舵機(jī)控制數(shù)組長(zhǎng)度為24,可控制12路舵機(jī),舵機(jī)運(yùn)動(dòng)函數(shù)要求array_rc偶數(shù)為舵機(jī)目標(biāo)角度值,array_rc奇數(shù)為舵機(jī)運(yùn)動(dòng)速度值array_rc0=90+45;/舵機(jī)1,中位為0度(對(duì)應(yīng)數(shù)值90),目標(biāo)角度+20度。

7、取值范圍0-180,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_rc1=255;/舵機(jī)1,速度為170。取值范圍0-255,超過(guò)范圍程序會(huì)丟棄此數(shù)據(jù)array_rc2=90-45;/舵機(jī)2目標(biāo)角度設(shè)置array_rc3=255;/舵機(jī)2轉(zhuǎn)動(dòng)速度設(shè)置array_rc4=90-45;/舵機(jī)3array_rc5=255;array_rc6=90+45;/舵機(jī)4array_rc7=255;rc_moto_control(array_rc);/將舵機(jī)運(yùn)動(dòng)信息交給舵機(jī)運(yùn)動(dòng)函數(shù),實(shí)現(xiàn)舵機(jī)運(yùn)動(dòng)delay(50);/延時(shí)50*20MS= 1S,給舵機(jī)提供反應(yīng)時(shí)間,此反應(yīng)時(shí)間應(yīng)大于舵機(jī)實(shí)際運(yùn)動(dòng)所需時(shí)間array_rc0

8、=90;array_rc1=255;array_rc2=90;array_rc3=255;array_rc4=90;array_rc5=255;array_rc6=90;array_rc7=255;rc_moto_control(array_rc);delay(50);第四次實(shí)驗(yàn):輪式機(jī)器人運(yùn)動(dòng)控制實(shí)驗(yàn)走正方形:#include"Public.h"#include "Usertask.h"voiduser_task(void)uint8array_dc7=0;/電機(jī)控制數(shù)組長(zhǎng)度為8,可控制4路舵機(jī),電機(jī)運(yùn)動(dòng)函數(shù)要求array_dc偶數(shù)為電機(jī)轉(zhuǎn)動(dòng)速度,ar

9、ray_rc奇數(shù)為電機(jī)轉(zhuǎn)動(dòng)時(shí)間array_dc0 = 0;/電機(jī)1,正轉(zhuǎn)最大速度(0為正轉(zhuǎn)最大轉(zhuǎn)速,0xFE=254為反轉(zhuǎn)最大轉(zhuǎn)速,0x80=128代表電機(jī)停止)。范圍為0-254,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_dc1 = 10;/電機(jī)1,轉(zhuǎn)動(dòng)時(shí)間30×0.1=3秒。范圍為0-255,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_dc2 = 0;/電機(jī)2,反轉(zhuǎn)最大速度array_dc3 = 10;array_dc4 = 0;/電機(jī)3,正轉(zhuǎn)最大速度array_dc5 = 10;array_dc6 = 0;/電機(jī)4,反轉(zhuǎn)最大速度array_dc7 = 10;dc_moto_control

10、(array_dc);/調(diào)用直流電機(jī)運(yùn)動(dòng)控制函數(shù)dc_moto_control(),參數(shù)為電機(jī)控制數(shù)組名delay(150);/給電機(jī)反應(yīng)時(shí)間150×20MS=3s,此反應(yīng)時(shí)間應(yīng)不小于電機(jī)實(shí)際運(yùn)動(dòng)時(shí)間array_dc0 = 0;array_dc1 = 60;array_dc2 = 0xFE;array_dc3 = 60;array_dc4 = 0xFE;array_dc5 = 60;array_dc6 = 0;array_dc7 = 60;dc_moto_control(array_dc);delay(150);走“8”字形:#include"Public.h"#

11、include "Usertask.h"voiduser_task(void)uint8array_dc7=0;/電機(jī)控制數(shù)組長(zhǎng)度為8,可控制4路舵機(jī),電機(jī)運(yùn)動(dòng)函數(shù)要求array_dc偶數(shù)為電機(jī)轉(zhuǎn)動(dòng)速度,array_rc奇數(shù)為電機(jī)轉(zhuǎn)動(dòng)時(shí)間uint8i;for (i=0;i < 3;i+)array_dc0 = 0;array_dc1 = 60;array_dc2 = 0xFE;array_dc3 = 60;array_dc4 = 0xFE;array_dc5 = 60;array_dc6 = 0;array_dc7 = 60;dc_moto_control(array

12、_dc);delay(150);array_dc0 = 0;array_dc1 = 10;array_dc2 = 0;array_dc3 = 10;array_dc4 = 0; array_dc5 = 10;array_dc6 = 0;array_dc7 = 10;dc_moto_control(array_dc);delay(150);/給電機(jī)反應(yīng)時(shí)間150×20MS=3s,此反應(yīng)時(shí)間應(yīng)不小于電機(jī)實(shí)際運(yùn)動(dòng)時(shí)間array_dc0 = 0;array_dc1 = 60;array_dc2 = 0xFE;array_dc3 = 60;array_dc4 = 0xFE;array_dc5

13、= 60;array_dc6 = 0;array_dc7 = 60;dc_moto_control(array_dc);delay(150);array_dc0 = 0xFE;array_dc1 = 10;array_dc2 = 0xFE;array_dc3 = 10;array_dc4 = 0xFE; array_dc5 = 10;array_dc6 = 0xFE;array_dc7 = 10;dc_moto_control(array_dc);delay(150);for (i=0;i < 3;i+)array_dc0 = 0;array_dc1 = 60;array_dc2 = 0

14、xFE;array_dc3 = 60;array_dc4 = 0xFE;array_dc5 = 60;array_dc6 = 0;array_dc7 = 60;dc_moto_control(array_dc);delay(150);array_dc0 = 0xFE;array_dc1 = 10;array_dc2 = 0xFE;array_dc3 = 10;array_dc4 = 0xFE;array_dc5 = 10;array_dc6 = 0xFE;array_dc7 = 10;dc_moto_control(array_dc);delay(150); array_dc0 = 0;arr

15、ay_dc1 = 60;array_dc2 = 0xFE;array_dc3 = 60;array_dc4 = 0xFE;array_dc5 = 60;array_dc6 = 0;array_dc7 = 60;dc_moto_control(array_dc);delay(150);array_dc0 = 0;array_dc1 = 10;array_dc2 = 0;array_dc3 = 10;array_dc4 = 0; array_dc5 = 10;array_dc6 = 0;array_dc7 = 10;dc_moto_control(array_dc);delay(150);第五次實(shí)

16、驗(yàn):機(jī)器人傳感系統(tǒng)實(shí)驗(yàn)實(shí)驗(yàn)程序1:#include"Public.h"#include "Usertask.h"voiduser_task(void)uint8AD0_in; uint8rc_array23=0;uint16 temp;uint8i;for(i=0; i<24; i=i+2)rc_arrayi=90;rc_arrayi+1=128;while(1)ADC_Read(0,&AD0_in); temp=(uint16)AD0_in*180)/255; rc_array0=(uint8)temp; rc_array1=80;rc_

17、moto_control(rc_array);delay(25); 實(shí)驗(yàn)程序2:#include"Public.h"#include "Usertask.h"voiduser_task(void)uint8AD0_in; uint8rc_array23=0;uint8i=0;while(1)ADC_Read(0,&AD0_in); rc_array0=i*180; rc_array1=AD0_in;rc_moto_control(rc_array);delay(25); i+;if(i>1) i=0;實(shí)驗(yàn)程序3:#include"

18、Public.h"#include "Usertask.h"voiduser_task(void)uint8AD0_in,AD1_in,AD2_in,AD3_in; uint8rc_array23=0;while(1)ADC_Read(0,&AD0_in);ADC_Read(1,&AD1_in);ADC_Read(2,&AD2_in);ADC_Read(3,&AD3_in);rc_array0=(uint8)(uint16)AD0_in*180)/255; rc_array1=100;rc_array2=(uint8)(uint16

19、)AD1_in*180)/255; rc_array3=100;rc_array4=(uint8)(uint16)AD2_in*180)/255; rc_array5=100;rc_array6=(uint8)(uint16)AD3_in*180)/255; rc_array7=100;rc_moto_control(rc_array);delay(25); 第六次實(shí)驗(yàn):自主避障機(jī)器人實(shí)驗(yàn)#include"public.h"#include "Usertask.h"voiduser_task(void)uint8array_dc7=0;/電機(jī)控制數(shù)組,格

20、式參考實(shí)驗(yàn)指導(dǎo)書(shū)uint8array_rc23=0;/舵機(jī)控制數(shù)組,格式參考實(shí)驗(yàn)指導(dǎo)書(shū)uint16temp16;gpio_mode_set(0);/設(shè)置16位IO模式全為輸入temp16 = read_gpio();/讀取16位IO信息至temp16if(temp16 & 0x0003)=3)/IO0、1均為高電平時(shí)(紅外傳感器檢測(cè)到?jīng)]有障礙時(shí)為輸出高)電機(jī)轉(zhuǎn)動(dòng)5秒array_dc0 = 0;/電機(jī)1,正轉(zhuǎn)最大速度(0為正轉(zhuǎn)最大轉(zhuǎn)速,0xFE=254為反轉(zhuǎn)最大轉(zhuǎn)速,0x80=128代表電機(jī)停止)。范圍為0-254,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_dc1 = 50;/電機(jī)1,50&

21、#215;0.1秒轉(zhuǎn)動(dòng)時(shí)間。范圍為0-255,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_dc2 = 0xFE;/電機(jī)2array_dc3 = 50;array_dc4 = 0;/電機(jī)3array_dc5 = 50;array_dc6 = 0xFE;/電機(jī)4array_dc7 = 50;dc_moto_control(array_dc);else if(temp16&0x0003)=2)|(temp16&0x0003)=0)/IO0為低電平(右紅外傳感器檢測(cè)到障礙)或者IO0、IO1均為低電平(兩個(gè)傳感器都檢測(cè)到障礙)電機(jī)左轉(zhuǎn),蜂鳴器發(fā)聲beep_set(5);/蜂鳴器發(fā)聲0.5秒/

22、以最高速度后退array_dc0 = 0xFE;array_dc1 = 5;/0.5秒array_dc2 = 0;array_dc3 = 5;array_dc4 = 0xFE;array_dc5 = 5;array_dc6 = 0;array_dc7 = 5;dc_moto_control(array_dc);delay(30);/給電機(jī)反應(yīng)時(shí)間30×20MS=0.6s,此反應(yīng)時(shí)間應(yīng)大于電機(jī)實(shí)際運(yùn)動(dòng)時(shí)間/機(jī)器人轉(zhuǎn)向array_rc0=90-20;/舵機(jī)1,中位為0度(對(duì)應(yīng)數(shù)值90),目標(biāo)角度+20度。取值范圍0-180,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_rc1=170;/舵機(jī)1,

23、速度為170。取值范圍0-255,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_rc2=90+20;/舵機(jī)2目標(biāo)角度設(shè)置array_rc3=170;/舵機(jī)2轉(zhuǎn)動(dòng)速度設(shè)置array_rc4=90+20;/舵機(jī)3array_rc5=170;array_rc6=90-20;/舵機(jī)4array_rc7=170;rc_moto_control(array_rc); delay(50);/延時(shí)50*20MS= 1S,給舵機(jī)提供反應(yīng)時(shí)間,此反應(yīng)時(shí)間應(yīng)大于舵機(jī)實(shí)際運(yùn)動(dòng)所需時(shí)間array_dc0 = 254;/電機(jī)速度為+55array_dc1 = 10;array_dc2 = 254;array_dc3 = 10;a

24、rray_dc4 = 254;array_dc5 = 10;array_dc6 = 254;array_dc7 = 10;dc_moto_control(array_dc);delay(50);/延時(shí)50*20MS= 1S/機(jī)器人恢復(fù)直線運(yùn)動(dòng)array_rc0=90;array_rc1=170;array_rc2=90;array_rc3=170;array_rc4=90;array_rc5=170;array_rc6=90;array_rc7=170;rc_moto_control(array_rc);delay(50);/延時(shí)50*20MS= 1S,給舵機(jī)提供反應(yīng)時(shí)間,此反應(yīng)時(shí)間應(yīng)大于舵機(jī)

25、實(shí)際運(yùn)動(dòng)所需時(shí)間else/GPIO0低電平(右側(cè)紅外傳感器檢測(cè)到障礙)電機(jī)左轉(zhuǎn),蜂鳴器發(fā)聲beep_set(5);/蜂鳴器發(fā)聲0.5秒array_dc0 = 0xFE;/后退0.5秒array_dc1 = 5;array_dc2 = 0;array_dc3 = 5;array_dc4 = 0xFE;array_dc5 = 5;array_dc6 = 0;array_dc7 = 5;dc_moto_control(array_dc);delay(30);/給電機(jī)反應(yīng)時(shí)間30×20MS=0.6sarray_rc0=90-20;/舵機(jī)1,中位為0度(對(duì)應(yīng)數(shù)值90),目標(biāo)角度+20度。取值范

26、圍0-180,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_rc1=170;/舵機(jī)1,速度為170。取值范圍0-255,超過(guò)此范圍程序會(huì)丟棄此數(shù)據(jù)array_rc2=90+20;/舵機(jī)2目標(biāo)角度設(shè)置array_rc3=170;/舵機(jī)2轉(zhuǎn)動(dòng)速度設(shè)置array_rc4=90+20;/舵機(jī)3array_rc5=170;array_rc6=90-20;/舵機(jī)4array_rc7=170;rc_moto_control(array_rc); delay(50);/延時(shí)50*20MS= 1S,給舵機(jī)提供反應(yīng)時(shí)間,此反應(yīng)時(shí)間應(yīng)大于舵機(jī)實(shí)際運(yùn)動(dòng)所需時(shí)間array_dc0 = 0;/電機(jī)速度為+55array_dc1

27、= 10;array_dc2 = 0;array_dc3 = 10;array_dc4 = 0;array_dc5 = 10;array_dc6 = 0;array_dc7 = 11;dc_moto_control(array_dc);delay(50);/延時(shí)50*20MS= 1Sarray_rc0=90;array_rc1=170;array_rc2=90;array_rc3=170;array_rc4=90;array_rc5=170;array_rc6=90;array_rc7=170;rc_moto_control(array_rc);/機(jī)器人轉(zhuǎn)向delay(50);/延時(shí)50*20

28、MS= 1S,給舵機(jī)提供反應(yīng)時(shí)間,此反應(yīng)時(shí)間應(yīng)大于舵機(jī)實(shí)際運(yùn)動(dòng)所需時(shí)間第七次實(shí)驗(yàn):追光的機(jī)器爬蟲(chóng)#include"public.h"#include "Usertask.h"uint8move_on_flag=0; void move_on1(void) uint8 rc_array1024=0xAD,0x67,0x5A,0x67,0x11,0xDC,0x5C,0xD9,0xAD,0x67,0x67,0x67,0x0A,0x67,0x60,0x67,0xAD,0x67,0x50,0x67,0x11,0x67,0x66,0x67,0xAD,0x67,0x5

29、D,0x67,0x0A,0x67,0x6A,0x67,0x5A ,0x80,0xAD ,0x67 ,0x4B ,0x67 ,0x11 ,0x67 ,0x6B ,0x67 ,0x8F ,0xDC ,0x71 ,0xD9 ,0x0A ,0x67 ,0x6F ,0x67 ,0xAD ,0x67 ,0x46 ,0x67 ,0x11 ,0x67 ,0x70 ,0x67 ,0xAD ,0xDC ,0x85 ,0xD9 ,0x0A ,0x67 ,0x74 ,0x67 ,0x8F ,0xDC ,0x5A ,0xD9 ,0x11 ,0x67 ,0x75 ,0x67 ,0xAD ,0x67 ,0x80 ,0x67

30、 ,0x0A ,0x67 ,0x79 ,0x67,0xAD ,0xDC ,0x6E ,0xD9 ,0x11 ,0x67 ,0x7A ,0x67 ,0xAD ,0x67 ,0x7B ,0x67 ,0x0A ,0x67 ,0x7E ,0x67,0xAD ,0x67 ,0x69 ,0x67 ,0x11 ,0x67 ,0x7F ,0x67 ,0xAD ,0x67 ,0x76 ,0x67 ,0x28 ,0xDC ,0x6A ,0xD9,0xAD ,0x67 ,0x64 ,0x67 ,0x11 ,0x67 ,0x84 ,0x67 ,0xAD ,0x67 ,0x71 ,0x67 ,0x0A ,0xDC ,0

31、x56 ,0xD9,0xAD ,0x67 ,0x5F ,0x67 ,0x2F ,0xDC ,0x70 ,0xD9 ,0xAD ,0x67 ,0x6C ,0x67 ,0x0A ,0x67 ,0x5B ,0x67,0xAD ,0x67 ,0x5A ,0x67 ,0x11 ,0xDC ,0x5C ,0xD9 ,0xAD ,0x67 ,0x67 ,0x67 ,0x0A ,0x67 ,0x60 ,0x67;uint8i;for(i=0;i<10;i+)rc_moto_control(rc_arrayi);delay(6);void move_on2(void) uint8 rc_array1024

32、=0xAD ,0x67 ,0x5A ,0x67 ,0x11 ,0xDC ,0x5C ,0xD9 ,0xAD ,0x67 ,0x67 ,0x67 ,0x0A ,0x67 ,0x60 ,0x67,0xAD ,0x67 ,0x50 ,0x67 ,0x11 ,0x67 ,0x66 ,0x67 ,0xAD ,0x67 ,0x5D ,0x67 ,0x0A ,0x67 ,0x6A ,0x67,0xAD ,0x67 ,0x4B ,0x67 ,0x11 ,0x67 ,0x6B ,0x67 ,0xAD ,0x67 ,0x58 ,0x67 ,0x28 ,0xDC ,0x56 ,0xD9,0xAD ,0x67 ,0x

33、46 ,0x67 ,0x11 ,0x67 ,0x70 ,0x67 ,0xAD ,0x67 ,0x53 ,0x67 ,0x0A ,0xDC ,0x42 ,0xD9,0xAD ,0x67 ,0x41 ,0x67 ,0x2F ,0xDC ,0x5C ,0xD9 ,0xAD ,0x67 ,0x4E ,0x67 ,0x0A ,0x67 ,0x47 ,0x67,0xAD ,0x67 ,0x3C ,0x67 ,0x11 ,0xDC ,0x48 ,0xD9 ,0xAD ,0x67 ,0x49 ,0x67 ,0x0A ,0x67 ,0x4C ,0x67,0xAD ,0x67 ,0x37 ,0x67 ,0x11

34、,0x67 ,0x4D ,0x67 ,0x8F ,0xDC ,0x5D ,0xD9 ,0x0A ,0x67 ,0x51 ,0x67,0xAD ,0x67 ,0x32 ,0x67 ,0x11 ,0x67 ,0x52 ,0x67 ,0xAD ,0xDC ,0x71 ,0xD9 ,0x0A ,0x67 ,0x56 ,0x67,0x8F ,0xDC ,0x46 ,0xD9 ,0x11 ,0x67 ,0x57 ,0x67 ,0xAD ,0x67 ,0x6C ,0x67 ,0x0A ,0x67 ,0x5B ,0x67,0xAD ,0xDC ,0x5A ,0xD9 ,0x11 ,0x67 ,0x5C ,0x

35、67 ,0xAD ,0x67 ,0x67 ,0x67 ,0x0A ,0x67 ,0x60 ,0x67;uint8i;for(i=0;i<10;i+)rc_moto_control(rc_arrayi);delay(6);voidmove_on(void) if(move_on_flag=0) move_on1();else move_on2();move_on_flag+;if(move_on_flag>1) move_on_flag=0; voidturn_left(void) uint8 rc_array1024=0xAD ,0xDC ,0x5A ,0xD9 ,0x11 ,0x

36、67 ,0x5C ,0x67 ,0xAD ,0x67 ,0x67 ,0x67 ,0x0A ,0x67 ,0x60 ,0x67,0xAD ,0x67 ,0x64 ,0x67 ,0x11 ,0x67 ,0x66 ,0x67 ,0xAD ,0x67 ,0x71 ,0x67 ,0x0A ,0x67 ,0x6A ,0x67,0xAD ,0x67 ,0x69 ,0x67 ,0x11 ,0x67 ,0x6B ,0x67 ,0xAD ,0x67 ,0x76 ,0x67 ,0x28 ,0xDC ,0x56 ,0xD9,0xAD ,0x67 ,0x6E ,0x67 ,0x11 ,0x67 ,0x70 ,0x67

37、,0xAD ,0x67 ,0x7B ,0x67 ,0x0A ,0xDC ,0x42 ,0xD9,0xAD ,0x67 ,0x73 ,0x67 ,0x2F ,0xDC ,0x5C ,0xD9 ,0xAD ,0x67 ,0x80 ,0x67 ,0x0A ,0x67 ,0x47 ,0x67,0xAD ,0x67 ,0x78 ,0x67 ,0x11 ,0xDC ,0x48 ,0xD9 ,0xAD ,0x67 ,0x85 ,0x67 ,0x0A ,0x67 ,0x4C ,0x67,0xAD ,0x67 ,0x7D ,0x67 ,0x11 ,0x67 ,0x4D ,0x67 ,0x8F ,0xDC ,0x

38、71 ,0xD9 ,0x0A ,0x67 ,0x51 ,0x67,0xAD ,0x67 ,0x82 ,0x67 ,0x11 ,0x67 ,0x52 ,0x67 ,0xAD ,0xDC ,0x5D ,0xD9 ,0x0A ,0x67 ,0x56 ,0x67,0x8F ,0xDC ,0x6E ,0xD9 ,0x11 ,0x67 ,0x57 ,0x67 ,0xAD ,0x67 ,0x62 ,0x67 ,0x0A ,0x67 ,0x5B ,0x67,0xAD ,0xDC ,0x5A ,0xD9 ,0x11 ,0x67 ,0x5C ,0x67 ,0xAD ,0x67 ,0x67 ,0x67 ,0x0A

39、,0x67 ,0x60 ,0x67;delay(10);uint8i;for(i=0;i<10;i+)rc_moto_control(rc_arrayi);delay(6);voidturn_right(void) uint8 rc_array1024=0xAD ,0x67 ,0x5A ,0x67 ,0x11 ,0xDC ,0x5C ,0xD9 ,0xAD ,0x67 ,0x67 ,0x67 ,0x0A ,0x67 ,0x60 ,0x67,0xAD ,0x67 ,0x50 ,0x67 ,0x11 ,0x67 ,0x52 ,0x67 ,0xAD ,0x67 ,0x5D ,0x67 ,0x0

40、A ,0x67 ,0x56 ,0x67,0xAD ,0x67 ,0x4B ,0x67 ,0x11 ,0x67 ,0x4D ,0x67 ,0x8F ,0xDC ,0x71 ,0xD9 ,0x0A ,0x67 ,0x51 ,0x67,0xAD ,0x67 ,0x46 ,0x67 ,0x11 ,0x67 ,0x48 ,0x67 ,0xAD ,0xDC ,0x85 ,0xD9 ,0x0A ,0x67 ,0x4C ,0x67,0x8F ,0xDC ,0x5A ,0xD9 ,0x11 ,0x67 ,0x43 ,0x67 ,0xAD ,0x67 ,0x80 ,0x67 ,0x0A ,0x67 ,0x47 ,

41、0x67,0xAD ,0xDC ,0x6E ,0xD9 ,0x11 ,0x67 ,0x3E ,0x67 ,0xAD ,0x67 ,0x7B ,0x67 ,0x0A ,0x67 ,0x42 ,0x67,0xAD ,0x67 ,0x69 ,0x67 ,0x11 ,0x67 ,0x39 ,0x67 ,0xAD ,0x67 ,0x76 ,0x67 ,0x28 ,0xDC ,0x56 ,0xD9,0xAD ,0x67 ,0x64 ,0x67 ,0x11 ,0x67 ,0x34 ,0x67 ,0xAD ,0x67 ,0x71 ,0x67 ,0x0A ,0xDC ,0x6A ,0xD9,0xAD ,0x67

42、 ,0x5F ,0x67 ,0x2F ,0xDC ,0x48 ,0xD9 ,0xAD ,0x67 ,0x6C ,0x67 ,0x0A ,0x67 ,0x65 ,0x67,0xAD ,0x67 ,0x5A ,0x67 ,0x11 ,0xDC ,0x5C ,0xD9 ,0xAD ,0x67 ,0x67 ,0x67 ,0x0A ,0x67 ,0x60 ,0x67;delay(10);uint8i;for(i=0;i<10;i+)rc_moto_control(rc_arrayi);delay(6);voiduser_task(void)uint8light_sensor_left; uint8

43、light_sensor_right; uint8light_gate=130; int8sub_gate=30;int8int8_temp; while(1)ADC_Read(0,&light_sensor_left);ADC_Read(1,&light_sensor_right); if(light_sensor_left>light_gate) if(light_sensor_right>light_gate)int8_temp=(int8)(light_sensor_left - light_sensor_right);if(int8_temp)if(int

44、8_temp>sub_gate)turn_left();elsemove_on();elseint8_temp=0-int8_temp;if(int8_temp>sub_gate)turn_right();elsemove_on();elseturn_left();elseturn_right();第八次實(shí)驗(yàn):設(shè)計(jì)自己的機(jī)器人#include"Public.h"#include "Usertask.h"voiduser_task(void)uint8AD0_in; uint8rc_array23=0;uint16 temp;uint8i;for(i=0; i<24; i=i+2)rc_arrayi=90;rc_arrayi+1=12

溫馨提示

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

評(píng)論

0/150

提交評(píng)論