Firmware Porting from asm to C - PIC16 code

Job ID: 37968731

Budget: $250 – $750 AUD

I'm seeking a proficient programmer to translate a short program (approx 1000 lines) written in assembler to C code for a PIC16. The task will require:

- creating global variables and constants
- creating functions based on the subroutines.
- remove code that has a P876 compiler switch (the code will run on a PIC16F883 only).
- create a simple flowchart of the program flow and...
- ...replace goto statements with C type loops (for, while, do) and function calls.
- adding comment blocks ahead of each function with some notes of what the code is doing.
- check where the global variables are actually used and where possible change scope to a local variable.
- create the main() function
- add comments for anything that looks like a bug or incorrect.
- compile code using Microchip XC8 compiler and resolve any errors.

Testing /. debugging on hardware is not part of the scope. We will run it here and see if the operation looks close to the original.

Please see the attached document for a section of the code.
Related categories: C Programming Microcontroller Firmware