Library for communicating with a Hubsan X4 quad
HubsanTx.cpp@1:3dec63fe89f4, 2015-01-01 (annotated)
- Committer:
- d34d
- Date:
- Thu Jan 01 19:31:19 2015 +0000
- Revision:
- 1:3dec63fe89f4
- Parent:
- 0:85bb69ce74b4
Update A7105 library head
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
d34d | 0:85bb69ce74b4 | 1 | #include "mbed.h" |
d34d | 0:85bb69ce74b4 | 2 | #include "HubsanTx.h" |
d34d | 0:85bb69ce74b4 | 3 | |
d34d | 0:85bb69ce74b4 | 4 | HubsanTx::HubsanTx(PinName mosi, PinName miso, PinName clk, PinName cs, uint32_t freqHz) |
d34d | 0:85bb69ce74b4 | 5 | : A7105(mosi, miso, clk, cs, freqHz) { |
d34d | 0:85bb69ce74b4 | 6 | } |
d34d | 0:85bb69ce74b4 | 7 | |
d34d | 0:85bb69ce74b4 | 8 | int8_t HubsanTx::init() { |
d34d | 0:85bb69ce74b4 | 9 | uint8_t if_calibration1; |
d34d | 0:85bb69ce74b4 | 10 | uint8_t vco_calibration0; |
d34d | 0:85bb69ce74b4 | 11 | uint8_t vco_calibration1; |
d34d | 0:85bb69ce74b4 | 12 | |
d34d | 0:85bb69ce74b4 | 13 | reset(); |
d34d | 0:85bb69ce74b4 | 14 | setId(0x55201041); |
d34d | 0:85bb69ce74b4 | 15 | writeRegister(A7105_0B_GPIO1_PIN_I, 0x19); |
d34d | 0:85bb69ce74b4 | 16 | writeRegister(A7105_01_MODE_CONTROL, 0x63); |
d34d | 0:85bb69ce74b4 | 17 | writeRegister(A7105_03_FIFOI, 0x0f); |
d34d | 0:85bb69ce74b4 | 18 | writeRegister(A7105_0D_CLOCK, 0x05); |
d34d | 0:85bb69ce74b4 | 19 | writeRegister(A7105_0E_DATA_RATE, 0x04); |
d34d | 0:85bb69ce74b4 | 20 | writeRegister(A7105_15_TX_II, 0x2b); |
d34d | 0:85bb69ce74b4 | 21 | writeRegister(A7105_18_RX, 0x62); |
d34d | 0:85bb69ce74b4 | 22 | writeRegister(A7105_19_RX_GAIN_I, 0x80); |
d34d | 0:85bb69ce74b4 | 23 | writeRegister(A7105_1C_RX_GAIN_IV, 0x0A); |
d34d | 0:85bb69ce74b4 | 24 | writeRegister(A7105_1F_CODE_I, 0x07); |
d34d | 0:85bb69ce74b4 | 25 | writeRegister(A7105_20_CODE_II, 0x17); |
d34d | 0:85bb69ce74b4 | 26 | writeRegister(A7105_29_RX_DEM_TEST_I, 0x47); |
d34d | 0:85bb69ce74b4 | 27 | |
d34d | 0:85bb69ce74b4 | 28 | strobe(A7105_STANDBY); |
d34d | 0:85bb69ce74b4 | 29 | |
d34d | 0:85bb69ce74b4 | 30 | return 1; |
d34d | 0:85bb69ce74b4 | 31 | } |