firmware  v0.1.2
Chromation Spectrometer Dev-Kit
S13131-HardwareFake.h
1 #ifndef _S13131_HARDWAREFAKE_H
2 #define _S13131_HARDWAREFAKE_H
3 #include <stdint.h>
4 #include "S13131.h"
5 
6 // ---Fake hardware registers as PC memory for unit tests---
7 static uint8_t volatile fake_ddr;
8 static uint8_t volatile fake_port;
9 static uint8_t volatile fake_pin;
10 static uint8_t volatile fake_TCCR0A;
11 static uint8_t volatile fake_TCCR0B;
12 static uint8_t volatile fake_TIFR0;
13 static uint8_t volatile fake_OCR0A;
14 static uint8_t volatile fake_OCR0B;
15 
16 // ---Registers---
17 s13131_ptr S13131_ddr = &fake_ddr;
18 s13131_ptr S13131_port = &fake_port;
19 s13131_ptr S13131_pin = &fake_pin;
20 s13131_ptr S13131_TCCR0A = &fake_TCCR0A;
21 s13131_ptr S13131_TCCR0B = &fake_TCCR0B;
22 s13131_ptr S13131_TIFR0 = &fake_TIFR0;
23 s13131_ptr S13131_OCR0A = &fake_OCR0A;
24 s13131_ptr S13131_OCR0B = &fake_OCR0B;
25 
26 // ---Pins---
27 s13131_pin S13131_Clk = 5; // PWM
28 s13131_pin S13131_St = 6; // Start
29 s13131_pin S13131_Eos = 7; // End of scan
30 
31 // ---Bits---
32 s13131_bit S13131_WGM00 = 0; // PWM
33 s13131_bit S13131_WGM01 = 1; // PWM
34 s13131_bit S13131_WGM02 = 3; // PWM
35 s13131_bit S13131_CS00 = 0; // PWM
36 s13131_bit S13131_CS01 = 1; // PWM
37 s13131_bit S13131_CS02 = 2; // PWM
38 s13131_bit S13131_COM0B0 = 4; // PWM
39 s13131_bit S13131_COM0B1 = 5; // PWM
40 s13131_bit S13131_OCF0A = 1; // PWM
41 s13131_bit S13131_OCF0B = 2; // PWM
42 #endif // _S13131_HARDWAREFAKE_H