Library for functionality of Blackberry Trackerball Breakout
Dependents: BlackberryTrackerballBreakout_HelloWorld
Trackball.cpp@0:9d5ffffa45a1, 2015-10-21 (annotated)
- Committer:
- jkerickson
- Date:
- Wed Oct 21 19:11:12 2015 +0000
- Revision:
- 0:9d5ffffa45a1
Library addition
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jkerickson | 0:9d5ffffa45a1 | 1 | #include "mbed.h" |
jkerickson | 0:9d5ffffa45a1 | 2 | #include "Trackball.h" |
jkerickson | 0:9d5ffffa45a1 | 3 | |
jkerickson | 0:9d5ffffa45a1 | 4 | |
jkerickson | 0:9d5ffffa45a1 | 5 | Trackball::Trackball(PinName pin_btn, PinName pin_lft, PinName pin_rht, PinName pin_up, PinName pin_dwn, PinName pin_wht, PinName pin_grn, PinName pin_red, PinName pin_blu) |
jkerickson | 0:9d5ffffa45a1 | 6 | : _pin_btn(pin_btn), _pin_lft(pin_lft), _pin_rht(pin_rht), _pin_up(pin_up), _pin_dwn(pin_dwn), _pin_wht(pin_wht), _pin_grn(pin_grn), _pin_red(pin_red), _pin_blu(pin_blu) |
jkerickson | 0:9d5ffffa45a1 | 7 | { |
jkerickson | 0:9d5ffffa45a1 | 8 | //initialize all LED pins to off. |
jkerickson | 0:9d5ffffa45a1 | 9 | |
jkerickson | 0:9d5ffffa45a1 | 10 | _pin_wht = 0; |
jkerickson | 0:9d5ffffa45a1 | 11 | _pin_grn = 0; |
jkerickson | 0:9d5ffffa45a1 | 12 | _pin_red = 0; |
jkerickson | 0:9d5ffffa45a1 | 13 | _pin_blu = 0; |
jkerickson | 0:9d5ffffa45a1 | 14 | |
jkerickson | 0:9d5ffffa45a1 | 15 | } |
jkerickson | 0:9d5ffffa45a1 | 16 | |
jkerickson | 0:9d5ffffa45a1 | 17 | void Trackball::write(unsigned int val, int color) |
jkerickson | 0:9d5ffffa45a1 | 18 | |
jkerickson | 0:9d5ffffa45a1 | 19 | { |
jkerickson | 0:9d5ffffa45a1 | 20 | if (color == color_WHITE){_pin_wht = val;} |
jkerickson | 0:9d5ffffa45a1 | 21 | else if(color == color_BLUE){_pin_blu = val;} |
jkerickson | 0:9d5ffffa45a1 | 22 | else if(color == color_GREEN){_pin_grn = val;} |
jkerickson | 0:9d5ffffa45a1 | 23 | else if(color == color_RED){_pin_red = val;} |
jkerickson | 0:9d5ffffa45a1 | 24 | else {printf("Invalid LED Color");} |
jkerickson | 0:9d5ffffa45a1 | 25 | } |
jkerickson | 0:9d5ffffa45a1 | 26 | unsigned int Trackball::read(int dir) |
jkerickson | 0:9d5ffffa45a1 | 27 | |
jkerickson | 0:9d5ffffa45a1 | 28 | { |
jkerickson | 0:9d5ffffa45a1 | 29 | unsigned int val; |
jkerickson | 0:9d5ffffa45a1 | 30 | if(dir == dir_UP){val = _pin_up;} |
jkerickson | 0:9d5ffffa45a1 | 31 | else if(dir == dir_DOWN){val = _pin_dwn;} |
jkerickson | 0:9d5ffffa45a1 | 32 | else if(dir == dir_RIGHT){val = _pin_rht;} |
jkerickson | 0:9d5ffffa45a1 | 33 | else if(dir == dir_LEFT){val = _pin_lft;} |
jkerickson | 0:9d5ffffa45a1 | 34 | else if(dir == dir_BUTTON){val = _pin_btn;} |
jkerickson | 0:9d5ffffa45a1 | 35 | return val; |
jkerickson | 0:9d5ffffa45a1 | 36 | |
jkerickson | 0:9d5ffffa45a1 | 37 | } |