Мазмуну:

Рок: 8 кадам
Рок: 8 кадам

Video: Рок: 8 кадам

Video: Рок: 8 кадам
Video: Kādēļ Jāzin Kādam Kas 2024, Июль
Anonim
Таш
Таш

Бул робот визуалдык негизги программа (сериялык порт аркылуу) тарабынан башкарылат жана PIC микроконтроллери (16F877) тарабынан чыгарылган импульстун туурасы модуляцияланган (PWM) сигналы менен үч башка ылдамдыкта кыймылдай алат. Робот эки режимде иштей алат: "кадимки башкаруу" жана "жарык трекер" режимдери. Кадимки башкаруу режиминде робот 3-18 см өлчөмүндөгү нерселерди бир жерден 150 м аралыкка чейин көтөрө алат. ал эми жарык трекер режиминде караңгы бөлмөдө жарыкты ээрчийт, көптөгөн сенсорлор колдонулат, мисалы жарык сенсорлору; жантаюу сенсору, токтоочу жайдын сезгичтиги, батарейканын деңгээлинин сезгичтиги, жана кээ бир чектөө өчүргүчтөрү жана колго тийген сенсорлор. Ал дөбөгө чыкканда ылдамдыгын туруктуу кармап тура алат (эңкейип) жана караңгы караңгы болгондо жарыкты автоматтык түрдө күйгүзөт. Ошондой эле IC коопсуздугун камсыз кылуу үчүн, ал тыгылып калганда токту ажыратат жана бир нерсени кармаганда кол токтойт.4 DC моторлору PIC микроконтроллери 16F877 жана 3 мотор драйверинин схемалары тарабынан башкарылган. Бул болжол менен 4 айга созулган жана болжол менен 600 доллар турат

1 -кадам: Долбоорду иштеп чыгуу

Долбоорду иштеп чыгуу
Долбоорду иштеп чыгуу
Долбоорду иштеп чыгуу
Долбоорду иштеп чыгуу

баштапкы этапта долбоордун дизайны берилген. негизинен, блок -схеманы аныктоо; фигураны карагыла.

Бул этапта бир кыйла деталдуу схема талап кылынат, бирок муну жеңилдетүү үчүн аныкталган негизги модулдар: 1. Микроконтроллер 2. Сенсор 3. Мотор 4. Зымсыз схема 5. ЖК программасы. 3D дизайны да жасалды, сүрөттү караңыз.

2 -кадам: Түзмөктөрдү жана компоненттерди тандаңыз

Бул этапта дизайнер роботту куруу үчүн керектүү түзүлүштөрдү жана тетиктерди тандашы керек.

Бул төмөнкүлөрдү камтыйт: зымсыз схема (MAX232, LM331, FM өткөргүч жана кабыл алуучу модулдар), моторлор (4 DC кыймылдаткычтары), мотор драйверлери схемасы (H-көпүрө), микроконтроллер PIC (16F877), Батарея, Чыңалуу жөнгө салуучулары (MC7805), Микросвиттер, Фоторезисторлор, Тент сенсору … ж.б.у.с. Бул аппараттардын эсептөө жөндөмдүүлүгүн жана алардын кантип чогуу иштээрин түшүнүү маанилүү.

3 -кадам: Микроконтроллер

Микроконтроллер
Микроконтроллер

Бул кадам эң маанилүү кадам. башында, PICтен алынуучу жана берилүүчү коддор аныкталышы керек.

ПИКтин тиешелүү казыктарына компоненттерди туташтырууну баштаңыз жана микроконтроллерди программалаңыз. Бул жөндөгүчтөрдү, резисторлорду, сенсорлорду колдонуу менен кичинекей микросхемаларды курууну талап кылышы мүмкүн.

4 -кадам: PC программасын жазыңыз

PC программасын жазыңыз
PC программасын жазыңыз
PC программасын жазыңыз
PC программасын жазыңыз

Программа визуалдык базада жазылган.

Байланыш RS-232 аркылуу орнотулган. Орнотууларды конфигурациялоо аркылуу маалыматтарды микроконтроллерге жөнөтүү үчүн MSCommду колдонуу (порттун номери, байдын ылдамдыгы, маалыматтын биттеринин паритеттик саны, токтоочу биттер). Мен 8 бит маалыматы менен бирдиктүү битке жана паритетке 9600 bps ылдамдыкта баа бердим.

5 -кадам: Денени куруу

Денени куруу
Денени куруу
Денени куруу
Денени куруу

Дененин жакшы дизайны маанилүү. Ошондой эле дөңгөлөктүн жайгашуусун тандап, сүрөттү караңыз.

ал робот программалар жакшы иштеп жатканын камсыздандыргандан кийин курулган. Бул кадам программалоодон мурун да жасалышы мүмкүн.

6 -кадам: Зымсыз схеманы куруңуз

Зымсыз схеманы куруңуз
Зымсыз схеманы куруңуз

Зымсыз схеманы куруу көз карандысыз болушу мүмкүн. Баштапкы этапта мен роботту ЖК менен туташтыруу үчүн зымды колдондум жана роботту бүтүргөндөн кийин зымсыз схема интеграцияланды.

7 -кадам: Интеграция

Интеграциялоо
Интеграциялоо

Бул биз компоненттерибизди бириктирип, роботту сыноодон өткөргөн учур.

8 -кадам: Микроконтроллер программасынын коду

; *************** ФИНАЛ ******************************** тизмеси p = 16f877 "V" радикалдык децидлокторун камтыйт << 8 | "1"; Version No.config _CP_OFF & _PWRTE_OFF & _WDT_OFF & _XT_OSC; ********** негизги өзгөрмө ************************* cblock 0x20; башталышы банк 0 кочкордун аймагы INPUT_VAR L1 L2 X SPEED11 SPEED12 SPEED21 SPEED22 MSTOP LDET LR1 LR2 endc; ********** негизги программанын башталышы *************** BSFти баштоо STATUS, RP0 BCF STATUS, RP1 MOVLW 0X40 MOVWF ADCON1 MOVLW 0XFF; PORT A IS I MOVWF TRISA MOVLW 0X00; PORT B IS O MOVWF TRISB MOVLW 0XF0; PORT C IS I/O MOVWW MOVWF MXX MOVLF TRISD MOVLW 0X07; PORT E IS MOVWF TRISE BANKSEL OPTION_REG BCF OPTION_REG, T0CS BCF STATUS, RP1 BCF STATUS, RP0; *************************** ******************; ******************************* ************ 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 BANKSF RCSTA BSK RCSTA, OERR GOTO CLROE BANKSEL PIE1 BSF PIE1, RCIE BANKSEL RCSTA BCF RCSTA, RX9 BSF RCSTA, CRENWAIT1 BANKSEL PORTB BSF PORTB, 3 BSF PORTB, 4 BTFFS PIRS PELS PIR1 ЧАКЫРУУ PWM1OFF ЧАКЫРУУ PWM2OFF ЧАКЫРУУ DARKLIGHT BTFSC LDET, 0 ОБ PORTB, 7RXDATA; BANKSEL RCSTA; BTFSC RCSTA, OERR; Гото STOPS ЧАКЫРУУ PWM1OFF ЧАКЫРУУ PWM2OFF ЧАКЫРУУ DARKLIGHT BTFSC LDET, 0 ОБ PORTB, 7 BANKSEL PIR1 BCF PIR1, КР УКАК BANKSEL RCREG MOVF RCREG, 0; *******************************************; **** ************************************* MOVWF INPUT_VAR MOVLW 0X00 MOVWF RCREG BCF STATUS, RP0 BCF STATUS, RP1 MOVF INPUT_VAR, 0; STUB SUBLW 0X53 BTFSC STATUS, Z GOTO STOPPS MOVF INPUT_VAR, 0; SUBLW 0X4E BTFSC STATUS, Z GOTO LON MOVF INPUFVVVVFVVVVSVOF0, LVT0, 0; SOW SUBLW 0X66 BTFSC АБАЛЫНА АЛГА КӨЧҮҢҮЗ, Z GOTO FSLOW MOVF INPUT_VAR, 0; Оңго жай SUBLW 0X72 BTFSC STATUS, Z GOTO RSLOW MOVF INPUT_VAR, 0; MOVE LEFT. X6C BTFSC STATUS, Z GOTO LSLOW MOVF INPUT_VAR, 0; BACKWARD SLOW SUBLW 0X62 BTFSC STATUS, Z GOTO BSLOW MOVF INPUT_VAR, 0; MOWE FORWARD MEDIUM SUBLFT MUBFSWTWSWTWSWW0 STATUS, Z GOTO RMED MOVF INPUT_VAR, 0; MOVE LEFT ORDIUM SUBLW 0X4C BTFSC STATUS, Z GOTO LMED MOVF INPUT_VAR, 0; MOVE BACKWARD MEDIUM SUBLW 0X42 BTFTFOFTFOFFOV Z GOTO FFAST MOVF INPUT_VAR, 0; Туура ТЕЗ SUBLW 0X57 BTFSC АБАЛЫ, Z GOTO RFAST MOVF INPUT_VAR, 0; СОЛГО ТЕЗ SUBLW 0X56 BTFSC СТАТУСУ, Z GOTO FOSTFOFFOVTO MOVFOVTO MOVF BFAST MOVF INPUT_VAR, 0; HAND CLOSE SUBLW 0X43 BTFSC STATUS, Z GOTO HCLOSE MOVF INPUT_VAR, 0; HAND OPEN SUBLW 0X4F BTFSC STATUS, Z GOTO HOPEN MOVF INPUVPVVTVVTVVTVVTVVT, 0; HAND DOWN SUBLW 0X64 BTFSC STATUS, Z GOTO HDOWN MOVF INPUT_VAR, 0; LIGHT 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 BUTTLEVELT BELFELS BELFTTO LDET, 0; BSF PORTB, 7 NORMALSLOW MOVLW 0XFF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 CALL PWF1 PWD PWD PRL PWD, RCIF GOTO RXDATA GOTO REP3 GOTO CLROE; *********************************** ** LSLOW BCF STATUS, RP0 BCF STATUS, RP1; Call BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPPS MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 CALL DARKLIGHT BTFSC LDET, 0; BSF PWFWW MOVFWOV MOVFOV 0XCF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 ЧАЛУУ PWM1ON ЧАЛУУ PWM2ON BSF ПОРТД, 0 BCF ПОРТ, 1 BSF ПОРТБ, 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 STOPPS MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 CALL DARKLIGHT BTFSC LDET, 0; 7 BSF PORTB 0XCF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ЧАКЫРУУ PWM1ON CALL PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF PBB PBBB 1 PBF PBB **************************** BSLOW 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 0XCF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XCF PWF PWF PWF PWF PW2 PWW 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 STOPPS DARKLIGHT BTFSC LDET, 0; BSF PORTFFOFF0 MOVFT 0 NOVMWF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ЧАЛУУ PWM1ON ЧАКЫРУУ PWM2ON BCF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 CALL SDELAY REP6 CALL STALL1 BTFSC MSTOP, 0 GOTS BOTS POTS PANS 1 GOTO REP6 PLUSEMED MOVLW 0XCF MOVWF SPEED11 MOVLW 0XCC MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XCC MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORT, 1 BCF PORT, 1 BCF PORT 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 STOPPS DALLLIGHT BTFSC LDET, 0; B, 7 MOVLW 0XFF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORTD, 0 BSF PORT PORT, 1 BCS PTS 1 PBC BTFSC PIR1, RCIF GOTO RXDATA GOTO REP8 GOTO CLROE; ************************************* **** LMED BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ЧАЛУУ BUTTLEVEL; BTFSC MSTOP, 1; SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ЧАЛУУ PWM1ON ЧАКЫРУУ PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP9; CALL STALL1; BTFTBOSTPTTO PTO REP9 GOTO CLROE; ***************************************** BMED BCF STATUS, RP0 BCF АБАЛЫ, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ЧАКЫРУУ BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPES DALLLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XFF MOVWF MOVLW 0X7F MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X7F MOVWF SPEED22 ЧАЛУУ PWM1ON ЧАКЫРУУ PWM2ON BSF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTFOTO PTS PTS PTS 1 PTS REP10 GOTO CLROE; ***************************************** FFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 BSF MSTOP, 4; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPPS DARKLIGHT BTFSC LDET; MOVWF SPEED21 MOVLW 0X7F MOVWF SPEED22 ЧАКЫРУУ PWM1ON ЧАКЫРУУ PWM2ON BCF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 ЧАКЫРУУ SDELAY NORMALFAST MOVLW 0XCF MOVWF SPEED11 MOVLW 0XCC MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XCC MOVWF SPEED22 ЧАКЫРУУ PWM1ON ЧАКЫРУУ 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 RXFOTO PXDATS NOP AST MOVLW 0XCF MOVWF SPEED11 MOVLW 0XFF MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XFF MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORTD, 0 BCF PORT PORT, 1 BSB PTS 1 PSF, 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 CALL DARKLIGHT BTFSC LDET, 0; BFF PORTB, 7 SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 ЧАКЫРУУ PWM1ON PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BSF PTF PTB PTB PTB 1 PFT PTS GOTO REP13 GOTO CLROE; ***************************************** LFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CALL BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPPS CALL DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XFF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ЧАКЫРУУ PWM1ON ЧАКЫРУУ PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 ЧАКЫРУУ SDELAY MOVLW 0XFF MOVWF SPEED11 MOVLW 0X4C MOVWF SPEED12 MOVLW 0XEF MOVWF SPEED21 MOVLW 0XB3 MOVWF SPEED22 ЧАЛУУ PWM1ON ЧАКЫРУУ PWM2ON BSF Порт, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP14 CALL STALL1 BTFSC MSTOP, 0 Goto Gotto PTBOP1 **************************************** BFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ЧАКЫРУУ BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPPS CALL DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XDF MOVWF SPEWW MOVWEF MOVLOVE MOVLW21 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 MOVLWW PWWW PX06 PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTB, 2 REP15 CALL STALL1 BTFSC MSTOP, 0 GOTO STOPPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP15 GOTO CLROE; ************* ****************************** HFLOSE BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; CUT BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS CALL DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 BTFSC PORTD, 5 GOTO STOPS BTFSC PORTD, 6 GOTO STOPS BSF PORTD, 2 BCF PORTD, 3 REP16 BTFOT PORTD, 3 REP16 BTFOT PORTD 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 STOPPS CALL DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 BTFSC PORTD, 4 GOTO STOPS BCF PORTD, 2 BSF PORTD, 3 REP17 BTFSC PORTD, 4 GOTO STOPS CALL SDELAY CALL STALL2 BTFSC MSTOP, 2 GOTO STOPS BANKSEL PIR1 ROTO ROTO GOTO CLROE; *************************************** HUP BCF STATUS, RP0 BCF АБАЛЫ, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ЧАКЫРУУ BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPPS DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 BTFSC PORTC, 4 BOTF PORTS, 4 GOTO PORT 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 STOPES DALLLIGHT 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 Портб, 2 BCF Портб, 6 BCF PORTB, 7 CALL 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; BGF 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; BANKSEL INTCONCONS, 0 BCF PCON, 1 NOP BSF PCON, 0 BSF PCON, 1 BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP CEL SDELAY CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STRUS SDELAY CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, C GOTO LR2G LR1G BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP; CUT BUTFLOVE BUTFLOVE 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ЧАЛУУ PWM1ON ЧАЛУУ PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 LR1GREP; CTALL; 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 CALL LFC1 NOP CALL LFC2 NOP MOV GLOFT LR2, 0 REPLF LR2G BCF АБАЛЫ RP0 BCF АБАЛЫ RP1 MOVLW 0X00 MOVWF MSTOP; ЧАКЫРУУ BUTTLEVEL; BTFSC MSTOP, 1; Гото STOPS MOVLW 0XFF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 ЧАКЫРУУ PWM1ON ЧАКЫРУУ PWM2ON BCF PORTD, 0 ОБ PORTD, 1 BCF PORTB, 1 BSF PORTB, 2 LR2GREP; CALL STALL1; BTFSC MSTOP, 0; GOTO STOPPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA CALL LFC1 NOP CALL LFC2 NOP MOV MOVF LR2, MOVF LR2 ЧАКЫРУУ ЧАКЫРУУ LFC1 ЖОК ЧАКЫРУУ LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC АБАЛЫ, C GOTO LR2GREP GOTO REPLF ФРОНТ BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 MOVLW 0X00 MOVWF MSTOST MOVF; SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ЧАЛУУ PWM1ON ЧАЛУУ PWM2ON BCF ПОРТУ D, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 CALL SDELAY FROREP; CALL STALL1; BTFSC MSTOP, 0; GOTO STOPPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA; NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, Z GOTO FROREP GOTO REPLF GOTO CLROE; ************************* **************** STOPPS BTFSS MSTOP, 4 GOTO STOPA MOVLW 0XCF MOVWF SPEED11 MOVLW 0XB3 MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XBF MOVWF SPEED2 CALL PWMPCOF PWM2 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 CALL PWM1OFF CALL PWM2OFF PWM2OFF 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 WAIT1; **************************************** *; *****************************************; **** ************************************* STALL1 BCF АБАЛЫ, RP0 BCF АБАЛЫ, 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 BSCF STSTAT, C BSCF MSTOP АБАЛ, RP0 BCF АБАЛЫ, RP1 MOVLW 0X00 MOVWF MSTOP БАНКСЕЛ ADCON0 BSF ADCON0, 3 BCF ADCON0, 4 BCF ADCON0, 5 BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 ЧАКЫРУУ КОНВЕРТИ MOVF АВТОФТ0 0 АБАЛЫ, RP0 BCF АБАЛЫ, RP1 КАЙРА АРТЫРУУ BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 MOVLW 0X00 MOVWF MSTOP БАНКСЕЛИ ADCON0 BCF ADCON0, 3 BCF ADCON0, 4 BSF ADCON0, 5 ADFTFTFTFF STF BTFSS STATUS, C GOTO BL1 GOTO BL2 BL1 BSF MSTOP, 1 BSF PORTB, 6 BL2 RATURN DARKLIGHT BCF STATUS, RP0 BCF STATUS, RP1 BTFSC LDET, 0 GOTO RETFDL BANKSEL ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BCF ADCON0, 4 BCF ADCON0, 5 BCF STATUS, RP0 BCF STATUS, RP1 CALL CONVERT MOVF ADRESH, 0 SUBLW 0XEE BTFSS STATBOFT BELGE CV BELL 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 PRF MFPF2 MOVF02 MOVWF CCP1CON MOVF SPEED12, 0 MOVWF CCPR1L BSF АБАЛЫ RP0 BCF АБАЛЫ RP1 MOVLW 0XF0 MOVWF TRISC BCF АБАЛЫ RP0 BCF АБАЛЫ RP1 BCF T2CON, T2CKPS1 BCF T2CON, T2CKPS0 BSF T2CON, TMR2ON BSF CCP1CON, 2 BSF CCP1CON, 3 RETURNPWM2ON BANKSEL PR2 MOVLW 0XFF MOVWF PR2 BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 MOVF ТЕЗДИГИ21, 0 MOVWF CCP2CON MOVF SPEED22, 0 MOVWF CCPR2L BSF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 MOVLFT TWF1 RUB0 T2CON, T2CKPS0 BSF T2CON, TMR2ON BSF CCP2CON, 2 BSF CCP2CON, 3 RETURNPW 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 АБАЛЫ RP1 BCF АБАЛЫ 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 АБАЛЫ RP1 BCF АБАЛЫ RP0 RETURNLFC1 BANKSEL ADCON0 BSF ADCON0, 3 BCF ADCON0, 4 BSF ADCON0, 5 BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 ЧАКЫРУУ MOVF ADRESH, W ANDLW 0XF0 MOVWF LR1 BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 КАЙТУУ LFC2 БАНКСЕЛ ADCON0 BCF ADCON0, 3 BSF ADC0 ADCON0 RP1 ЧАКЫРУУ MOVF ADRESH, 0 ANDLW 0XF0 MOVWF LR2 BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 КАЙРА ЛДИН БАНКСЕЛ ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BCF ADCON0, 5 ADFTFTFTFTFTFTFTFTFTFTFTFTFTFTFTFTFTFTFTFTFPTFPTFPTFPTFPTFPCATF, 0X4C BTFSC АБАЛЫ, C GOTO COMP4 BSF MSTOP, 3 COMP4 BCF АБАЛЫ, RP0 BCF АБАЛЫ, RP1 КАЙРА SDELAY 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 STATS GOST2, CV GVT 2 XL3 ROPURN NOP NOPEND

Instructables жана RoboGames роботтор конкурсунун экинчи сыйлыгы

Сунушталууда: