![]() |
Code to Read the Binary Inputs on Analog Buttons
Does anyone have example code on how to read the binary digits from the OIs analog inputs? According to Mike only the first 4 binary digits are used to determine buttons being pressed.
For Example: 1000 0000 = Button 1 0100 0000 = Button 2 0010 0000 = BUtton 3 0001 0000 = Button 4 The trouble is the last four digits are random and fluctuate greatly depending on what mood the chicklet is in so sometimes 1000 0000 = Button 1 or 1000 0001 = Button 1 or 1000 0010 = Button 1 The problem is we really don't want to make 4 cases for every button. So we just want to ignore them. |
Re: Code to Read the Binary Inputs on Analog Buttons
Quote:
Make a set of global variables, and a function that you call every time through the loop that sets these variables from the OI state. Something like this should work (and I've gotta love any chance I have to legitimately use C' ?: trinary operator) : Code:
int p1_sw_5,p1_sw_6,p1_sw_7,p1_sw_8; // Virtual buttons |
Re: Code to Read the Binary Inputs on Analog Buttons
Nice, never used that before :)
|
Re: Code to Read the Binary Inputs on Analog Buttons
now correct me if im wrong but isnt your use of the ? operator the same as the ! operator
im pretty sure that p1_sw_5 = !(p1_aux&1<<7); will do the same as p1_sw_5=(p1_aux&1<<7)?0:1; |
Re: Code to Read the Binary Inputs on Analog Buttons
the "(statement)?true:false" syntax is like an if statement in one line
if statement, then true, else false in this case, however, it would do the same |
Re: Code to Read the Binary Inputs on Analog Buttons
Quote:
|
| All times are GMT -5. The time now is 20:26. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi