Commit 837bf1e0 by karudu

Kiirem saatmine ~100us jaoks, mõõtesageduse muutmine

parent 6b68f03d
Showing with 1095 additions and 37 deletions
const char FLASH_VoltageTable[1024 * 3] PROGMEM =
{
'0', '0', '0',
'0', '0', '0',
'0', '0', '1',
'0', '0', '1',
'0', '0', '2',
'0', '0', '2',
'0', '0', '3',
'0', '0', '3',
'0', '0', '4',
'0', '0', '4',
'0', '0', '5',
'0', '0', '5',
'0', '0', '6',
'0', '0', '6',
'0', '0', '7',
'0', '0', '7',
'0', '0', '8',
'0', '0', '8',
'0', '0', '9',
'0', '0', '9',
'0', '1', '0',
'0', '1', '0',
'0', '1', '1',
'0', '1', '1',
'0', '1', '1',
'0', '1', '2',
'0', '1', '2',
'0', '1', '3',
'0', '1', '3',
'0', '1', '4',
'0', '1', '4',
'0', '1', '5',
'0', '1', '5',
'0', '1', '6',
'0', '1', '6',
'0', '1', '7',
'0', '1', '7',
'0', '1', '8',
'0', '1', '8',
'0', '1', '9',
'0', '1', '9',
'0', '2', '0',
'0', '2', '0',
'0', '2', '1',
'0', '2', '1',
'0', '2', '2',
'0', '2', '2',
'0', '2', '3',
'0', '2', '3',
'0', '2', '3',
'0', '2', '4',
'0', '2', '4',
'0', '2', '5',
'0', '2', '5',
'0', '2', '6',
'0', '2', '6',
'0', '2', '7',
'0', '2', '7',
'0', '2', '8',
'0', '2', '8',
'0', '2', '9',
'0', '2', '9',
'0', '3', '0',
'0', '3', '0',
'0', '3', '1',
'0', '3', '1',
'0', '3', '2',
'0', '3', '2',
'0', '3', '3',
'0', '3', '3',
'0', '3', '4',
'0', '3', '4',
'0', '3', '4',
'0', '3', '5',
'0', '3', '5',
'0', '3', '6',
'0', '3', '6',
'0', '3', '7',
'0', '3', '7',
'0', '3', '8',
'0', '3', '8',
'0', '3', '9',
'0', '3', '9',
'0', '4', '0',
'0', '4', '0',
'0', '4', '1',
'0', '4', '1',
'0', '4', '2',
'0', '4', '2',
'0', '4', '3',
'0', '4', '3',
'0', '4', '4',
'0', '4', '4',
'0', '4', '5',
'0', '4', '5',
'0', '4', '6',
'0', '4', '6',
'0', '4', '6',
'0', '4', '7',
'0', '4', '7',
'0', '4', '8',
'0', '4', '8',
'0', '4', '9',
'0', '4', '9',
'0', '5', '0',
'0', '5', '0',
'0', '5', '1',
'0', '5', '1',
'0', '5', '2',
'0', '5', '2',
'0', '5', '3',
'0', '5', '3',
'0', '5', '4',
'0', '5', '4',
'0', '5', '5',
'0', '5', '5',
'0', '5', '6',
'0', '5', '6',
'0', '5', '7',
'0', '5', '7',
'0', '5', '7',
'0', '5', '8',
'0', '5', '8',
'0', '5', '9',
'0', '5', '9',
'0', '6', '0',
'0', '6', '0',
'0', '6', '1',
'0', '6', '1',
'0', '6', '2',
'0', '6', '2',
'0', '6', '3',
'0', '6', '3',
'0', '6', '4',
'0', '6', '4',
'0', '6', '5',
'0', '6', '5',
'0', '6', '6',
'0', '6', '6',
'0', '6', '7',
'0', '6', '7',
'0', '6', '8',
'0', '6', '8',
'0', '6', '8',
'0', '6', '9',
'0', '6', '9',
'0', '7', '0',
'0', '7', '0',
'0', '7', '1',
'0', '7', '1',
'0', '7', '2',
'0', '7', '2',
'0', '7', '3',
'0', '7', '3',
'0', '7', '4',
'0', '7', '4',
'0', '7', '5',
'0', '7', '5',
'0', '7', '6',
'0', '7', '6',
'0', '7', '7',
'0', '7', '7',
'0', '7', '8',
'0', '7', '8',
'0', '7', '9',
'0', '7', '9',
'0', '8', '0',
'0', '8', '0',
'0', '8', '0',
'0', '8', '1',
'0', '8', '1',
'0', '8', '2',
'0', '8', '2',
'0', '8', '3',
'0', '8', '3',
'0', '8', '4',
'0', '8', '4',
'0', '8', '5',
'0', '8', '5',
'0', '8', '6',
'0', '8', '6',
'0', '8', '7',
'0', '8', '7',
'0', '8', '8',
'0', '8', '8',
'0', '8', '9',
'0', '8', '9',
'0', '9', '0',
'0', '9', '0',
'0', '9', '1',
'0', '9', '1',
'0', '9', '1',
'0', '9', '2',
'0', '9', '2',
'0', '9', '3',
'0', '9', '3',
'0', '9', '4',
'0', '9', '4',
'0', '9', '5',
'0', '9', '5',
'0', '9', '6',
'0', '9', '6',
'0', '9', '7',
'0', '9', '7',
'0', '9', '8',
'0', '9', '8',
'0', '9', '9',
'0', '9', '9',
'1', '0', '0',
'1', '0', '0',
'1', '0', '1',
'1', '0', '1',
'1', '0', '2',
'1', '0', '2',
'1', '0', '3',
'1', '0', '3',
'1', '0', '3',
'1', '0', '4',
'1', '0', '4',
'1', '0', '5',
'1', '0', '5',
'1', '0', '6',
'1', '0', '6',
'1', '0', '7',
'1', '0', '7',
'1', '0', '8',
'1', '0', '8',
'1', '0', '9',
'1', '0', '9',
'1', '1', '0',
'1', '1', '0',
'1', '1', '1',
'1', '1', '1',
'1', '1', '2',
'1', '1', '2',
'1', '1', '3',
'1', '1', '3',
'1', '1', '4',
'1', '1', '4',
'1', '1', '4',
'1', '1', '5',
'1', '1', '5',
'1', '1', '6',
'1', '1', '6',
'1', '1', '7',
'1', '1', '7',
'1', '1', '8',
'1', '1', '8',
'1', '1', '9',
'1', '1', '9',
'1', '2', '0',
'1', '2', '0',
'1', '2', '1',
'1', '2', '1',
'1', '2', '2',
'1', '2', '2',
'1', '2', '3',
'1', '2', '3',
'1', '2', '4',
'1', '2', '4',
'1', '2', '5',
'1', '2', '5',
'1', '2', '5',
'1', '2', '6',
'1', '2', '6',
'1', '2', '7',
'1', '2', '7',
'1', '2', '8',
'1', '2', '8',
'1', '2', '9',
'1', '2', '9',
'1', '3', '0',
'1', '3', '0',
'1', '3', '1',
'1', '3', '1',
'1', '3', '2',
'1', '3', '2',
'1', '3', '3',
'1', '3', '3',
'1', '3', '4',
'1', '3', '4',
'1', '3', '5',
'1', '3', '5',
'1', '3', '6',
'1', '3', '6',
'1', '3', '7',
'1', '3', '7',
'1', '3', '7',
'1', '3', '8',
'1', '3', '8',
'1', '3', '9',
'1', '3', '9',
'1', '4', '0',
'1', '4', '0',
'1', '4', '1',
'1', '4', '1',
'1', '4', '2',
'1', '4', '2',
'1', '4', '3',
'1', '4', '3',
'1', '4', '4',
'1', '4', '4',
'1', '4', '5',
'1', '4', '5',
'1', '4', '6',
'1', '4', '6',
'1', '4', '7',
'1', '4', '7',
'1', '4', '8',
'1', '4', '8',
'1', '4', '8',
'1', '4', '9',
'1', '4', '9',
'1', '5', '0',
'1', '5', '0',
'1', '5', '1',
'1', '5', '1',
'1', '5', '2',
'1', '5', '2',
'1', '5', '3',
'1', '5', '3',
'1', '5', '4',
'1', '5', '4',
'1', '5', '5',
'1', '5', '5',
'1', '5', '6',
'1', '5', '6',
'1', '5', '7',
'1', '5', '7',
'1', '5', '8',
'1', '5', '8',
'1', '5', '9',
'1', '5', '9',
'1', '6', '0',
'1', '6', '0',
'1', '6', '0',
'1', '6', '1',
'1', '6', '1',
'1', '6', '2',
'1', '6', '2',
'1', '6', '3',
'1', '6', '3',
'1', '6', '4',
'1', '6', '4',
'1', '6', '5',
'1', '6', '5',
'1', '6', '6',
'1', '6', '6',
'1', '6', '7',
'1', '6', '7',
'1', '6', '8',
'1', '6', '8',
'1', '6', '9',
'1', '6', '9',
'1', '7', '0',
'1', '7', '0',
'1', '7', '1',
'1', '7', '1',
'1', '7', '1',
'1', '7', '2',
'1', '7', '2',
'1', '7', '3',
'1', '7', '3',
'1', '7', '4',
'1', '7', '4',
'1', '7', '5',
'1', '7', '5',
'1', '7', '6',
'1', '7', '6',
'1', '7', '7',
'1', '7', '7',
'1', '7', '8',
'1', '7', '8',
'1', '7', '9',
'1', '7', '9',
'1', '8', '0',
'1', '8', '0',
'1', '8', '1',
'1', '8', '1',
'1', '8', '2',
'1', '8', '2',
'1', '8', '2',
'1', '8', '3',
'1', '8', '3',
'1', '8', '4',
'1', '8', '4',
'1', '8', '5',
'1', '8', '5',
'1', '8', '6',
'1', '8', '6',
'1', '8', '7',
'1', '8', '7',
'1', '8', '8',
'1', '8', '8',
'1', '8', '9',
'1', '8', '9',
'1', '9', '0',
'1', '9', '0',
'1', '9', '1',
'1', '9', '1',
'1', '9', '2',
'1', '9', '2',
'1', '9', '3',
'1', '9', '3',
'1', '9', '4',
'1', '9', '4',
'1', '9', '4',
'1', '9', '5',
'1', '9', '5',
'1', '9', '6',
'1', '9', '6',
'1', '9', '7',
'1', '9', '7',
'1', '9', '8',
'1', '9', '8',
'1', '9', '9',
'1', '9', '9',
'2', '0', '0',
'2', '0', '0',
'2', '0', '1',
'2', '0', '1',
'2', '0', '2',
'2', '0', '2',
'2', '0', '3',
'2', '0', '3',
'2', '0', '4',
'2', '0', '4',
'2', '0', '5',
'2', '0', '5',
'2', '0', '5',
'2', '0', '6',
'2', '0', '6',
'2', '0', '7',
'2', '0', '7',
'2', '0', '8',
'2', '0', '8',
'2', '0', '9',
'2', '0', '9',
'2', '1', '0',
'2', '1', '0',
'2', '1', '1',
'2', '1', '1',
'2', '1', '2',
'2', '1', '2',
'2', '1', '3',
'2', '1', '3',
'2', '1', '4',
'2', '1', '4',
'2', '1', '5',
'2', '1', '5',
'2', '1', '6',
'2', '1', '6',
'2', '1', '7',
'2', '1', '7',
'2', '1', '7',
'2', '1', '8',
'2', '1', '8',
'2', '1', '9',
'2', '1', '9',
'2', '2', '0',
'2', '2', '0',
'2', '2', '1',
'2', '2', '1',
'2', '2', '2',
'2', '2', '2',
'2', '2', '3',
'2', '2', '3',
'2', '2', '4',
'2', '2', '4',
'2', '2', '5',
'2', '2', '5',
'2', '2', '6',
'2', '2', '6',
'2', '2', '7',
'2', '2', '7',
'2', '2', '8',
'2', '2', '8',
'2', '2', '8',
'2', '2', '9',
'2', '2', '9',
'2', '3', '0',
'2', '3', '0',
'2', '3', '1',
'2', '3', '1',
'2', '3', '2',
'2', '3', '2',
'2', '3', '3',
'2', '3', '3',
'2', '3', '4',
'2', '3', '4',
'2', '3', '5',
'2', '3', '5',
'2', '3', '6',
'2', '3', '6',
'2', '3', '7',
'2', '3', '7',
'2', '3', '8',
'2', '3', '8',
'2', '3', '9',
'2', '3', '9',
'2', '3', '9',
'2', '4', '0',
'2', '4', '0',
'2', '4', '1',
'2', '4', '1',
'2', '4', '2',
'2', '4', '2',
'2', '4', '3',
'2', '4', '3',
'2', '4', '4',
'2', '4', '4',
'2', '4', '5',
'2', '4', '5',
'2', '4', '6',
'2', '4', '6',
'2', '4', '7',
'2', '4', '7',
'2', '4', '8',
'2', '4', '8',
'2', '4', '9',
'2', '4', '9',
'2', '5', '0',
'2', '5', '0',
'2', '5', '1',
'2', '5', '1',
'2', '5', '1',
'2', '5', '2',
'2', '5', '2',
'2', '5', '3',
'2', '5', '3',
'2', '5', '4',
'2', '5', '4',
'2', '5', '5',
'2', '5', '5',
'2', '5', '6',
'2', '5', '6',
'2', '5', '7',
'2', '5', '7',
'2', '5', '8',
'2', '5', '8',
'2', '5', '9',
'2', '5', '9',
'2', '6', '0',
'2', '6', '0',
'2', '6', '1',
'2', '6', '1',
'2', '6', '2',
'2', '6', '2',
'2', '6', '2',
'2', '6', '3',
'2', '6', '3',
'2', '6', '4',
'2', '6', '4',
'2', '6', '5',
'2', '6', '5',
'2', '6', '6',
'2', '6', '6',
'2', '6', '7',
'2', '6', '7',
'2', '6', '8',
'2', '6', '8',
'2', '6', '9',
'2', '6', '9',
'2', '7', '0',
'2', '7', '0',
'2', '7', '1',
'2', '7', '1',
'2', '7', '2',
'2', '7', '2',
'2', '7', '3',
'2', '7', '3',
'2', '7', '3',
'2', '7', '4',
'2', '7', '4',
'2', '7', '5',
'2', '7', '5',
'2', '7', '6',
'2', '7', '6',
'2', '7', '7',
'2', '7', '7',
'2', '7', '8',
'2', '7', '8',
'2', '7', '9',
'2', '7', '9',
'2', '8', '0',
'2', '8', '0',
'2', '8', '1',
'2', '8', '1',
'2', '8', '2',
'2', '8', '2',
'2', '8', '3',
'2', '8', '3',
'2', '8', '4',
'2', '8', '4',
'2', '8', '5',
'2', '8', '5',
'2', '8', '5',
'2', '8', '6',
'2', '8', '6',
'2', '8', '7',
'2', '8', '7',
'2', '8', '8',
'2', '8', '8',
'2', '8', '9',
'2', '8', '9',
'2', '9', '0',
'2', '9', '0',
'2', '9', '1',
'2', '9', '1',
'2', '9', '2',
'2', '9', '2',
'2', '9', '3',
'2', '9', '3',
'2', '9', '4',
'2', '9', '4',
'2', '9', '5',
'2', '9', '5',
'2', '9', '6',
'2', '9', '6',
'2', '9', '6',
'2', '9', '7',
'2', '9', '7',
'2', '9', '8',
'2', '9', '8',
'2', '9', '9',
'2', '9', '9',
'3', '0', '0',
'3', '0', '0',
'3', '0', '1',
'3', '0', '1',
'3', '0', '2',
'3', '0', '2',
'3', '0', '3',
'3', '0', '3',
'3', '0', '4',
'3', '0', '4',
'3', '0', '5',
'3', '0', '5',
'3', '0', '6',
'3', '0', '6',
'3', '0', '7',
'3', '0', '7',
'3', '0', '8',
'3', '0', '8',
'3', '0', '8',
'3', '0', '9',
'3', '0', '9',
'3', '1', '0',
'3', '1', '0',
'3', '1', '1',
'3', '1', '1',
'3', '1', '2',
'3', '1', '2',
'3', '1', '3',
'3', '1', '3',
'3', '1', '4',
'3', '1', '4',
'3', '1', '5',
'3', '1', '5',
'3', '1', '6',
'3', '1', '6',
'3', '1', '7',
'3', '1', '7',
'3', '1', '8',
'3', '1', '8',
'3', '1', '9',
'3', '1', '9',
'3', '1', '9',
'3', '2', '0',
'3', '2', '0',
'3', '2', '1',
'3', '2', '1',
'3', '2', '2',
'3', '2', '2',
'3', '2', '3',
'3', '2', '3',
'3', '2', '4',
'3', '2', '4',
'3', '2', '5',
'3', '2', '5',
'3', '2', '6',
'3', '2', '6',
'3', '2', '7',
'3', '2', '7',
'3', '2', '8',
'3', '2', '8',
'3', '2', '9',
'3', '2', '9',
'3', '3', '0',
'3', '3', '0',
'3', '3', '0',
'3', '3', '1',
'3', '3', '1',
'3', '3', '2',
'3', '3', '2',
'3', '3', '3',
'3', '3', '3',
'3', '3', '4',
'3', '3', '4',
'3', '3', '5',
'3', '3', '5',
'3', '3', '6',
'3', '3', '6',
'3', '3', '7',
'3', '3', '7',
'3', '3', '8',
'3', '3', '8',
'3', '3', '9',
'3', '3', '9',
'3', '4', '0',
'3', '4', '0',
'3', '4', '1',
'3', '4', '1',
'3', '4', '2',
'3', '4', '2',
'3', '4', '2',
'3', '4', '3',
'3', '4', '3',
'3', '4', '4',
'3', '4', '4',
'3', '4', '5',
'3', '4', '5',
'3', '4', '6',
'3', '4', '6',
'3', '4', '7',
'3', '4', '7',
'3', '4', '8',
'3', '4', '8',
'3', '4', '9',
'3', '4', '9',
'3', '5', '0',
'3', '5', '0',
'3', '5', '1',
'3', '5', '1',
'3', '5', '2',
'3', '5', '2',
'3', '5', '3',
'3', '5', '3',
'3', '5', '3',
'3', '5', '4',
'3', '5', '4',
'3', '5', '5',
'3', '5', '5',
'3', '5', '6',
'3', '5', '6',
'3', '5', '7',
'3', '5', '7',
'3', '5', '8',
'3', '5', '8',
'3', '5', '9',
'3', '5', '9',
'3', '6', '0',
'3', '6', '0',
'3', '6', '1',
'3', '6', '1',
'3', '6', '2',
'3', '6', '2',
'3', '6', '3',
'3', '6', '3',
'3', '6', '4',
'3', '6', '4',
'3', '6', '5',
'3', '6', '5',
'3', '6', '5',
'3', '6', '6',
'3', '6', '6',
'3', '6', '7',
'3', '6', '7',
'3', '6', '8',
'3', '6', '8',
'3', '6', '9',
'3', '6', '9',
'3', '7', '0',
'3', '7', '0',
'3', '7', '1',
'3', '7', '1',
'3', '7', '2',
'3', '7', '2',
'3', '7', '3',
'3', '7', '3',
'3', '7', '4',
'3', '7', '4',
'3', '7', '5',
'3', '7', '5',
'3', '7', '6',
'3', '7', '6',
'3', '7', '6',
'3', '7', '7',
'3', '7', '7',
'3', '7', '8',
'3', '7', '8',
'3', '7', '9',
'3', '7', '9',
'3', '8', '0',
'3', '8', '0',
'3', '8', '1',
'3', '8', '1',
'3', '8', '2',
'3', '8', '2',
'3', '8', '3',
'3', '8', '3',
'3', '8', '4',
'3', '8', '4',
'3', '8', '5',
'3', '8', '5',
'3', '8', '6',
'3', '8', '6',
'3', '8', '7',
'3', '8', '7',
'3', '8', '7',
'3', '8', '8',
'3', '8', '8',
'3', '8', '9',
'3', '8', '9',
'3', '9', '0',
'3', '9', '0',
'3', '9', '1',
'3', '9', '1',
'3', '9', '2',
'3', '9', '2',
'3', '9', '3',
'3', '9', '3',
'3', '9', '4',
'3', '9', '4',
'3', '9', '5',
'3', '9', '5',
'3', '9', '6',
'3', '9', '6',
'3', '9', '7',
'3', '9', '7',
'3', '9', '8',
'3', '9', '8',
'3', '9', '9',
'3', '9', '9',
'3', '9', '9',
'4', '0', '0',
'4', '0', '0',
'4', '0', '1',
'4', '0', '1',
'4', '0', '2',
'4', '0', '2',
'4', '0', '3',
'4', '0', '3',
'4', '0', '4',
'4', '0', '4',
'4', '0', '5',
'4', '0', '5',
'4', '0', '6',
'4', '0', '6',
'4', '0', '7',
'4', '0', '7',
'4', '0', '8',
'4', '0', '8',
'4', '0', '9',
'4', '0', '9',
'4', '1', '0',
'4', '1', '0',
'4', '1', '0',
'4', '1', '1',
'4', '1', '1',
'4', '1', '2',
'4', '1', '2',
'4', '1', '3',
'4', '1', '3',
'4', '1', '4',
'4', '1', '4',
'4', '1', '5',
'4', '1', '5',
'4', '1', '6',
'4', '1', '6',
'4', '1', '7',
'4', '1', '7',
'4', '1', '8',
'4', '1', '8',
'4', '1', '9',
'4', '1', '9',
'4', '2', '0',
'4', '2', '0',
'4', '2', '1',
'4', '2', '1',
'4', '2', '2',
'4', '2', '2',
'4', '2', '2',
'4', '2', '3',
'4', '2', '3',
'4', '2', '4',
'4', '2', '4',
'4', '2', '5',
'4', '2', '5',
'4', '2', '6',
'4', '2', '6',
'4', '2', '7',
'4', '2', '7',
'4', '2', '8',
'4', '2', '8',
'4', '2', '9',
'4', '2', '9',
'4', '3', '0',
'4', '3', '0',
'4', '3', '1',
'4', '3', '1',
'4', '3', '2',
'4', '3', '2',
'4', '3', '3',
'4', '3', '3',
'4', '3', '3',
'4', '3', '4',
'4', '3', '4',
'4', '3', '5',
'4', '3', '5',
'4', '3', '6',
'4', '3', '6',
'4', '3', '7',
'4', '3', '7',
'4', '3', '8',
'4', '3', '8',
'4', '3', '9',
'4', '3', '9',
'4', '4', '0',
'4', '4', '0',
'4', '4', '1',
'4', '4', '1',
'4', '4', '2',
'4', '4', '2',
'4', '4', '3',
'4', '4', '3',
'4', '4', '4',
'4', '4', '4',
'4', '4', '4',
'4', '4', '5',
'4', '4', '5',
'4', '4', '6',
'4', '4', '6',
'4', '4', '7',
'4', '4', '7',
'4', '4', '8',
'4', '4', '8',
'4', '4', '9',
'4', '4', '9',
'4', '5', '0',
'4', '5', '0',
'4', '5', '1',
'4', '5', '1',
'4', '5', '2',
'4', '5', '2',
'4', '5', '3',
'4', '5', '3',
'4', '5', '4',
'4', '5', '4',
'4', '5', '5',
'4', '5', '5',
'4', '5', '6',
'4', '5', '6',
'4', '5', '6',
'4', '5', '7',
'4', '5', '7',
'4', '5', '8',
'4', '5', '8',
'4', '5', '9',
'4', '5', '9',
'4', '6', '0',
'4', '6', '0',
'4', '6', '1',
'4', '6', '1',
'4', '6', '2',
'4', '6', '2',
'4', '6', '3',
'4', '6', '3',
'4', '6', '4',
'4', '6', '4',
'4', '6', '5',
'4', '6', '5',
'4', '6', '6',
'4', '6', '6',
'4', '6', '7',
'4', '6', '7',
'4', '6', '7',
'4', '6', '8',
'4', '6', '8',
'4', '6', '9',
'4', '6', '9',
'4', '7', '0',
'4', '7', '0',
'4', '7', '1',
'4', '7', '1',
'4', '7', '2',
'4', '7', '2',
'4', '7', '3',
'4', '7', '3',
'4', '7', '4',
'4', '7', '4',
'4', '7', '5',
'4', '7', '5',
'4', '7', '6',
'4', '7', '6',
'4', '7', '7',
'4', '7', '7',
'4', '7', '8',
'4', '7', '8',
'4', '7', '9',
'4', '7', '9',
'4', '7', '9',
'4', '8', '0',
'4', '8', '0',
'4', '8', '1',
'4', '8', '1',
'4', '8', '2',
'4', '8', '2',
'4', '8', '3',
'4', '8', '3',
'4', '8', '4',
'4', '8', '4',
'4', '8', '5',
'4', '8', '5',
'4', '8', '6',
'4', '8', '6',
'4', '8', '7',
'4', '8', '7',
'4', '8', '8',
'4', '8', '8',
'4', '8', '9',
'4', '8', '9',
'4', '9', '0',
'4', '9', '0',
};
...@@ -4,21 +4,36 @@ ...@@ -4,21 +4,36 @@
#define PIN_BUTTON_4 2 #define PIN_BUTTON_4 2
#define PIN_ADC 7 // A7 #define PIN_ADC 7 // A7
#define BUTTON_1 0 #define BUTTON_RANGE_DN 0
#define BUTTON_2 1 #define BUTTON_RANGE_UP 1
#define BUTTON_3 2 #define BUTTON_FREQ 2 // Change frequency
#define BUTTON_4 3 #define BUTTON_RUNSTOP 3
// Cursor values #define PERIOD_10MS 0
#define CURSOR_1 "5.00" #define PERIOD_1MS 1
#define CURSOR_2 "0.00" #define PERIOD_100US 2
#define PERIOD_10US 3
#define PERIOD_100MS 4
#define PERIOD_1S 5
// Cursor values in format xx.x
#define CURSOR_1 "5.0"
#define CURSOR_2 "0.0"
// https://www.gammon.com.au/adc // https://www.gammon.com.au/adc
// Globals
char G_PrintfBuf[32];
char G_CursorBuf[5+1+5+1+1];
char G_MeasureFreq;
// ReadButton globals
unsigned long G_LastDebounceTime[4]; unsigned long G_LastDebounceTime[4];
int G_ButtonState[4]; int G_ButtonState[4];
int G_PrevButtonState[4]; int G_PrevButtonState[4];
#define DEBOUNCE_DELAY_MS 25 #define DEBOUNCE_DELAY_MS 25
// Flash data
extern const char FLASH_VoltageTable[1024 * 3] PROGMEM;
byte ReadButton(int Button) byte ReadButton(int Button)
{ {
const int ButtonPins[4] = { PIN_BUTTON_1, PIN_BUTTON_2, PIN_BUTTON_3, PIN_BUTTON_4 }; const int ButtonPins[4] = { PIN_BUTTON_1, PIN_BUTTON_2, PIN_BUTTON_3, PIN_BUTTON_4 };
...@@ -56,12 +71,6 @@ void InitADC() ...@@ -56,12 +71,6 @@ void InitADC()
ADCSRA |= bit(ADATE); // Enable auto trigger ADCSRA |= bit(ADATE); // Enable auto trigger
} }
#define PERIOD_10MS 0
#define PERIOD_1MS 1
#define PERIOD_100US 2
#define PERIOD_10US 3
#define PERIOD_100MS 4
#define PERIOD_1S 5
// Set timer 1 to a specified measuring interval // Set timer 1 to a specified measuring interval
void SetTimerPeriod(int Period) void SetTimerPeriod(int Period)
{ {
...@@ -69,7 +78,7 @@ void SetTimerPeriod(int Period) ...@@ -69,7 +78,7 @@ void SetTimerPeriod(int Period)
TCCR1A = 0; TCCR1A = 0;
TCCR1B = 0; // Reset TCCR TCCR1B = 0; // Reset TCCR
TCNT0 = 0; // Reset the counter TCNT0 = 0; // Reset the counter
// http://www.8bit-era.cz/arduino-timer-interrupts-calculator.html // http://www.8bit-era.cz/arduino-timer-interrupts-calculator.html
switch(Period) switch(Period)
{ {
...@@ -115,24 +124,23 @@ void SetTimerPeriod(int Period) ...@@ -115,24 +124,23 @@ void SetTimerPeriod(int Period)
sei(); sei();
} }
volatile int results[100];
volatile int resultNumber = 0;
char G_PrintfBuf[32];
// ADC complete ISR // ADC complete ISR
ISR(ADC_vect) ISR(ADC_vect)
{ {
//int tstart = micros(); //unsigned long tstart = micros();
// Range is 0-4.8 V //Serial.println((ADC / 1023.0) * 4.8);
// TODO the printing here needs to be faster Serial.write(G_CursorBuf);
sprintf(G_PrintfBuf, "%s\t%s\t", CURSOR_1, CURSOR_2); volatile unsigned int Value = ADC;
Serial.print(G_PrintfBuf); int P = Value * 3;
Serial.println((ADC / 1023.0) * 4.8); Serial.write(pgm_read_word_near(FLASH_VoltageTable + P + 0));
//Serial.println(5); Serial.write('.');
Serial.write(pgm_read_word_near(FLASH_VoltageTable + P + 1));
//sprintf(G_PrintfBuf, "%d\n", micros() - tstart); Serial.write(pgm_read_word_near(FLASH_VoltageTable + P + 2));
//Serial.println(G_PrintfBuf); Serial.write('\r');
Serial.write('\n');
//Serial.println(micros() - tstart);
} }
EMPTY_INTERRUPT (TIMER1_COMPB_vect); EMPTY_INTERRUPT (TIMER1_COMPB_vect);
...@@ -147,22 +155,45 @@ void setup() ...@@ -147,22 +155,45 @@ void setup()
Serial.begin(2000000); Serial.begin(2000000);
SetTimerPeriod(PERIOD_100US); SetTimerPeriod(PERIOD_10MS);
G_MeasureFreq = PERIOD_10MS;
InitADC(); InitADC();
for(int i = 0; i < 4; i++) G_LastDebounceTime[i] = 0; for(int i = 0; i < 4; i++) G_LastDebounceTime[i] = 0;
for(int i = 0; i < 4; i++) G_PrevButtonState[i] = HIGH; for(int i = 0; i < 4; i++) G_PrevButtonState[i] = HIGH;
sprintf(G_CursorBuf, "%s\t%s\t", CURSOR_1, CURSOR_2); // Precalculate the cursor string
} }
int lstate = LOW;
void loop() void loop()
{ {
for(int i = 0; i < 4; i++) if(ReadButton(BUTTON_RANGE_UP) == 1)
{ {
byte State = ReadButton(i); if(lstate == LOW) lstate = HIGH;
if(State == 1) else lstate = LOW;
{ digitalWrite(LED_BUILTIN, lstate);
sprintf(G_PrintfBuf, "Button %d is %d\n", i, State); }
Serial.println(G_PrintfBuf);
} if(ReadButton(BUTTON_RANGE_DN) == 1)
{
if(lstate == LOW) lstate = HIGH;
else lstate = LOW;
digitalWrite(LED_BUILTIN, lstate);
}
if(ReadButton(BUTTON_FREQ) == 1)
{
G_MeasureFreq++;
if(G_MeasureFreq == PERIOD_10US + 1) G_MeasureFreq = PERIOD_10MS;
//if(G_MeasureFreq == PERIOD_1S + 1) G_MeasureFreq = PERIOD_10MS;
SetTimerPeriod(G_MeasureFreq);
}
if(ReadButton(BUTTON_RUNSTOP) == 1)
{
if(lstate == LOW) lstate = HIGH;
else lstate = LOW;
digitalWrite(LED_BUILTIN, lstate);
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment