#include "PMSM_tables.h"
#include <avr/signature.h>
PROGMEM const uint8_t sineTable[] = {
#if SINE_TABLE_SIZE_SMALL
0, 8, 17, 25, 33, 42, 50, 58,
66, 74, 82, 90, 98, 105, 113, 120,
128, 135, 142, 149, 155, 162, 168, 174,
180, 186, 192, 197, 202, 207, 212, 217,
221, 225, 229, 232, 236, 239, 241, 244,
246, 248, 250, 252, 253, 254, 254, 255,
255, 255, 254, 254, 253, 252, 250, 248,
246, 244, 241, 239, 236, 232, 229, 225
#else
0, 0, 221,
8, 0, 225,
17, 0, 229,
25, 0, 232,
33, 0, 236,
42, 0, 239,
50, 0, 241,
58, 0, 244,
66, 0, 246,
74, 0, 248,
82, 0, 250,
90, 0, 252,
98, 0, 253,
105, 0, 254,
113, 0, 254,
120, 0, 255,
128, 0, 255,
135, 0, 255,
142, 0, 254,
149, 0, 254,
155, 0, 253,
162, 0, 252,
168, 0, 250,
174, 0, 248,
180, 0, 246,
186, 0, 244,
192, 0, 241,
197, 0, 239,
202, 0, 236,
207, 0, 232,
212, 0, 229,
217, 0, 225,
221, 0, 221,
225, 0, 217,
229, 0, 212,
232, 0, 207,
236, 0, 202,
239, 0, 197,
241, 0, 192,
244, 0, 186,
246, 0, 180,
248, 0, 174,
250, 0, 168,
252, 0, 162,
253, 0, 155,
254, 0, 149,
254, 0, 142,
255, 0, 135,
255, 0, 127,
255, 0, 120,
254, 0, 113,
254, 0, 105,
253, 0, 98,
252, 0, 90,
250, 0, 82,
248, 0, 74,
246, 0, 66,
244, 0, 58,
241, 0, 50,
239, 0, 42,
236, 0, 33,
232, 0, 25,
229, 0, 17,
225, 0, 8,
221, 0, 0,
225, 8, 0,
229, 17, 0,
232, 25, 0,
236, 33, 0,
239, 42, 0,
241, 50, 0,
244, 58, 0,
246, 66, 0,
248, 74, 0,
250, 82, 0,
252, 90, 0,
253, 98, 0,
254, 105, 0,
254, 113, 0,
255, 120, 0,
255, 127, 0,
255, 135, 0,
254, 142, 0,
254, 149, 0,
253, 155, 0,
252, 162, 0,
250, 168, 0,
248, 174, 0,
246, 180, 0,
244, 186, 0,
241, 192, 0,
239, 197, 0,
236, 202, 0,
232, 207, 0,
229, 212, 0,
225, 217, 0,
221, 221, 0,
217, 225, 0,
212, 229, 0,
207, 232, 0,
202, 236, 0,
197, 239, 0,
192, 241, 0,
186, 244, 0,
180, 246, 0,
174, 248, 0,
168, 250, 0,
162, 252, 0,
155, 253, 0,
149, 254, 0,
142, 254, 0,
135, 255, 0,
128, 255, 0,
120, 255, 0,
113, 254, 0,
105, 254, 0,
98, 253, 0,
90, 252, 0,
82, 250, 0,
74, 248, 0,
66, 246, 0,
58, 244, 0,
50, 241, 0,
42, 239, 0,
33, 236, 0,
25, 232, 0,
17, 229, 0,
8, 225, 0,
0, 221, 0,
0, 225, 8,
0, 229, 17,
0, 232, 25,
0, 236, 33,
0, 239, 42,
0, 241, 50,
0, 244, 58,
0, 246, 66,
0, 248, 74,
0, 250, 82,
0, 252, 90,
0, 253, 98,
0, 254, 105,
0, 254, 113,
0, 255, 120,
0, 255, 128,
0, 255, 135,
0, 254, 142,
0, 254, 149,
0, 253, 155,
0, 252, 162,
0, 250, 168,
0, 248, 174,
0, 246, 180,
0, 244, 186,
0, 241, 192,
0, 239, 197,
0, 236, 202,
0, 232, 207,
0, 229, 212,
0, 225, 217,
0, 221, 221,
0, 217, 225,
0, 212, 229,
0, 207, 232,
0, 202, 236,
0, 197, 239,
0, 192, 241,
0, 186, 244,
0, 180, 246,
0, 174, 248,
0, 168, 250,
0, 162, 252,
0, 155, 253,
0, 149, 254,
0, 142, 254,
0, 135, 255,
0, 128, 255,
0, 120, 255,
0, 113, 254,
0, 105, 254,
0, 98, 253,
0, 90, 252,
0, 82, 250,
0, 74, 248,
0, 66, 246,
0, 58, 244,
0, 50, 241,
0, 42, 239,
0, 33, 236,
0, 25, 232,
0, 17, 229,
0, 8, 225
#endif
};
uint8_t PROGMEM const blockCommutationTableForward[] = {
0x00,
/* 0b001 → */ 0b100001,
/* 0b010 → */ 0b000110,
/* 0b011 → */ 0b100100,
/* 0b100 → */ 0b011000,
/* 0b101 → */ 0b001001,
/* 0b110 → */ 0b010010,
0x00
};
uint8_t PROGMEM const blockCommutationTableReverse[] = {
0x00,
/* 0b001 → */ 0b010010,
/* 0b010 → */ 0b001001,
/* 0b011 → */ 0b011000,
/* 0b100 → */ 0b100100,
/* 0b101 → */ 0b000110,
/* 0b110 → */ 0b100001,
0x00
};
PROGMEM const uint8_t HallSequenceForward[] = {
0xff,
/* 0b001 → */ 0b011,
/* 0b010 → */ 0b110,
/* 0b011 → */ 0b010,
/* 0b100 → */ 0b101,
/* 0b101 → */ 0b001,
/* 0b110 → */ 0b100,
0xff
};
PROGMEM const uint8_t HallSequenceReverse[] = {
0xff,
/* 0b001 → */ 0b101,
/* 0b010 → */ 0b011,
/* 0b011 → */ 0b001,
/* 0b100 → */ 0b110,
/* 0b101 → */ 0b100,
/* 0b110 → */ 0b010,
0xff
};
PROGMEM const uint16_t CSOffsetsForward[8] = {
0,
5 * (SINE_TABLE_LENGTH/6),
1 * (SINE_TABLE_LENGTH/6),
0 * (SINE_TABLE_LENGTH/6),
3 * (SINE_TABLE_LENGTH/6),
4 * (SINE_TABLE_LENGTH/6),
2 * (SINE_TABLE_LENGTH/6),
0
};
PROGMEM const uint16_t CSOffsetsReverse[8] = {
0,
1 * (SINE_TABLE_LENGTH/6),
5 * (SINE_TABLE_LENGTH/6),
0 * (SINE_TABLE_LENGTH/6),
3 * (SINE_TABLE_LENGTH/6),
2 * (SINE_TABLE_LENGTH/6),
4 * (SINE_TABLE_LENGTH/6),
0
};
Detected encoding: UTF-8 | 0
|