IR Sender

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
nobuki
Date:
Sun Dec 02 10:04:04 2012 +0000
Parent:
1:b2ed25e02889
Child:
3:da80fe137d03
Commit message:
Version 2

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- 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;