stdalone beacon without flowchart
Embed:
(wiki syntax)
Show/hide line numbers
beacon.h
00001 #include "mbed.h" 00002 00003 #define TIMES 20 00004 #define RX_DATA 364 //in bytes 00005 #define TX_DATA 49 //in bytes 00006 00007 void writereg(uint8_t reg,uint8_t val); 00008 uint8_t readreg(uint8_t reg); 00009 void clearTxBuf(); 00010 void clearRxBuf(); 00011 int setFrequency(float,float); 00012 void init(); 00013 00014 #define RF22_MAX_MESSAGE_LEN 255 00015 // These values we set for FIFO thresholds 00016 #define RF22_TXFFAEM_THRESHOLD 4 00017 #define RF22_RXFFAFULL_THRESHOLD 55 00018 00019 // Register names 00020 #define RF22_REG_00_DEVICE_TYPE 0x00 00021 #define RF22_REG_02_DEVICE_STATUS 0x02 00022 #define RF22_REG_03_INTERRUPT_STATUS1 0x03 00023 #define RF22_REG_04_INTERRUPT_STATUS2 0x04 00024 #define RF22_REG_07_OPERATING_MODE1 0x07 00025 #define RF22_REG_08_OPERATING_MODE2 0x08 00026 #define RF22_REG_09_OSCILLATOR_LOAD_CAPACITANCE 0x09 00027 #define RF22_REG_0B_GPIO_CONFIGURATION0 0x0b 00028 #define RF22_REG_0C_GPIO_CONFIGURATION1 0x0c 00029 #define RF22_REG_0D_GPIO_CONFIGURATION2 0x0d 00030 #define RF22_REG_1C_IF_FILTER_BANDWIDTH 0x1c 00031 #define RF22_REG_1F_CLOCK_RECOVERY_GEARSHIFT_OVERRIDE 0x1f 00032 #define RF22_REG_20_CLOCK_RECOVERY_OVERSAMPLING_RATE 0x20 00033 #define RF22_REG_21_CLOCK_RECOVERY_OFFSET2 0x21 00034 #define RF22_REG_22_CLOCK_RECOVERY_OFFSET1 0x22 00035 #define RF22_REG_23_CLOCK_RECOVERY_OFFSET0 0x23 00036 #define RF22_REG_24_CLOCK_RECOVERY_TIMING_LOOP_GAIN1 0x24 00037 #define RF22_REG_25_CLOCK_RECOVERY_TIMING_LOOP_GAIN0 0x25 00038 #define RF22_REG_26_RSSI 0x26 00039 #define RF22_REG_27_RSSI_THRESHOLD 0x27 00040 #define RF22_REG_28_ANTENNA_DIVERSITY1 0x28 00041 #define RF22_REG_29_ANTENNA_DIVERSITY2 0x29 00042 #define RF22_REG_2A_AFC_LIMITER 0x2a 00043 #define RF22_REG_2B_AFC_CORRECTION_READ 0x2b 00044 #define RF22_REG_2C_OOK_COUNTER_VALUE_1 0x2c 00045 #define RF22_REG_2D_OOK_COUNTER_VALUE_2 0x2d 00046 #define RF22_REG_2E_SLICER_PEAK_HOLD 0x2e 00047 #define RF22_REG_30_DATA_ACCESS_CONTROL 0x30 00048 #define RF22_REG_31_EZMAC_STATUS 0x31 00049 #define RF22_REG_32_HEADER_CONTROL1 0x32 00050 #define RF22_REG_33_HEADER_CONTROL2 0x33 00051 #define RF22_REG_34_PREAMBLE_LENGTH 0x34 00052 #define RF22_REG_35_PREAMBLE_DETECTION_CONTROL1 0x35 00053 #define RF22_REG_36_SYNC_WORD3 0x36 00054 #define RF22_REG_37_SYNC_WORD2 0x37 00055 #define RF22_REG_38_SYNC_WORD1 0x38 00056 #define RF22_REG_39_SYNC_WORD0 0x39 00057 #define RF22_REG_3A_TRANSMIT_HEADER3 0x3a 00058 #define RF22_REG_3B_TRANSMIT_HEADER2 0x3b 00059 #define RF22_REG_3C_TRANSMIT_HEADER1 0x3c 00060 #define RF22_REG_3D_TRANSMIT_HEADER0 0x3d 00061 #define RF22_REG_3E_PACKET_LENGTH 0x3e 00062 #define RF22_REG_3F_CHECK_HEADER3 0x3f 00063 #define RF22_REG_40_CHECK_HEADER2 0x40 00064 #define RF22_REG_41_CHECK_HEADER1 0x41 00065 #define RF22_REG_42_CHECK_HEADER0 0x42 00066 #define RF22_REG_43_HEADER_ENABLE3 0x43 00067 #define RF22_REG_44_HEADER_ENABLE2 0x44 00068 #define RF22_REG_45_HEADER_ENABLE1 0x45 00069 #define RF22_REG_46_HEADER_ENABLE0 0x46 00070 #define RF22_REG_47_RECEIVED_HEADER3 0x47 00071 #define RF22_REG_48_RECEIVED_HEADER2 0x48 00072 #define RF22_REG_49_RECEIVED_HEADER1 0x49 00073 #define RF22_REG_4A_RECEIVED_HEADER0 0x4a 00074 #define RF22_REG_4B_RECEIVED_PACKET_LENGTH 0x4b 00075 #define RF22_REG_58 0x58 00076 #define RF22_REG_60_CHANNEL_FILTER_COEFFICIENT_ADDRESS 0x60 00077 #define RF22_REG_61_CHANNEL_FILTER_COEFFICIENT_VALUE 0x61 00078 #define RF22_REG_62_CRYSTAL_OSCILLATOR_POR_CONTROL 0x62 00079 #define RF22_REG_63_RC_OSCILLATOR_COARSE_CALIBRATION 0x63 00080 #define RF22_REG_64_RC_OSCILLATOR_FINE_CALIBRATION 0x64 00081 #define RF22_REG_65_LDO_CONTROL_OVERRIDE 0x65 00082 #define RF22_REG_66_LDO_LEVEL_SETTINGS 0x66 00083 #define RF22_REG_67_DELTA_SIGMA_ADC_TUNING1 0x67 00084 #define RF22_REG_68_DELTA_SIGMA_ADC_TUNING2 0x68 00085 #define RF22_REG_69_AGC_OVERRIDE1 0x69 00086 #define RF22_REG_6A_AGC_OVERRIDE2 0x6a 00087 #define RF22_REG_6B_GFSK_FIR_FILTER_COEFFICIENT_ADDRESS 0x6b 00088 #define RF22_REG_6C_GFSK_FIR_FILTER_COEFFICIENT_VALUE 0x6c 00089 #define RF22_REG_6D_TX_POWER 0x6d 00090 #define RF22_REG_6E_TX_DATA_RATE1 0x6e 00091 #define RF22_REG_6F_TX_DATA_RATE0 0x6f 00092 #define RF22_REG_70_MODULATION_CONTROL1 0x70 00093 #define RF22_REG_71_MODULATION_CONTROL2 0x71 00094 #define RF22_REG_72_FREQUENCY_DEVIATION 0x72 00095 #define RF22_REG_73_FREQUENCY_OFFSET1 0x73 00096 #define RF22_REG_74_FREQUENCY_OFFSET2 0x74 00097 #define RF22_REG_75_FREQUENCY_BAND_SELECT 0x75 00098 #define RF22_REG_76_NOMINAL_CARRIER_FREQUENCY1 0x76 00099 #define RF22_REG_77_NOMINAL_CARRIER_FREQUENCY0 0x77 00100 #define RF22_REG_79_FREQUENCY_HOPPING_CHANNEL_SELECT 0x79 00101 #define RF22_REG_7A_FREQUENCY_HOPPING_STEP_SIZE 0x7a 00102 #define RF22_REG_7C_TX_FIFO_CONTROL1 0x7c 00103 #define RF22_REG_7D_TX_FIFO_CONTROL2 0x7d 00104 #define RF22_REG_7E_RX_FIFO_CONTROL 0x7e 00105 #define RF22_REG_7F_FIFO_ACCESS 0x7f
Generated on Sat Jul 23 2022 13:34:53 by
1.7.2