1 / 11

SENIOR PROJECT PRESENTATION

SENIOR PROJECT PRESENTATION. REMOTE CONTROL CAR MURAT DİNÇER. INTRODUCTION. My project is about making a remote control car. It consists two main parts: Transmitter Receiver. TRANSMITTER. Transmitter part has two main parts: Transmitter: RT4-XXX Microcontroller: PIC16F84. RECEIVER.

saxton
Download Presentation

SENIOR PROJECT PRESENTATION

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SENIOR PROJECTPRESENTATION REMOTE CONTROL CAR MURAT DİNÇER

  2. INTRODUCTION • My project is about making a remote control car. • It consists two main parts: • Transmitter • Receiver

  3. TRANSMITTER • Transmitter part has two main parts: • Transmitter: RT4-XXX • Microcontroller: PIC16F84

  4. RECEIVER • Receiver part has three main parts: • Receiver: RR4-XXX • Microcontroller: PIC16F84 • Motors and Drivers: Toy Remote Car DC Motor

  5. FLOW CHART PIC16F84 Transmitter Switch Motor Driver PIC16F84 Receiver

  6. SERIAL DATA COMMUNICATION SEND RECEIVE PIC16F84 PIC16F84 RA1 RA0 5V 5V RA2 RB0-7 RA2 Close = Send Close = Ready to Receive 8 LEDs

  7. SERIAL DATA COMMUNICATION list p=16F84 include "p16f84.inc" sendreg equ h'0c' Count equ h'0d' start bsf STATUS,5 movlw b'00000100' movwf TRISA movlw h'80' ;number to be sent movwf sendreg bcf STATUS,5 bsf PORTA, 1 switch btfsc PORTA,2 goto switch call ser_out circle goto circle ser_out bcf INTCON,5 ; disable tmr0 interrupts bcf INTCON,7 ; disable global int. clrf TMR0 CLRWDT bsf STATUS,5 movlw b'11011000' movwf OPTREG bcf STATUS,5 movlw h'08' ;counter for 8 bits movwf count bcf PORTA,1 clrf TMR0 bcf INTCON,2 ;clear tmr0 flag Transmitter Part time1 btfss INTCON, 2 ;timer overflow? goto time1 bcf INTCON, 2 ;clear tmr0 flag nxtbit rlf sendreg, f ; rotate left bcf PORTA , 1 btfsc STATUS,2 ;test carry flag bsf PORTA, 1 ;bit is set time2 btfss INTCON, 2 ;timer overflow? goto time2 bcf INTCON, 2 ;clear timer overflow flag decfsz count, f ;decrease counter goto nxtbit bsf PORTA, 1 ;output mark time3 btfss INTCON, 2 ;timer overflow? goto time3 return end

  8. SERIAL DATA COMMUNICATION Receiver Part list p=16F84 include "p16f84.inc" rcvreg equ 0x0c count equ 0x0d temp equ 0x0e start bsf STATUS, rp0 movlw b'00000101' movwf TRISA movlw b'00000000' movwf TRISB bcf STATUS, rp0 clrf PORTB clrf rcvreg switch btfsc porta, 2 ;ready to send? goto switch call ser_in movf rcvreg, 0 ;get the byte received movwf PORTB ;display it goto switch ser_in bcf INTCON, 5 ;disable tmr0 intr. bcf INTCON, 7 ;disable global intr. clrf TMRO CLRWDT bsf STATUS, rp0 movlw b'11011000' movwf OPTREG bcf STATUS, rp0 movlw 0x08 movwf count ;counter for 8 bits sbit btfsc PORTA, 0 ;look for start bit goto sbit movlw 0x80 ;tmr0 value movwf TMR0 bcf INTCON, 2 ;clear timer flag time1 btfss INTCON,2 ;timer overflow? goto time1 btfsc PORTA,0 ;start bit still low? goto sbit ;false go back clrf TMR0 ;clear tmr0 value bcf INTCON,2 ;clear timer flag time2 btfss INTCON,2 ;timer overflow? goto time2 ;no bcf INTCON,2 ;yes, clear flag movf PORTA,w ;write the value to w movwf temp ;write the bit value to temp rrf temp, f ;rotate right temp btfss STATUS,2 ; carry? bcf rcvreg,0 if not it is ‘0’ bsf rcvreg,0 if it there is ‘1’ rlf rcvreg, f ;rotate left the rcvreg decfsz count, f ;decrement counter goto time2 time3 btfss INTCON,2 ;timer overflow? goto time3 ;no return ;yes, byte received end

  9. What I’ve done so far? • Search about Transmitters and Receivers • Communication between Transmitter and Receiver, and Testing • Serial Data Communication • Driving the DC Motor (Still in progress)

  10. Future Steps • Finalizing Driving the DC Motor • Writing the program that will run the car properly • Testing

  11. THANK YOU

More Related