Përmbajtje:

Shkëmbi: 8 hapa
Shkëmbi: 8 hapa

Video: Shkëmbi: 8 hapa

Video: Shkëmbi: 8 hapa
Video: Гибель судна Express Samina. 2024, Korrik
Anonim
Guri
Guri

Ky robot kontrollohet nga një program bazë vizual (përmes portit serik), dhe mund të lëvizë në tre shpejtësi të ndryshme nga një sinjal i moduluar i gjerësisë së impulsit (PWM) i gjeneruar nga një mikrokontrollues PIC (16F877). Roboti mund të operohet në dy mënyra, modalitetet "kontroll normal" dhe "gjurmues drite". Në regjimin normal të kontrollit, roboti mund të mbajë objekte me madhësi nga 3 - 18 cm nga vendi në tjetrin brenda 150 m. ndërsa në modalitetin e gjurmuesit të dritës, ai ndjek dritën në një dhomë të errët. Shumë sensorë u përdorën, siç janë sensorët e dritës; sensori i pjerrësisë, ndalesa e rrymës, ndijimi i nivelit të baterisë dhe disa ndërprerës dhe sensorë prekës të përdorur në dorë. Mund të mbajë shpejtësinë e tij konstante kur shkon në një kodër (e përkulur) dhe ndez automatikisht dritën kur bëhet errësirë e errët. Gjithashtu për të mbajtur IC -në të sigurt, ai shkëput rrymën kur është mbërthyer dhe dora ndalon kur mban diçka. 4 motorë DC u përdorën të kontrolluar nga një mikrokontrollues PIC 16F877 dhe 3 qarqe të drejtuesve të motorëve. U deshën rreth 4 muaj, dhe kushton rreth 600 $

Hapi 1: Hartoni Projektin

Hartoni Projektin
Hartoni Projektin
Hartoni Projektin
Hartoni Projektin

në fazën fillestare, u dha një dizajn i projektit. kryesisht, duke përcaktuar bllok diagramin; shiko figurën.

Në këtë fazë kërkohet një Diagram qarkor më i detajuar, megjithatë, për ta lehtësuar këtë, modulet kryesorë të identifikuar ishin: 1. Mikrokontrolluesi 2. Sensorët 3. Motorët 4. Qarku pa tel 5. Programi PC. Gjithashtu u bë një Dizajn 3d, shihni figurën.

Hapi 2: Zgjidhni Pajisjet dhe Komponentët

Në këtë fazë, projektuesi duhet të zgjedhë pajisjet dhe përbërësit e kërkuar për të ndërtuar robotin.

Kjo përfshin: qarkun pa tel (modulet MAX232, LM331, transmetues FM dhe marrës), motorë (4 motorë DC), qark drejtues motorësh (urë H), mikrokontrollues PIC (16F877), Bateri, Rregullatorë të tensionit (MC7805), Mikroçelës, Fotorezistorët, sensori i pjerrësisë … etj. Shtë e rëndësishme të kuptohet llogaritshmëria e këtyre pajisjeve dhe si funksionojnë së bashku.

Hapi 3: Mikrokontrolluesi

Mikrokontrolluesi
Mikrokontrolluesi

Ky hap është hapi më i rëndësishëm. në fillim, kodet që do të merren dhe transmetohen nga PIC duhet të identifikohen.

Filloni të lidhni përbërësit me kunjat e duhura të PIC dhe programoni mikrokontrolluesin. Kjo mund të kërkojë ndërtimin e qarqeve të vogla duke përdorur rregullatorët, rezistorët, sensorët … etj.

Hapi 4: Shkruani Programin e PC

Shkruani Programin e PC
Shkruani Programin e PC
Shkruani Programin e PC
Shkruani Programin e PC

Programi u shkrua në Visual Basic.

Komunikimi u krijua përmes RS-232. Përdorimi i MSComm për të dërguar të dhënat te mikrokontrolluesi duke konfiguruar cilësimet (numri i portit, shkalla e baudit, numri i barazisë së bitëve të të dhënave, bitët e ndaluar). Kam përdorur të dhëna 8-bit me një bit të ndaluar dhe barazi me një ritëm baud 9600 bps.

Hapi 5: Ndërtoni trupin

Ndërtoni Trupin
Ndërtoni Trupin
Ndërtoni Trupin
Ndërtoni Trupin

Një dizajn i mirë i trupit është i rëndësishëm. Gjithashtu duke zgjedhur rregullimin e rrotave, shihni figurën.

ai robot u ndërtua pasi u sigurua që programet po funksionojnë mirë. Ky hap mund të bëhet edhe para programimit.

Hapi 6: Ndërtoni qarkun pa tel

Ndërtoni qarkun pa tel
Ndërtoni qarkun pa tel

Ndërtimi i qarkut pa tel mund të jetë i pavarur. Në fazën fillestare, unë kam përdorur një tel për të lidhur kompjuterin me robotin, dhe pasi përfundova robotin, qarku pa tel u integrua.

Hapi 7: Integrohuni

Integrohuni
Integrohuni

Ky është momenti kur ne integruam përbërësit tanë dhe testuam robotin.

Hapi 8: Kodi i Programit të Mikrokontrolluesit

; *************** FINAL ****************************** lista p = 16f877 përfshijnë decidlocs rrënjë "V" << 8 | "1"; Versioni Nr.config _CP_OFF & _PWRTE_OFF & _WDT_OFF & _XT_OSC; ********* variabla kryesore ************************* cblock 0x20; fillimi i bankë zonë 0 ram INPUT_VAR L1 L2 X SPEED11 SPEED12 SPEED21 SPEED22 MSTOP LDET LR1 LR2 endc; ********** fillimi i programit kryesor ************** fillimi i BSF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X40 MOVWF ADCON1 MOVLW 0XFF; PORTI A ISHT MOVWF TRISA MOVLW 0X00; PORTI B OSHT O MOVWF TRISB MOVLW 0XF0; PORTI C IS I/O MOVWF TRISC MOVW TRISD MOVLW 0X07; PORT E A JAM MOVWF TRISE BANKSEL OPTION_REG BCF OPTION_REG, T0CS BCF STATUS, RP1 BCF STATUS, RP0; ************************* ********************************************* ************ PRIT BCF PORTB, 1 BCF PORTB, 2 BCF PORTB, 6 CALL PWM1OFF CALL PWM2OFF BCF PORTD, 0 BCF PORTD, 1 BCF PORTD, 2 BCF PORTD, 3 BTFSS LDET, 0 BCF PORTB, 7 MOVLW 0X00 MOVF MSTOP MOVF LDET BANKSEL INTCON BCF INTCON, GIE BANKSEL TXSTA BSF TXSTA, BRGH MOVLW 0X40 MOVWF SPBRG BCF TXSTA, SYNC BANKSEL RCSTA BSF, BS, BC, OERR GOTO CLROE BANKSEL PIE1 BSF PIE1, RCIE BANKSEL RCSTA BCF RCSTA, RX9 BSF RCSTA, CRENWAIT1 BANKSEL PORTB BSF PORTB, 3 BSF PORTB, 4 BANKSEL PIR1 BFF, BIRF, BIRF, BIRN, BIRN, BIRN, BIRN, BIRS, BIRN, BIRN, BIRN CALL PWM1OFF CALL PWM2OFF CALL Darklight BTFSC LDET, 0 BSF PORTB, 7RXDATA; BANKSEL RCSTA; BTFSC RCSTA, OERR; GOTO STOPS CALL PWM1OFF CALL PWM2OFF CALL Darklight BTFSC LDET, 0 BSF PORTB, 7 BANKSEL PIR1 BCF PIR1, RCIF BANKSEL RCREG MOVF RCREG, 0; ***************************************; **** ************************************** MOVWF INPUT_VAR MOVLW 0X00 MOVWF RCREG BCF STATUS, RP0 BCF STATUS, RP1 MOVF INPUT_VAR, 0; STOP SUBLW 0X53 BTFSC STATUS, Z GOTO STOPS MOVF INPUT_VAR, 0; Drita N S SUBLW 0X4E BTFSC STATUS, Z GOTO LONG MOVF INPUT_VAR, MOTUT, MOT 0LOVSC, MOTUTLOVSC, MOTAR, MOTUTLOVSC, MOTUT, MOTUT, MOTUT, MOTUT, MOT, MOT, MOT, MOT, MOT, MOT, MOT, MOT, MOT, MOT, MOT, MOTO, LUT, MOTUF, MOTUF, MOTOR, MOTOF, MOT, MOT, MOT, MOT, MOT, MOTO, LUTT, LUTT, LUTT, LUTT, LUTT, LUTT, LUTT 0; LVEVIZ P FORRPAR SUBLW SLOW SLLW 0X66 BTFSC, Z GOTO FSLOW MOVF INPUT_VAR, 0; L MOVIZ STATUSIN E NDRYSHM SLOW SUBLW 0X72, Z GOTO RSLOW MOVF INPUT_VAR, 0; MOVE LEFLW SLOW SLOW X6C BTFSC STATUS, Z GOTO LSLOW MOVF INPUT_VAR, 0; MOVE BACKWARD SLOW SUBLW 0X62 BTFSC STATUS, Z GOTO BSLOW MOVF INPUT_VAR, 0; MOVE FORWARD MEDIUM SUBLW SUBLW MUMX 0, MXT04 STATUS, Z GOTO RMED MOVF INPUT_VAR, 0; LVEVIZ MJETARIN E MJESHT SUBLW 0X4C BTFSC STATUS, Z GOTO LMED MOVF INPUT_VAR, 0; LVEVIZ PRMBAJTJE MEDIUM SUBLW 0X42 BTFSC STATUS STAM, GOTB Z GOTO FFAST MOVF INPUT_VAR, 0; Lëvizni DREJT FAST SUBLW 0X57 BTFSC STATUS, Z GOTO RFAST MOVF INPUT_VAR, 0; Lëvizni të majtën më shpejt të shpejtë SUBLW 0X56 BTFSC STATUS, Z GOTO LFAST GASH, GASHTYLL, MOTOJ, MOTUF, MOTUF, MOTUF, MOTUF BFAST MOVF INPUT_VAR, 0; HAND afërsi SUBLW 0X43 BTFSC FAZA, Z GOTO HCLOSE MOVF INPUT_VAR, 0; dorë të hapur SUBLW 0X4F BTFSC FAZA, Z GOTO HOPEN MOVF INPUT_VAR, 0; dorë deri SUBLW 0X75 BTFSC FAZA, Z GOTO HUP MOVF INPUT_VAR, 0; DOR D POSHT SUBLW 0X64 BTFSC STATUS, Z GOTO HDOWN MOVF INPUT_VAR, 0; Dritë FOLOWE R SUBLW 0X54 BTFSC STATUS, Z GOTO LFOLLOW; ************************************ ***; *************************************** GOTO CLROEFSLOW; BANKSEL RCSTA; BCF RCSTA, OERR; BCF RCSTA, CREN; NOP; BSF RCSTA, CREN BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP; BCF LDET, 0; CALL BUTTLEVEL, BTF LDET 0, RCIF GOTO RXDATA GOTO REP3 GOTO CLROE; ************************************* ** LSLOW BCF STATUS, RP0 BCF STATUS, RP1; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 CALL DARKLIGHT BARKS BTFSC LDET, 0; BSF MWF MWFW MOV 0XCF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF POR TB, 2 REP4 BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP4 GOTO CLROE; ******************************* ********** RSLOW BCF STATUS, RP0 BCF STATUS, RP1; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 THIRRJE DARKLIGHT DARKLIGHT BTFSC LDV, 0; BSF 0XCF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 THIRRJE PWM1ON CALL PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF POTBOB POTB, POTBOB, 1 BS, PF, POTBOX, 1 BS *************************** BSLOW BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP 1 PORTB, 2 REP5 BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP5 GOTO CLROE; ******************************* ********** F MED BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS CALL DARKLIGHT BTFSC LDET 0 MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 THIRRJE PWM1ON CALL PWM2ON BCF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 CALL SDELAY REP6 CALL STALL1 BTFSC MSTOP, 0 GOTO STOPS BOTTY BOTT, GOTO GOTO, STOP GOTO REP6 PLUSEMED MOVLW 0XCF MOVWF SPEED11 MOVLW 0XCC MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XCC MOVWF SPEED22 THIRRJE PWM1ON CALL PWM2ON BCF PYNJE PASTRIMI, 0 BCF PYNJE PERFORME, 0 PERFORME, 0 BCF PYPER, 0FP, PERFORME, CF 1 BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA BTFSS PORTD, 7 GOTO NORMALMED GOTO REP7 GOTO CLROE; **************************** ************ RMED BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS THIRR D DARKLIGHT BTFSC LDET, 0; B, 7 MOVLW 0XFF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 THIRRJE PWM1ON THIRRJE PWM2ON BCF PORTD, 0 BSF PORTOF, 1 BOX, 1 BOZ, 1 BOZ, 1 BOZ, 1 PASTRIM, 1 BF BTFSC PIR1, RCIF GOTO RXDATA GOTO REP8 GOTO CLROE; ************************************ **** LMED BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS CALL DARKLIGHT BARKS BTFSC LDET, 0; BSF MWFW MOVFF, MOV 0W SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 THIRRJE PWM1ON CALL PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP9; CALL STALL1; BOTFOTS, BOTFOX, BTF, BOTFOX, BOTS, BTF, BOTS, BOTS, BOTS, BTF, BTF, BOTS, BTF, BOTS, BTF, BTF, BOTFO, BOTFOJN, BTF, BTF, BTF, BTF REP9 GOTO CLROE; *************************************** BMED BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS CALL DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XFF MOVWF MOVLW 0X7F MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X7F MOVWF SPEED22 THIRRJE PWM1ON THIRRJE PWM2ON BSF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTFO, POTFO, BOTS, BOTS, BOTS, BOTS, BOTS, BOTS, BOTS, BOTS, BOTS, BOTS REP10 GOTO CLROE; *************************************** FATAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 BSF MSTOP, 4; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS THIRR D DARKLIGHT BARKS BTFSC LDET, 0; BSF PORTB MOFW MOV MOV 7 MOVL MOVWF SPEED21 MOVLW 0X7F MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORTD, 0 BCF PORTD 1 BSF PORTB 1 BSF PORTB 2 CALL Sdelay NORMALFAST MOVLW 0XCF MOVWF SPEED11 MOVLW 0XCC MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XCC MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORTD, 0 BCF PORTD, 1 BTFSC LDET, 0 BSF PORTB, 7 BSF PORTB, 1 BSF PORTB, 2 REP11 CALL STALL1 BTFSC MSTOP, 0 GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA NOP, RCIF GOTO RXDATA NOP, AST MOVLW 0XCF MOVWF SPEED11 MOVLW 0XFF MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XFF MOVWF SPEED22 THIRRJE PWM1ON CALL PWM2ON BCF PORTD, 0 BCF PORTFORM, 1 BF, PF 1, 1 BF, RCIF GOTO RXDATA BTFSS PORTD, 7 GOTO NORMALFAST GOTO REP12 GOTO CLROE; ********************************* ******** RFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS THIRR D DARKLIGHT BTFSC LDET, 0, BSF MVFF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 THIRRJE PWM1ON THIRRJE PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BSF PORTAL BOTT, BOTFR BOTS, BOTFR, BOTFS, BOTFS, BOTFR, BOTR GOTO REP13 GOTO CLROE; ************************************** LFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS THIRR D DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XFF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BSF PORTD, 0 BCF PORTD 1 BSF PORTB 1 BCF PORTB 2 CALL Sdelay MOVLW 0XFF MOVWF SPEED11 MOVLW 0X4C MOVWF SPEED12 MOVLW 0XEF MOVWF SPEED21 MOVLW 0XB3 MOVWF SPEED22 THIRRJE PWM1ON CALL PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP14 CALL STALL1 BTFSC MSTOP, 0 GOTO STOPS GOTO GOTO GOTE ***************************************** BFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS CALL DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XDF MOVWF SPEED MOVWW MOVLWX MOVLWX MOVLWX MOVLWX MOVLWX MOVLWX MOVLWX 0 PWM2ON BSF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTB, 2 CALL SDELAY MOVLW 0XEF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XEF MOVWF SPEED21 MOVLW 0X66 CMWWALL CX2 PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTB, 2 REP15 CALL STALL1 BTFSC MSTOP, 0 GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP15 GOTO CLROE; ********** ***************************** HCLOSE BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS THIRR DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 BTFSC PORTD, 5 GOTO STOPS BTFSC PORTD, 6 GOTO STOPS BSF PORTD, 2 BCF PORTD, 3 REPOFT 6 BTFSC, BTFSC PORT, PTFSC 6, BTFSC GOTO STOPS CALL SDELAY CALL STALL2 BTFSC MSTOP, 2 GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP16 GOTO CLROE; ************************ ****************** HOPEN BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS CALL DARKLIGHT BTFSC 0 GOTO CLROE; *************************************** HUP BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS THIRR D DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 BTFSC PORTC, 4 GOTO POTC, 4 GOTO, 4 GOTO BTFSC PORTC, 4 GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP18 GOTO CLROE; **************************** ************ HDOWN BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS THIRR D DARKLIGHT BTFSC LDET, 0; 7 BTFSC PORTC, 5 GOTO STOPS BSF PORTC, 0 BCF PORTC, 3 REP19 BTFSC PORTC, 5 GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP19 GOTO CLROE; *********** ************************** LON BSF PORTB, 7 BSF LDET, 0 GOTO CLROE; ********** ******************************* LOFF BCF PORTB, 7 BCF LDET, 0 GOTO CLROE; ***** ************************************ LFOLLOW BCF STATUS, RP0 BCF STATUS, RP1 BCF PORTB, 1 BCF PORTB, 2 BCF PORTB, 6 BCF PORTB, 7 THIRRJE PWM1OFF CALL PWM2OFF BCF PORTD, 0 BCF PORTD, 1 BCF PORTD, 2 BCF PORTD, 3 BSF MSTOP, 6 REPLF; BANKSEL OPTION_REG; BSF OPTION_REG, 3; BSF OPTION_REFT, 3; CLRFWDT BCF STATUS, RP0 BCF STATUS, RP1; BANKSEL INTCON; BCF INTCON, T0IE; BCF INTCON, T0IF; BANKSEL PIE1; BCF PIE1, 6; BCF PIE1, 0; BONKSEL BAZ, BAZF PC, PCF, 0 PCF BCF, 1 PCON NOP BSF, 0 BSF PCON, 1 BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP CALL SDELAY CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC, 0 BTFSC SDELAY CALL LFC1 NOP THIRRJE LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, C GOTO LR2G LR1G BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP; CALL BUSTLOVST, MOTOFLOV,, MOTOFLOV 1, MOTOFLOVEL, MOTOFLOVEL, MOTOFLOVEL, MOTOFLOVEL, MOTOFLOVEL, MOTOFLOVEL, MOTOFLOVEL, MOTOFLOVEL, MOTOFLOV, MOTOFLOV, MOTOFLOV, MOTOFLOV, MOTOFLUGJE; 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 THIRRJE PWM1ON THIRRJE PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 LR1GOT, BALL 0; OPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, Z GOTO REPLF THIRRJE LFC1 NOP CALL LFC2 NOP MOTO LOTUR, LOTO, LOTO, LOTO, LOTO, LOTO, LOTO, LOTO, LOTO, LOT, GROF, MOTORY, REPLF LR2G BCF FAZA, RP0 BCF FAZA, RP1 MOVLW 0X00 MOVWF MSTOP; CALL BUTTLEVEL; BTFSC MSTOP, 1; goto STOPS MOVLW 0XFF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BSF PORTB, 2 LR2GREP; CALL STALL1; BTFSC MSTOP, 0; GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA CALL LFC1 NOP CALL LFC2 NOP MOTO LV0, LOT2, MOTO, LOT2, MOTOP, MOTOP REPLF THIRRJE LFC1 NOP THIRRJE LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, C GOTO LR2GREP GOTO REPLF FRONT BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWOF MVF MWF MST, MVFF, MST SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 THIRRJE PWM1ON THIRRJE PWM2ON BCF PORT D, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 CALL SDELAY FROREP; CALL STALL1; BTFSC MSTOP, 0; GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA; CALL LDIN; BTFSC MOTOP, 3 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, Z GOTO FROREP GOTO REPLF GOTO CLROE; ************************* **************** STOPS BTFSS MSTOP, 4 GOTO STOPA MOVLW 0XCF MOVWF SPEED11 MOVLW 0XB3 MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XB3 CWWMW2 1 CALL SDELAY STOPA BCF STATUS, RP0 BCF STATUS, RP1 BCF PORTB, 1 BCF PORTB, 2 BCF PORTB, 6 BTFSS LDET, 0; BCF PORTB, 7 BCF PORTC, 0 BCF PORTC, 3 THIRRJE PWM1OFF CALL PWM2O, CW PFM2 PORTD, 1 BCF PORTD, 2 BCF PORTD, 3 MOVLW 0X00 MOVWF MSTOP; ******************************** ********* CLROE BANKSEL RCSTA BCF RCSTA, CREN BCF RCSTA, FERR BCF RCSTA, OERR BSF RCSTA, CREN BSF INTCON,GIE BSF INTCON, PEIE GOTO PRIT 1; ************************************** *; ***************************************; **** ************************************* STALL1 BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BANKSEL ADCON0 BCF ADCON0, 3 BCF ADCON0, 4 BCF ADCON0, 5 BCF STATUS, RP0 BCF STATUS, RP1 CALL CONVERT MOVF ADRESH, 0 SUBLW 0X70 BTFSS STATUS, C BSF MFT, BCP, STP, STP, STP, STP STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BANKSEL ADCON0 BSF ADCON0, 3 BCF ADCON0, 4 BCF ADCON0, 5 BCF STATUS, RP0 BCF STATUS, RP1 CALL CONVERT MOVF ADFES, 0 SUB, SUBS, 0 SUB STATUS, RP0 BCF STATUS, RP1 RETURNBUTTLEVEL BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BANKSEL ADCON0 BCF ADCON0, 3 BCF ADCON0, 4 BSF ADCON0, 5 BCF SFT, STF, STF, STF, STF 9 STATUSI BTFSS, C GOTO BL1 GOTO BL2 BL1 BSF MSTOP, 1 BSF PORTB, 6 BL2 STATUSI BCF DARKLIGHT DARKLIGHT, RP0 BCF STATUS, RP1 BTFSC LDET, 0 GOTO RETFDL BANKSEL ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BCF ADCON0, 5 BCF STATUS, RP0 BCF STATUS, RP1 CALL CONVERT MOVF ADRESH, 0 SUBLW 0XEE BTFSS STV, BONC BONC, BONG BCF ADCON0, 7 BSF ADCON0, 6 BSF ADCON0, 0 BSF ADCON0, GO WAITADC BTFSC ADCON0, GO GOTO WAITADC BCF STATUS, RP1 BCF STATUS, RP0 RETURNPWM1ON BANKSEL PR2 PR2, MO2, MOVL MOVWF CCP1CON MOVF SPEED12, 0 MOVWF CCPR1L BSF FAZA, RP0 BCF FAZA, RP1 MOVLW 0XF0 MOVWF TRISC BCF FAZA, RP0 BCF FAZA, RP1 BCF T2CON, T2CKPS1 BCF T2CON, T2CKPS0 BSF T2CON, TMR2ON BSF CCP1CON 2 BSF CCP1CON, 3 RETURNPWM2ON BANKSEL PR2 MOVLW 0XFF MOVWF PR2 BCF STATUS, RP0 BCF STATUS, RP1 MOVF SPEED21, 0 MOVWF CCP2CON MOVF SPEED22, 0 MOVWF CCPR2L BSF STATUS, RP0 BCF STATUS, RP1 BCF, T02, M2, T2 T2CON, T2CKPS0 BSF T2CON, TMR2ON BSF CCP2CON, 2 BSF CCP2CON, 3 RITURNPW M1OFF BCF CCP1CON 2 BCF CCP1CON, 3 BSF T2CON, T2CKPS1 BSF T2CON, T2CKPS0 BCF T2CON, TMR2ON MOVLW 0X00 MOVWF CCP1CON MOVLW 0X00 MOVWF CCPR1L BANKSEL PR2 MOVLW 0X00 MOVWF PR2 BCF FAZA, RP1 BCF FAZA, RP0 RETURNPWM2OFF BCF CCP2CON 2 BCF CCP2CON 3 BSF T2CON, T2CKPS1 BSF T2CON, T2CKPS0 BCF T2CON, TMR2ON MOVLW 0X00 MOVWF CCP2CON MOVLW 0X00 MOVWF CCPR2L BANKSEL PR2 MOVLW 0X00 MOVWF PR2 BCF FAZA, RP1 BCF FAZA, RP0 RETURNLFC1 BANKSEL ADCON0 BSF ADCON0, 3 BCF ADCON0, 4 BSF ADCON0, 5 BCF STATUS, RP0 BCF STATUS, RP1 CALL CONVERT MOVF ADRESH, W ANDLW 0XF0 MOVWF LR1 BCF STATUS, RP0 BCF STATUS, RP1 RETURN LFC2 BANKSEL ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BFF, ADCON0, 4, BFF, ADCON0, 4, BFF, ADFON, 0 RP1 THIRRJE CONVERT MOVF ADRESH, 0 ANDLW 0XF0 MOVWF LR2 BCF STATUS, RP0 BCF STATUS, RP1 RETURN LDIN BANKSEL ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BCF ADCON0, 5 BCF STV, STP STUS, RR 0X4C BTFSC STATUS, C GOTO COMP4 BSF MSTOP, 3 COMP4 BCF STATUS, RP0 BCF STATUS, RP1 KTHIMI SOTELAY CLRF L2 XL3 CLRF L1 XL2 CLRF TMR0 XL1 MOVLW 0XFF SUBWF TMR0, W BTFSS STATUS, C GOTO XL1 MOVLW 0X20 INCF L1 SUBWF L1, W BTFSS GOTFO SOT, GOT2, SOTW, GOT, GOT, GOT, GOT, GOT, GOT, SW, SW, SW, S, G, S, G XL3 KTHIM JO JO POPULL

Çmimi i dytë në Konkursin Robot Instructables dhe RoboGames

Recommended: