C Code for AVR mega under AVR Studio - Repost - open to bidding
$30-250 USD
Cancelled
Posted about 9 years ago
$30-250 USD
Paid on delivery
Description of every module: Write a firmware for an existing hardware design. The code your write will be contained in a library (H file + C file) used together with other libraries already written. You will also be able to use the libraries present.
Description of requirements/functionality: Required skills
1. Experience in C programming under AVRStudio IDE
2. Familiar with AVR mega series
3. Basic understanding of electronics
4. Ability to prototype a very simple test circuit to validate code (breadboard)
The job
Write a library that will fit into the existing code and implement usage of this library in the code to complete the functionality of the product.
The product
From an electronic perspective, the MCU has 2 momentary switches connected to it. It has an output to a device acting as a current sink and input from a clock signal.
Product functions:
1. When the calibration switch is pressed the MCU will sweep through the digitally controlled current sink settings (256) and record the input clock signal resulting from the current being applied. The current biases an external oscillator. After all the settings are being swept through, there should be a calibration LUT with the values read or coefficients for a formula that describes the oscillator’s frequency as a function of the current applied to bias the oscillator (more specifically the code that was set to the current sink). This table or formula will be translated to another usage but that will be explained only after the work is accepted and NDA is signed. This is very simple though.
2. The MCU reads incoming pulses (de-bounces them as well) and if they meet certain demands the MCU will output an appropriate code to the current sink according to the calibration table or formula obtained earlier on.
3. The MCU reads a voltage divider and detects when its settings are over-riding the incoming pulses according to parameters that will be defined after an NDA is signed and if terms are met it will change the output of the current sink as needed.
Code requirements
The code written should be similar is styling to the one found in the code that will be provided (this is not hard to do). Comments should be used where needed to explain what the code is doing. A block diagram and short explanation of the code will be provided as well.