İçindekiler:

Kaya: 8 Adım
Kaya: 8 Adım

Video: Kaya: 8 Adım

Video: Kaya: 8 Adım
Video: Adım Adım Anadolu - Ömer Kaya Bölüm 8 Part 1 2024, Temmuz
Anonim
Kaya
Kaya

Bu robot görsel bir temel program tarafından (seri port aracılığıyla) kontrol edilir ve bir PIC mikro denetleyicisi (16F877) tarafından üretilen darbe genişlik modülasyonlu (PWM) sinyal ile üç farklı hızda hareket edebilir. Robot, "normal kontrol" ve "ışık izleyici" modları olmak üzere iki modda çalıştırılabilir. Normal kontrol modunda robot, 150 m içinde 3 - 18 cm boyutlarındaki nesneleri bir yerden bir yere taşıyabilir. ışık takip modunda ise karanlık bir odadaki ışığı takip eder. Işık sensörleri gibi birçok sensör kullanılmış; eğim sensörü, durma akımı algılama, pil seviyesi algılama ve elde kullanılan bazı limit anahtarları ve dokunma sensörleri. Yokuş çıkarken (eğik) hızını sabit tutabilir ve hava karardığında ışığı otomatik olarak yakar. Ayrıca IC'yi güvende tutmak için, takıldığında akımı keser ve bir şeyi tutarken el durur. PIC mikrodenetleyici 16F877 tarafından kontrol edilen 4 DC motor ve 3 motor sürücü devresi kullanılmıştır. Yaklaşık 4 ay sürmüştür ve maliyeti yaklaşık 600$'dır.

Adım 1: Projeyi Tasarlayın

Projeyi Tasarla
Projeyi Tasarla
Projeyi Tasarla
Projeyi Tasarla

ilk aşamada projenin tasarımı sağlandı. temel olarak blok diyagramın tanımlanması; şekle bakın.

Bu aşamada daha ayrıntılı bir Devre Şeması gereklidir, ancak bunu kolaylaştırmak için tanımlanan ana modüller şunlardır: 1. Mikrodenetleyici 2. Sensörler 3. Motorlar 4. Kablosuz devre 5. PC programı. Bir 3d Tasarım da yapıldı, şekle bakın.

2. Adım: Cihazları ve Bileşenleri Seçin

Bu aşamada tasarımcı, robotu oluşturmak için gerekli cihazları ve bileşenleri seçmelidir.

Bu şunları içerir: kablosuz devre (MAX232, LM331, FM verici ve Alıcı modülleri), motorlar (4 DC motor), motor sürücüleri devresi (H-köprü), mikro denetleyici PIC (16F877), Pil, Voltaj regülatörleri (MC7805), Mikro anahtarlar, Fotodirençler, Eğim sensörü… vb. Bu cihazların hesaplanabilirliğini ve birlikte nasıl çalıştıklarını anlamak önemlidir.

Adım 3: Mikrodenetleyici

Mikrodenetleyici
Mikrodenetleyici

Bu adım en önemli adımdır. başlangıçta, PIC'den alınacak ve iletilecek kodlar tanımlanmalıdır.

Bileşenleri PIC'nin uygun pinlerine bağlamaya başlayın ve mikrodenetleyiciyi programlayın. Bu, regülatörleri, dirençleri, sensörleri vb. kullanarak küçük devreler kurmayı gerektirebilir.

Adım 4: PC Programını Yazın

Bilgisayar Programını Yazın
Bilgisayar Programını Yazın
Bilgisayar Programını Yazın
Bilgisayar Programını Yazın

Program görsel temel üzerine yazılmıştır.

İletişim RS-232 üzerinden sağlandı. Ayarları (port numarası, baud hızı, veri bitlerinin eşlik sayısı, durdurma bitleri) yapılandırarak verileri mikro denetleyiciye göndermek için MSComm'u kullanma. 9600 bps baud hızında bir durak biti ve eşlikli 8 bit veri kullandım.

Adım 5: Gövdeyi İnşa Edin

Vücudu İnşa Et
Vücudu İnşa Et
Vücudu İnşa Et
Vücudu İnşa Et

Vücudun iyi bir tasarımı önemlidir. Ayrıca tekerlek düzenini seçerek şekle bakın.

robot, programların iyi çalıştığından emin olduktan sonra yapıldı. Bu adım programlamadan önce de yapılabilir.

Adım 6: Kablosuz Devreyi Oluşturun

Kablosuz Devreyi Oluşturun
Kablosuz Devreyi Oluşturun

Kablosuz devreyi kurmak bağımsız olabilir. İlk aşamada bilgisayarı robota bağlamak için bir tel kullandım ve robotu sonlandırdıktan sonra kablosuz devre entegre edildi.

7. Adım: Entegrasyon

Birleştirmek
Birleştirmek

Bu, bileşenlerimizi entegre ettiğimiz ve robotu test ettiğimiz andır.

Adım 8: Mikrodenetleyici Program Kodu

;***************Son liste p=16f877 sayı tabanı decidlocs içerir "V"<<8 | "1"; Sürüm No.config _CP_OFF&_PWRTE_OFF&_WDT_OFF&_XT_OSC;********** ana değişken *************************** cblock 0x20;başlangıç sıra 0 ram alanı INPUT_VAR L1 L2 X SPEED11 SPEED12 SPEED21 SPEED22 MSDUR LDET LR1 LR2 endc;********** ana programın başlangıcı *************** BSF'yi başlat DURUM, 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 MOVWF TRISC MOVW/MOVLW; 0 TRISD MOVLW 0X07;PORT E IS I MOVWF TRISE BANKSEL OPTION_REG BCF OPTION_REG, T0CS BCF DURUMU, RP1 BCF DURUMU, RP0;************************* ********************;*********************************** *************** BCF PORTB BEKLE, 1 BCF PORTB, 2 BCF PORTB, 6 ÇAĞRI PWM1OFF ÇAĞRI 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 RCSTA, SPEN BTFSC 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 BANKSEL PIR1 BTFSS PIR1, RCIF GOTO WAIT1 BCF MSTOP, BCF MSPORT, 4 PWM1OFF ÇAĞRISI PWM2OFF ÇAĞRISI DARKLIGHT BTFSC LDET, 0 BSF PORTB, 7RXDATA;BANKSEL RCSTA;BTFSC RCSTA, OERR;GOTO DURDUR PWM1OFF ÇAĞRISI PWM2OFF ÇAĞRISI DARKLIGHT BTFSC LDETIR, 7 BSFCR PVCR, PRVCR PVCR, 0;**************************************************;*** ***************************************** MOVWF INPUT_VAR MOVLW 0X00 MOVWF RCREG BCF DURUMU, RP0 BCF DURUM, RP1 MOVF INPUT_VAR, 0;STOP SUBLW 0X53 BTFSC STATUS, Z GOTO STOPS MOVF INPUT_VAR, 0;IŞIK AÇIK SUBLW 0X4E BTFSC STATUS, Z LON MOVF GİRİŞİ_VAR'A GİDİN, ZFVF 0X53 KAPALI, BNPVX51, BSC DEVREYE GİT 0;İLERİ YAVAŞ SUBLW 0X66 BTFSC STATUS, Z GOTO FSLOW MOVF INPUT_VAR, 0;SAĞA YAVAŞ YAVAŞ SUBLW 0X72 BTFSC STATUS, Z RSLOW MOVF INPUT_VAR, 0;SOL YAVAŞ SUBLW 0 X6C BTFSC STATUS, Z GOTO LSLOW MOVF INPUT_VAR, 0;GERİ YAVAŞ YAVAŞ SUBLW 0X62 BTFSC STATUS, Z GOTO BSLOW MOVF INPUT_VAR, 0;İLERİ TAŞI ORTA SUBLW 0X46 BTFSC STATUS, Z GOTO FUT, BTFSC STATUS, Z GOTO FUT_ 0; STATUS, Z GOTO RMED MOVF INPUT_VAR, 0;SOL TAŞI ORTA SUBLW 0X4C BTFSC STATUS, Z GOTO LMED MOVF INPUT_VAR, 0;GERİ TAŞI ORTA SUBLW 0X42 BTFSC STATUS, Z GOTONP BMED MOVBL IUT55; Z FFAST MOVF INPUT_VAR, 0;SAĞA HIZLI SUBLW 0X57 BTFSC STATUS, Z GOTO RFAST MOVF INPUT_VAR, 0;SOL HIZLI SUBLW 0X56 BTFSC STATUS, Z GOTO LFAST MOVF INPUT_VAR, 0SUBLAST MOVE, 0SUBLACK, 0; BFAST MOVF INPUT_VAR, 0;EL KAPAT SUBLW 0X43 BTFSC STATUS, Z GOTO HCLOSE MOVF INPUT_VAR, 0;EL AÇ SUBLW 0X4F BTFSC STATUS, Z GOTO HOPEN MOVF INPUT_VNPUP, 0 BLHAND, 0 BLHAND;;HAND DOWN SUBLW 0X64 BTFSC STATUS, Z GOTO HDOWN MOVF INPUT_VAR, 0;IŞIK İZLEME R SUBLW 0X54 BTFSC DURUMU, Z TAKİP ET;********************************************* ***;************************************************ CLROEFSLOW'A GİT; 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;BUTTLEVELTOP, SALL CALL; LDET, 0;BSF PORTB, 7 NORMALSLOW MOVLW 0XFF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRISI PWM2ON, BCF1, BCF1 BCF, BCF1 BCF, BCF1, RCIF GOTO RXDATA GOTO REP3 GOTO CLROE;********************************************** **LSLOW BCF STATUS, RP0 BCF STATUS, RP1;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 ÇAĞRI DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLWPE STOPS 0 0XCF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI 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;BUTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLW 0XCF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BSF REP PORTB, 1 BSF REP PORTB; ******************************BSLOW BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO STOPS ÇAĞRISI DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLW 0XCF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0X99 MOVWFMCDPORT BWSFPORT BWSFPORT BWSPEED2, 1BWFMCD2 CALL 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;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR ÇAĞRI DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 NORMALMED MOVLPE MOVL12 0 MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI PWM2ON BCF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 ARAMA SDELAY REP6 ÇAĞRI STALL1 BTFSC MSTOP, 0 GOTO DURDUR BANKSEL PIRX, BRC BRC PIRX 7 GOTO REP6 PLUSEMED MOVLW 0XCF MOVWF SPEED11 MOVLW 0XCC MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XCC MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRISI PWM2ON BCF PORTD, 1 BCF PORTD, 1 BCP TOP PORTD, 1 BP CALLSF PORTD, 1 BPLE PORTD, 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;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT BTFSC LDET, 0;BSF PORTU B, 7 MOVLW 0XFF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI PWM2ON BCF PORTD, 0 BSF PORTD, 1 BSF PORTB, BSC 1 BSF PORTB, BSC1 BSF PORTB, BSC1 PNK, C BTFSC PIR1, RCIF GOTO RXDATA GOTO REP8 GOTO CLROE;***************************************** ****LMED BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLWF 0XFF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRISI PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP9;ÇAĞRI DURDUR1;BTFSCOTOM DURUMU1;BTFSCOTO BASKI BIR PIR, BTFSCG PIR, 0; REP9 GOTO CLROE;**************************************************BMED BCF DURUMU, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT ARAMA BTFSC LDET, 0;BSF PORTB, 7 MOVLW 0XFF MOVWF SPEED11 MOVLW 0X7F MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X7F MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRISI PWM2ON BSF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTB, 2 REP10 BCF PORTB, 2 REP10 BSC ÇAĞRISI MS1 TOP BSC PIR DURDURMA REP10 GOTO CLROE;************************************************** FFAST BCF DURUMU, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0 BSF MSTOP, 4;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR ÇAĞRI DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLW SWPE 0XPEED MOV11 MOVLW 0XPEED MOV11 MOVWF SPEED21 movlw 0x7f MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI PWM2ON BCF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 ARAMA Sdelay NORMALFAST movlw 0XCF MOVWF SPEED11 movlw 0xCC MOVWF Speed12 movlw 0XCF MOVWF SPEED21 movlw 0xCC MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI 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 DURDUR BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA NOP BTFSS PORTD, 7 GEFOTO REP11 AST MOVLW 0XCF MOVWF SPEED11 MOVLW 0XFF MOVWF SPEED12 MOVLW 0XCF MOVWF SPEED21 MOVLW 0XFF MOVWF SPEED22 ÇAĞRISI PWM1ON ÇAĞRI PWM2ON BCF PORTD, 0 BCF PORTD, BSC PORTD, 0 BCF PORTD, BSC OTOMATİK PORTD, BSC OTOMATİK PORT1, BSC 1 BSC PORT1, BSC 1 PIR, 1, RCIF GOTO RXDATA BTFSS PORTD, 7 NORMALFAST GOTO REP12 GOTO CLROE GOTO;*********************************** ******** FRAST BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLW 0 SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X66 MOVWF SPEED22 ÇAĞRISI PWM1ON ÇAĞRI PWM2ON BCF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BSF PORTB, 2 PIRX REP1 BSK ÇAĞRISI, 2 PIRX REP1 BSK ÇAĞRISI GOTO REP13 GOTO CLROE;************************************************** LFAST BCF DURUM, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLW 0XFF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞRISI PWM1ON ÇAĞRI PWM2ON BSF PORTD, 0 BCF PORTD SPEWDE, 0 BCF PORTD, 1 BSFED PORTD, 0 BSF11 MOVLX 0XEF MOVWF SPEED21 MOVLW 0XB3 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRISI PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 REP14 ÇAĞRI STALL1 BTFSC MSTOP, 0 GOTOCL STOPS BANKSEL PIR1, GOTOCL GPD GPD GPD; *********************************************BFAST BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR ÇAĞRI DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 MOVLW 0XDF MOVWF SPEED11 MOVLW 0X99 SPEED 11 MOVLW 0X99 SPEED MOVFALL MOVLW 0X99 012 MOVWFALL PWM2ON BSF PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTB, 2 ÇAĞRI GECİKTİRME MOVLW 0XEF MOVWF SPEED11 MOVLW 0X66 MOVWF SPEED12 MOVLW 0XEF MOVWF SPEED21 MOVLW 0X66 MOVWALLM PWALLM PORTD, 0 BSF PORTD, 1 BCF PORTB, 1 BCF PORTB, 2 REP15 CALL STALL1 BTFSC MSTOP, 0 GOTO DURDUR BANKSEL PIR1 BTSC PIR1, RCIF GOTO RXDATA GOTO REP15 GOTO CLROE;************* ******************************HCLOSE BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DARKLIGHT ÇAĞRISI BTFSC LDET, 0;BSF PORTB, 7 BTFSC PORTD, 5 GOTO DURAK BTFSC PORTD, 6 GOTO DURDUR BSF PORTD, 2 BCF PORTD, 3 REP16 BTFSC PORTD, 5 GOTO DURDUR, BTF GOTO DURDUR ÇAĞRI GECİKME ÇAĞRI STALL2 BTFSC MSTOP, 2 GOTO DURDUR BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP16 GOTO CLROE;************************* ******************HOPEN BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT BTFSC LDET ÇAĞRISI, 0;BSF PORTB, 7 BTFSC PORTD, 4 GOTO DURDUR BCF PORTD, 2 BSF PORTD, 3 REP17 BTFSC PORTD, 4 GOTO DURDUR ÇAĞRI GECİKTİRME ÇAĞRISI STALL2 BTFSC MSTOP, 2 GOTO DURDUR BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXD17 GOTO CLROE;************************************************** HUP BCF DURUMU, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT ÇAĞRISI BTFSC LDET, 0;BSF PORTB, 7 BTFSC PORTC, 4 GOTOSFPPORTS, 0 BCF RAPOR BTFSC PORTC, 4 GOTO DURAK BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA GOTO REP18 GOTO CLROE;************************************ ***************HDOWN BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BCF LDET, 0;BUTTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO DURDUR DARKLIGHT BTFSC LDET, 0;BSF PORTB, 7 BTFSC PORTC, 5 DURAKLAR BSF PORTC, 0 BCF PORTC, 3 REP19 BTFSC PORTC, 5 DURAKLAR 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;***** ****************************************BCF DURUMUNU TAKİP EDİN, RP0 BCF DURUMU, RP1 BCF PORTB, 1 BCF PORTB, 2 BCF PORTB, 6 BCF PORTB, 7 ARAMA PWM1OFF ARAMA 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_REG, 3;BSF OPTION_REG, 3 OPTION_;, 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 INTCON;BCF PIENKCON,, 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 GALLOTO FRONT C GECİKME ÇAĞRISI LFC1 NOP ÇAĞRISI LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, C GOTO LR2G LR1G BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP;ÇAĞRI BUTTLEVEL, 1BTFGTOP MOVWX; 0X66 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI PWM2ON BSF PORTD, 0 BCF PORTD, 1 BSF PORTB, 1 BCF PORTB, 2 LR1GREP; 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 MOVF LR2, 0 SUBGSS LROTO, 0 SUBGSS LROTO, 0 BTFSC STATUS, Z REPLF LR2G BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP;BUTLEVEL ÇAĞRISI;BTFSC MSTOP, 1;GOTO STOPS MOVLW 0XFF MOVWF SPEED11 MOVLW 0X99 MOVWF SPEED12 PWM 0X00 MOVWF SPEED12 MOV66, PORTD, 1 BCF PORTB, 1 BSF PORTB, 2 LR2GREP;CALL STALL1;BTFSC MSTOP, 0;GOTO DURDUR BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR REPLF CALL LFC1 NOP CALL LFC2 NOP MOVF LR2, 0 SUBWF LR1, 0 BTFSC STATUS, C GOTO LR2GREP GOTO REPLF ÖN BCF STATUS, RP0 BCF STATUS, RP1 MOVLW 0X00 MOVWF MSTOP;TOPCALL BUTTLEVW; SPEED11 MOVLW 0X99 MOVWF SPEED12 MOVLW 0XFF MOVWF SPEED21 MOVLW 0X99 MOVWF SPEED22 ÇAĞRI PWM1ON ÇAĞRI PWM2ON BCF PORT D, 0 BCF PORTD, 1 BSF PORTB, 1 BSF PORTB, 2 ARAMA SDELAY FROREP;CALL STALL1;BTFSC MSTOP, 0;GOTO DURDUR BANKSEL PIR1 BTFSC PIR1, RCIF GOTO RXDATA;CALL LDIN;BTFSC MSTOP1 CRTOP, 3 CALLG; 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 MOVWF SPEED22 CALL PWM1ON CALL PWM2ON, 0 BCF 1 ARAMA GECİKME DURA 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ĞRI PWM1OFF ÇAĞRI PWM2OFF, 0 BCF PORTB 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 DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BANKSEL ADCON0 BCF ADCON0, 3 BCF ADCON0, 4 BCF ADCON0, 5 BCF DURUMU, RP0 BCF DURUMU, RP1 ÇAĞRI DÖNÜŞTÜRME MOVF ADRESH, 0 SUBLW 0X70 BTFSS DURUMU, C BSF MSTOP, 0 BCF DURUMU, RP0 BCF1 BCF DURUMU DURUM, 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 ÇAĞRI DÖNÜŞTÜRME MOVF ADRESH, 0 SUBLWSFTOPX40 BTFSS, BCFSS, DURUM, RP0 BCF DURUMU, RP1 DÖNÜŞBUTLEVEL BCF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0X00 MOVWF MSTOP BANKSEL ADCON0 BCF ADCON0, 3 BCF ADCON0, 4 BSF ADCON0, 5 BCF DURUMU, RP0 BCF DURUMU, RPBLUT 0VX C BTFSS DURUMU, C GOTO BL1 GOTO BL2 BL1 BSF MSTOP, 1 BSF PORTB, 6 BL2 DARKLIGHT BCF DURUMU, RP0 BCF DURUMU, RP1 BTFSC LDET, 0 GOTO RETFDL BANKSEL ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BCF ADCON0, 5 BCF DURUMU, RP0 BCF DURUMU, RP1 ÇAĞRI DÖNÜŞTÜRME MOVF ADRESH, 0 SUBLW 0XEE BTFSS DURUMU, C BSF PORTB, 7 RETFDL RETURNCONVERT ADCONVLNK1 MOVLNK 0 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 MOVLW 0XFF MOVWF PR2 BCF STATUS, RPPE, 0 MOVWF CCP1CON MOVF SPEED12, 0 MOVWF CCPR1L BSF DURUMU, RP0 BCF DURUMU, RP1 MOVLW 0XF0 MOVWF TRISC BCF DURUMU, RP0 BCF DURUMU, RP1 BCF T2CON, T2CKPS1 BCP T2CON, T2CONNPS, BCP0CON, BCP2CONPS, BCP2CONPS, PR2 MOVLW 0XFF MOVWF PR2 BCF DURUMU, RP0 BCF DURUMU, RP1 MOVF HIZI21, 0 MOVWF CCP2CON MOVF HIZI22, 0 MOVWF CCPR2L BSF DURUMU, RP0 BCF DURUMU, RP1 MOVLWDURUMU, BCF2DURUMU TCF2, BCF2, BCF2 T2CON, T2CKPS0 BSF T2CON, TMR2ON BSF CCP2CON, 2 BSF CCP2CON, 3 DÖNÜŞ 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 MOVNPWSTAT 0XPR00 BCF2CON, BCF, 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, RP1 BCF 0, 5 BCF STATUS, RP0 BCF STATUS, RP1 CALL CONVERT MOVF ADRESH, W ANDLW 0XF0 MOVWF LR1 BCF STATUS, RP0 BCF STATUS, RP1 DÖNÜŞ LFC2 BANKSEL ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BSF ADCON0, 5 BRP STAT0 RP1 ÇAĞRI DÖNÜŞTÜRME MOVF ADRESH, 0 ANDLW 0XF0 MOVWF LR2 BCF DURUMU, RP0 BCF DURUMU, RP1 DÖNÜŞ LDIN BANKSEL ADCON0 BCF ADCON0, 3 BSF ADCON0, 4 BCF ADCON0, 5 BCF DURUMU, RP0 BCF DURUMU, CONRP1 0X4C BTFSC DURUMU, C GOTO COMP4 BSF MSTOP, 3 COMP4 BCF DURUMU, RP0 BCF DURUMU, RP1 GERİ DÖN 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 STATUS, CCS GSTAT XL2 MOVLW L2, SW10 XL3 İADE YOK YOK

Instructables ve RoboGames Robot Yarışmasında İkincilik Ödülü

Önerilen: