Mündəricat:
- Addım 1: Layihənin dizaynı
- Addım 2: Cihazları və Komponentləri seçin
- Addım 3: Mikro nəzarətçi
- Addım 4: PC proqramını yazın
- Addım 5: Bədəni qurun
- Addım 6: Simsiz Dövrə qurun
- Addım 7: İnteqrasiya edin
- Addım 8: Mikrokontrolör Proqram Kodu
Video: Qaya: 8 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:49
Bu robot vizual əsas proqramla (serial port vasitəsilə) idarə olunur və bir PIC mikrokontrolörünün (16F877) yaratdığı puls genişliyi modulyasiya edilmiş (PWM) siqnalı ilə üç fərqli sürətlə hərəkət edə bilir. Robot "normal idarəetmə" və "işıq izləyicisi" iki rejimdə işlədilə bilər. Normal idarəetmə rejimində, robot 3 m -dən 18 sm -ə qədər olan əşyaları bir yerdən 150 m məsafədə daşıya bilir. İşıq izləyici rejimində qaranlıq bir otaqda işığı izləyir. İşıq sensoru kimi bir çox sensorlar istifadə edilmişdir; əyilmə sensoru, dayaq cərəyanı algılaması, batareya səviyyəsi algılaması və bəzi məhdudlaşdırma açarları və əllərdə istifadə olunan sensorlar. Bir təpəyə çıxanda (əyilmiş) sürətini sabit saxlaya bilər və qaranlıq qaranlıq olduqda işığı avtomatik olaraq yandırır. Həm də IC -nin təhlükəsizliyini təmin etmək üçün, sıxışdıqda cərəyanı ayırır və bir şey tutanda əl dayanır. 4 DC mühərrikləri 16F877 PIC mikrokontrolörü və 3 motor sürücüsü dövrəsi tərəfindən idarə olunur. Təxminən 4 ay çəkdi və təxminən 600 dollara başa gəlir
Addım 1: Layihənin dizaynı
ilkin mərhələdə layihənin dizaynı təqdim edildi. əsasən, blok diaqramının müəyyən edilməsi; rəqəmə baxın.
Bu mərhələdə daha ətraflı bir dövrə diaqramı tələb olunur, lakin bunu asanlaşdırmaq üçün müəyyən edilən əsas modullar bunlardır: 1. Mikrokontrolör 2. Sensorlar 3. Motorlar 4. Simsiz dövrə 5. PC proqramı. Bir 3D Dizayn da edildi, şəklə baxın.
Addım 2: Cihazları və Komponentləri seçin
Bu mərhələdə dizayner robotun qurulması üçün lazım olan cihazları və komponentləri seçməlidir.
Buraya daxildir: simsiz dövrə (MAX232, LM331, FM ötürücü və Alıcı modulları), mühərriklər (4 DC mühərrikləri), mühərriklərin sürücü dövrəsi (H-körpü), mikro nəzarətçi PIC (16F877), Batareya, Gərginlik tənzimləyiciləri (MC7805), Mikro açarlar, Fotoresistorlar, Tilt sensoru … və s. Bu cihazların hesablanmasını və birlikdə necə işlədiyini anlamaq vacibdir.
Addım 3: Mikro nəzarətçi
Bu addım ən vacib addımdır. əvvəlində PIC -dən alınacaq və ötürüləcək kodlar müəyyən edilməlidir.
Komponentləri PIC -in müvafiq pinlərinə bağlamağa başlayın və mikro nəzarətçini proqramlaşdırın. Bunun üçün tənzimləyiciləri, rezistorları, sensorları və s. İstifadə edərək kiçik sxemlərin qurulması tələb oluna bilər.
Addım 4: PC proqramını yazın
Proqram vizual əsasda yazılmışdır.
Rabitə RS-232 vasitəsilə quruldu. Parametrləri konfiqurasiya etməklə məlumatları mikro nəzarətçiyə göndərmək üçün MSComm -dan istifadə etməklə (port nömrəsi, ötürmə tezliyi, məlumat bitlərinin paritet sayı, dayanma bitləri). Bir bit biti və parite ilə 8 bitlik məlumatlardan 9600 bps sürətlə istifadə etdim.
Addım 5: Bədəni qurun
Bədənin yaxşı dizaynı vacibdir. Təkər tənzimləməsini də seçərkən şəkilə baxın.
o robot, proqramların yaxşı işlədiyini təmin etdikdən sonra quruldu. Bu addım proqramlaşdırmadan əvvəl də edilə bilər.
Addım 6: Simsiz Dövrə qurun
Simsiz dövrənin qurulması müstəqil ola bilər. İlk mərhələdə kompüteri robotla birləşdirmək üçün bir tel istifadə etdim və robotu tamamladıqdan sonra simsiz dövrə birləşdirildi.
Addım 7: İnteqrasiya edin
Komponentlərimizi birləşdirdiyimiz və robotu sınadığımız an budur.
Addım 8: Mikrokontrolör Proqram Kodu
; *************** SON ******************************** siyahısı p = 16f877, radix decidlocs "V" daxildir << 8 | "1"; Version No. config _CP_OFF & _PWRTE_OFF & _WDT_OFF & _XT_OSC; ********** əsas dəyişən ************************* cblock 0x20; başlanğıcı bank 0 ram sahəsi INPUT_VAR L1 L2 X SPEED11 SPEED12 SPEED21 SPEED22 MSTOP LDET LR1 LR2 endc; ********** əsas proqramın başlaması *************** BSF -ə başlayın 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 TXX MOVWF 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 BSF 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 BANFFS P1 PBT P1 CALL PWM1OFF CALL PWM2OFF CALL Darklight BTFSC LDET 0 BSF PORTB, 7RXDATA; BANKSEL RCSTA; BTFSC RCSTA, OERR; keçid vermir 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 DURUM, RP1 MOVF INPUT_VAR, 0; DUR SUBLW 0X53 BTFSC STATUS, Z GOTO STOPPS MOVF INPUT_VAR, 0; SUBLW 0X4E BTFSC STATUS, Z GOTO LON MOVF INPUFVVFVVVFVVVFVVFVSVOFFVOFSVOFT, 1 LIGHT 0; YAVA ALT SUBLW 0X66 BTFSC DURUMUNU ZƏRRƏT, Z GOTO FSLOW MOVF INPUT_VAR, 0; SAĞ YAVAŞ ALT 0X72 BTFSC DURUMU, Z GOTO RSLOW MOVF INPUT_VAR, 0; MOVE LEFT 0 X6C BTFSC STATUS, Z GOTO LSLOW MOVF INPUT_VAR, 0; BACKWARD SLOW SUBLW 0X62 BTFSC STATUS, Z GOTO BSLOW MOVF INPUT_VAR, 0; MEDIUM SUBLFFWFTWFSWW MWFTWFSWW0 STATUS, Z GOTO RMED MOVF INPUT_VAR, 0; SOL MEDIUM SUBLW 0X4C BTFSC STATUS, Z GOTO LMED MOVF INPUT_VAR, 0; BACKWARD MEDIUM SUBLW 0X42 BTFTFTFTFOFFVSTFUS Z GOTO FFAST MOVF INPUT_VAR, 0; SAĞ HIZLI SUBLW 0X57 BTFSC DURUMU, Z GOTO RFAST MOVF INPUT_VAR, 0; SOLU HIZLI SUBLW 0X56 BTFSC DURUMU, Z GOTO FOSTFOFTFFAST MOVF MOVF MOVF BFAST MOVF INPUT_VAR, 0; EL KAPATMA SUBLW 0X43 BTFSC STATUS, Z GOTO HCLOSE MOVF INPUT_VAR, 0; EL AÇIĞI ALT SUBLW 0X4F BTFSC STATUS, Z GOTO HOPEN MOVF INPUPVVVTVVTVVTVVT, 0; EL AŞAĞI SUBLW 0X64 BTFSC STATUS, Z GOTO HDOWN MOVF INPUT_VAR, 0; İŞIQ İZLƏYİN 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; LDET, 0; BSF PORTB, 7 NORMALSLOW MOVLW 0XFF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 CW PFF1 PWB 1 CW PWD, RCIF GOTO RXDATA GOTO REP3 GOTO CLROE; *********************************** ** LSLOW BCF DURUMU, RP0 BCF DURUMU, RP1; ÇAĞIR BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPPS MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 CALL DARKLIGHT BTFSC LDET, 0; BSFFWW MOVFWF MOVFWOV 0XCF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 Zəng PWM1ON ÇAĞIR 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 DURUMU, RP0 BCF DURUMU, RP1; ÇAĞIRMA BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPPS MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 ÇAĞIRAN İŞI BTFSC LDET, 0; 7 BSF PORTB 0XCF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF PBB PBB, 1 PFF PBB, **************************** BSLOW BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ÇAĞIR 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 PW2 PWF PW2 PORTB, 2 REP5 BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP5 GOTO CLROE; ******************************* ********** F. MED BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; BUTTLEVEL ARA; BTFSC MSTOP, 1; GOTO DURDUR DARKLIGHT BTFSC LDET, 0; BSF PORTFF0 MOVFT MOVFT 0 NOVORF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BCF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 CALL SDELAY REP6 CALL STALL1 BTFSC MSTOP, 0 GOTSOBOX CANLI BANCLAR 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 PFF PORT, 1 BCF BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA BTFSS PORTD, 7 GOTO NORMALMED GOTO REP7 GOTO CLROE; ******************************* ************ RMED BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ÇAĞIR BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPLAR DARKLIGHT BTFSC LDET, 0; BSF PORT 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 BCF PORT, 1 BCF BTFSC PIR1, RCIF GOTO RXDATA GOTO REP8 GOTO CLROE; ************************************* **** LMED BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ÇAĞIR BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPLAR DARKLIGHT BTFSC LDET, 0; BSFFWWF MOVFV6, 6 MOVFWOV SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞIRIN PWM1ON ÇAĞRAYIN PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP9; CALL STALL1, BTFTBOSTB, BTFTSTOFT, REP9 GOTO CLROE; ***************************************** BMED BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; BUTTLEVEL ARA; BTFSC MSTOP, 1; GOTO STOPLAR DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XFF MOVWF MOVLW 0X7F MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X7F MOVWF SPEED22 CALL PWM1ON CALL PWM2ON BSF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORT, 1 PTT PTS, 1 CFT PTS REP10 GOTO CLROE; ***************************************** FFAST BCF STATUS, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 BSF MSTOP, 4; ÇAĞIRMA BUTTLEVEL; BTFSC MSTOP, 1; GOTO DURDUR DARKLIGHT BTFSC LDET, 0; BSF PORTFWEF MOVFWV7 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 ROTFOTO 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, 1 PSB, 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 DALLLIGHT BTFSC LDET, 0; BFF POV, 7 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 PBT PBT PBT PTS, 1 PFT PTS GOTO REP13 GOTO CLROE; ***************************************** LFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; BUTTLEVEL ÇAĞIR; BTFSC MSTOP, 1; GOTO STOPLAR 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 CW PWM1ON CW PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP14 CALL STALL1 BTFSC MSTOP, 0 GOBO CANLI CANAT **************************************** BFAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ÇAĞIR BUTTLEVEL; BTFSC MSTOP, 1; GOTO DURDUR DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 MOVLW 0XDF MOVWF SPEWEF MOVWW0 MOVL0 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 PX2 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; ************* ******************************** BCF DURUMUNU, RP0 BCF DURUMUNU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; ÇAĞIR BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS DARKLIGHT BTFSC LDET ÇAĞIRIR, 0; BSF PORTB, 7 BTFSC PORTD, 5 GOTO STOPS BTFSC PORTD, 6 GOTO STOPS BSF PORTD, 2 BCF PORTD, 3 REP16 BTFOT PORT, 5 STP 5 PTS 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; CUT BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPS 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 RESPORT GROUP POT1 GOTO CLROE; ***************************************** HUP BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0; BUTTLEVEL ARA; BTFSC MSTOP, 1; GOTO STOPLAR DARKLIGHT BTFSC LDET, 0; BSF PORTB, 7 BTFSC PORTC, 4 GOTO PORTS 4 POTS 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; CUT BUTTLEVEL; BTFSC MSTOP, 1; GOTO STOPLAR DARKLIGHT BTFSC LDET, 0, BSF PORTB 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 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_, 3; CLRFWDT BCF DURUMU, RP0 BCF DURUMU, 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 CALL SDELAY CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC CTR 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; CANLI DÖVMƏLİ, METFENİ ÖRT 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞIRIN PWM1ON ÇAĞIRIN PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 LR1 GREŞ; 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 LR1, 0 REPLF LR2G BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP, CALL BUTTLEVEL; BTFSC MSTOP, 1; keçid vermir 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; ÇAĞRI STALL1; BTFSC MSTOP, 0; GOTO STOPS BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA CALL LFC1 NOP CALL LFC2 NOP MOV MOVF LRF, REPLF CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, C GOTO LR2GREP GOTO REPLF FRONT BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF, SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 Zəng PWM1ON Zəng PWM2ON BCF Limanı 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; CALL LDIN, BTFSC GLOST; NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, Z GOTO FROREP GOTO REPLF GOTO CLROE; ************************* **************** BTFSS MSTOP, 4 GOTO STOPA MOVLW 0XCF MOVWF SPEED11 MOVLW 0XB3 MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XB3 MOVWF SPEDON CALL PWM1 CALL PWM1 1 ÇAĞRI SDELAY STOPA BCF DURUMU, RP0 BCF DURUMU, RP1 BCF PORTB, 1 BCF PORTB, 2 BCF PORTB, 6 BTFSS LDET, 0; BCF PORTB, 7 BCF PORTC, 0 BCF PORTC, 3 ÇAĞRILAN PWM1OFF CÖF PWM2OFF 0 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 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 BSCF STSTUS, C BSF STF 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 SFF ADF, 0 ADFON 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 ADFF STF, 0 BCF STF BTFSS STATUS, C GOTO BL1 GOTO BL2 BL1 BSF MSTOP, 1 BSF PORTB, 6 BL2 RETURN 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 STATB, CVB, CV, CV, CV, BSF 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 MFFPF2 ROV01 MOVWF CCP1CON MOVF SPEED12 0 MOVWF CCPR1L BSF STATUS, RP0 BCF STATUS, RP1 MOVLW 0XF0 MOVWF TRISC BCF STATUS, RP0 BCF STATUS, RP1 BCF T2CON, T2CKPS1 BCF T2CON, T2CKPS0 BSF T2CON, TMR2ON BSF CCP1CON, 2 BSF CCP1CON, 3 RETURNPWM2ON BANKSEL PR2 MOVLW 0XFF MOVWF PR2 BCF DURUMU, RP0 BCF DURUMU, RP1 MOVF HIZI21, 0 MOVWF CCP2CON MOVF SPEED22, 0 MOVWF CCPR2L BSF STATUS, RP0 BCF DURUMU, RP1 MOVFF TCF2 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 STATUS, RP1 BCF STATUS, 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 STATUS, RP1 BCF STATUS, RP0 RETURNLFC1 BANKSEL ADCON0 BSF ADCON0 3 BCF ADCON0, 4 BSF ADCON0, 5 BCF DURUMU, RP0 BCF DURUMU, RP1 ÇAĞIR MOVF ADRESH, W ANDLW 0XF0 MOVWF LR1 BCF STATUS, RP0 BCF STATUS, RP1 RETURN LFC2 BANKSEL ADCON0 BCF ADCON0, 3 BSF ADC0 ADCON0 RP1 ÇAĞIRMA 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 ADSFTFTFTFT STV, 0X4C BTFSC STATUS, C GOTO COMP4 BSF MSTOP, 3 COMP4 BCF STATUS, RP0 BCF STATUS, 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 BTFSF STATS CAT2, CV GOT2, CV GOTO XL3 QAYIT YOX
Təlimatlar və RoboGames Robot Yarışmasında İkinci Mükafat
Tövsiyə:
Bu Yüksək Gərginlikli Tıklama Clack Oyuncağı Qaya!: 11 Addım (Şəkillərlə)
Bu Yüksək Gərginlikli Tıklama Clack Oyuncaq Qayaları !: Burada 70-ci illərdə liseylərdə məşhur olan retro Click-Clack oyuncağının iki elektrostatik versiyası. Versiya 1.0 super büdcəli modeldir. Parçalar (enerji təchizatı istisna olmaqla) demək olar ki, heç bir şeyə bərabər deyil. Ən bahalılarının təsviri
I2C ilə 7x4 LCD Ekranı istifadə edən Əl Arduino Kağız Qaya Qayçı Oyunu: 7 addım
I2C ilə 20x4 LCD Ekrandan istifadə edən Əl Arduino Kağız Qaya Qayçı Oyunu: Hər kəsə salam və ya bəlkə də "Salam Dünya!" Deməliyəm ki, Arduinonun bir çox şeylərinə girişim olan bir layihəni sizinlə bölüşmək çox xoş olardı. Bu, I2C 20x4 LCD displeydən istifadə edən əl Arduino Paper Rock Scissors oyunudur. Mən
Qaya Kağız Qayçı AI: 11 addım
Rock Paper Scissor AI: Heç özünüzü cansıxıcı hiss edirsiniz? Zəka ilə işləyən interaktiv bir sistemə qarşı qaya, kağız və qayçı oynayaq
Qaya kağızı qayçı: 10 addım
Qaya Kağız Qayçı: Məqsəd: Bunu tamamladıqdan sonra Code.org istifadə edərək sadə bir Rock, Kağız Qayçı oyununun sıfırdan necə hazırlanacağını öyrənəcəksiniz. Lazım olan materiallar / tələblər: Javascript sintaksisi, kompüter, Code.org hesabı haqqında əsas anlayış
Qaya nümunəsi analizatoru: 4 addım
Qaya Nümunə Analizatoru: Qaya Nümunəsi Analizatoru, yumşaq çəkic titrəmə texnikasından istifadə edərək süxur nümunələrinin növlərini müəyyən etmək və təhlil etmək üçün istifadə olunur. Qaya nümunələrinin müəyyənləşdirilməsində yeni bir üsuldur. Bir meteorit və ya bilinməyən bir qaya nümunəsi varsa, təxmin edə bilərsiniz