This project is about to create a joystick for controlling robots or drone. but when you want to buy one of them and use it in your projects you need to access code and datasheet. In the other hand, in some case, you need to full control of joystick and its functions for your robot. it can not be done without full access to source code and hardware.
Today, wireless communication are commonly use in projects. wireless communication, or sometimes simply wireless, is the transfer of information
between two or more points that are not connected by an electrical conductor In computers.
We designed and produced a joystick for our purpose. its used HMT and HMR module to communicate with the robot in 9600 baud rate and 915 MegaHertz. Both HMT and HMR module use serial protocol. Alphabetic LCD ( 2×16 Character LCD ) use to display data and information.
We use PIC microcontroller (PIC MCU) as the main processor of this project. it can be so good performance for communicating between peripherals such as transmitter and LCD. In other words, it has enough IO pins and peripherals. The joystick uses two actuators and four ADC output as MCU inputs. there are two joystick modules for all directions. this module combines two potentiometers and a pushbutton switch into a solid mechanical package with an ergonomic thumb dome. perfect for controlling motors, servos, etc. The potentiometers track the position of the joystick in two dimensions and the button responds to downward pressure. Springs pull the joystick back to the center position. I use PIC16F877A with external 8 Mhz crystal as clock source. If you want to use an internal clock, you can disable it from the compiler.
Encode and Decode system
Same as IP on the internet we used IP in the communication system. each data carried with one identification code at the start frame. The first frame always is IP address and the second frame is data. A second frame encodes with the parity bit. This strategy can help to identify an error in the message we received.
A parity bit, or check bit, is a bit added to a string of binary code to ensure that the total number of 1-bits in the string is even or odd. There are two variants of parity bits: even parity bit and