I need a PIC16F628A program written in C (CCS-C) that would translate (encode) three GPS sentences ($GPRMC,$GPRMB,$GPZDA) into DTMF tones so it can be sent over a radio or telephone and be able to decode back into GPS sentences so it can be fed back to a PC on the other side. The program must have a selection switch so one can choose the program mode (Encoder or Decoder). The speed of DTMF translation and update must be at least once per 2 seconds or faster (once per second if possible). On the encoder side, the program must wait for 4 digit DTMF security code BEFORE the DTMF translation (encoder) can begin. There is a switch that can let me by pass the security code so the program will start encode the GPS sentences right away.
If the switch is set on DTMF security code input, while waiting for the security code, the program will generate shot "beep" sound (then can be a single digit DTMF tone every half second) to indicate to the user that the program is waiting for security code. If the user input a correct security code, the program start translating the GPS sentences into DTMF tone right away. If a wrong security code was enter, a longer tone will sound indicating wrong security code.
I preferred that all encoding and decoding along with everything else done with software but I will also accept the encoding and decoding part done with DTMF chips (MT8870 for decode and HT9200A for encode). If you desired to go with hardware DTMF chips, I will provide you with a schematic.
If the program has become too large, I would allow using PIC18F4550 instead. However, I would really prefer using PIC16 series and not the 18 series.
Should you have any other questions about this project, please leave me a message on this site, I will get back to you right away. I need this code in 15 days. If you have skill and know exactly what you are doing, this could be your 3-5 days job.