Nobuki HIRAMINE
/
irsender
IR Sender
Diff: main.cpp
- Revision:
- 2:4fd8d143d73c
- Parent:
- 1:b2ed25e02889
- Child:
- 3:da80fe137d03
--- a/main.cpp Sat Dec 01 19:39:43 2012 +0000 +++ b/main.cpp Sun Dec 02 10:04:04 2012 +0000 @@ -2,26 +2,28 @@ #define DEBOUNCEDELAY 500 -// On the power of TV -short ARRAY_HIGHLOW[] = { 2461, 543, 1290, 514, 692, 507, 1289, 514, 692, 507, 1290, 514, 691, 507, 690, 508, 1289, 516, 717, 481, +// Turn ON the power of TV +/*short ARRAY_HIGHLOW[] = { 2461, 543, 1290, 514, 692, 507, 1289, 514, 692, 507, 1290, 514, 691, 507, 690, 508, 1289, 516, 717, 481, 690, 508, 689, 508, 692, 25634, 2487, 517, 1289, 516, 688, 510, 1289, 515, 689, 509, 1289, 518, 686, 510, 664, 534, 1288, 516, 691, 507, 690, 509, 689, 508, 690, 25635, 2490, 515, 1289, 515, 691, 508, 1288, 516, 691, 508, 1288, 515, 691, 508, 690, 507, 1291, 513, 693, 507, 689, 506, 692, 509, 689, 25635, 2490, 515, 1288, 516, 692, 506, 1289, 516, 691, 507, 1289, 516, 691, 506, 690, 508, 1291, 514, 691, 507, 690, 508, 690, 509, 689, 25616, 2508, 515, 1290, 515, 690, 508, 1289, 516, 690, 508, 1288, 516, 690, 509, 688, 509, 1289, 515, 689, 509, 690, 508, 690, 508, 690, 25636, 2489, 515, 1290, 517, 688, 508, 1289, 517, 689, 507, - 1290, 516, 690, 507, 692, 506, 1289, 515, 691, 507, 692, 507, 690, 506, 692,}; + 1290, 516, 690, 507, 692, 506, 1289, 515, 691, 507, 692, 507, 690, 506, 692,};*/ DigitalIn g_dpinButton(p30); PwmOut g_pwmout(p21); -void onPress() +void sendSignal() { - int iCountOnOff = sizeof( ARRAY_HIGHLOW ) / sizeof( ARRAY_HIGHLOW[0] ); - for( int iIndexOnOff = 0; iIndexOnOff < iCountOnOff; iIndexOnOff++ ) + g_pwmout.period_us( 26 ); // 38KHz => 1/38000[s] = 26.315 * 10 ^ -6 [s] = 26.315 [us] + + int iCountHighLow = sizeof( ARRAY_HIGHLOW ) / sizeof( ARRAY_HIGHLOW[0] ); + for( int iIndexHighLow = 0; iIndexHighLow < iCountHighLow; iIndexHighLow++ ) { - g_pwmout.write( 0.5 * (1 - (iIndexOnOff % 2)) ); // iIndexOnOff : even number -> 0.5, uneven number -> 0 - wait_us( ARRAY_HIGHLOW[iIndexOnOff] ); + g_pwmout.write( 0.5 * (1 - (iIndexHighLow % 2)) ); // iIndexHighLow : even number -> 0.5, uneven number -> 0 + wait_us( ARRAY_HIGHLOW[iIndexHighLow] ); } } @@ -32,8 +34,6 @@ int iMilliSec_prev = timer.read_ms(); int iButtonState_prev = 0; - g_pwmout.period_us( 26 ); // 38KHz => 1/38000[s] = 26.315 * 10 ^ -6 [s] = 26.315 [us] - while(1) { int iButtonState = g_dpinButton; @@ -44,7 +44,7 @@ int iMilliSec = timer.read_ms(); if( DEBOUNCEDELAY < (iMilliSec - iMilliSec_prev) ) { - onPress(); + sendSignal(); } iMilliSec_prev = iMilliSec;