Team Fox / Mbed 2 deprecated ACS_Flowchart_BAE

Dependencies:   FreescaleIAP mbed-rtos mbed

Fork of QM_BAE_review_1 by Team Fox

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers BCN.h Source File

BCN.h

00001 #include "mbed.h"
00002 
00003 //STATES
00004 #define BCN_RF_SILENCE 0 
00005 #define BCN_TX_DISABLED 1
00006 #define BCN_TX_STANDBY 2
00007 #define BCN_TX_FAILURE 3
00008 #define BCN_TX_SUCCESS 4
00009 
00010 //Size of tx data
00011 #define SHORT_TX_DATA 60    //in bytes
00012 #define LONG_TX_DATA 125    //in bytes      
00013 
00014 //#define RF_SILENCE_TIME 35*60
00015 #define RF_SILENCE_TIME 5 //changed for testing
00016 
00017 //FUNCTION PROTOTYPING
00018 void FCTN_BCN_INIT();
00019 void FCTN_BCN_FEN();
00020 void FCTN_BCN_TX_MAIN();
00021 void Set_BCN_TX_STATUS(uint8_t);
00022 uint8_t check_Temperature();
00023 void SHORT_BCN_TX();
00024 void LONG_BCN_TX();
00025 void Init_BEACON_HW();
00026 void writereg(uint8_t,uint8_t);
00027 uint8_t readreg(uint8_t);
00028 void clearTxBuf();
00029 uint8_t setFrequency(double);
00030 bool Check_ACK_RECEIVED();
00031 void reset_rfm();
00032 
00033 #define RF22_MAX_MESSAGE_LEN 255
00034 
00035 //These values we set for FIFO thresholds
00036 #define RF22_TXFFAEM_THRESHOLD 40
00037 
00038 //Registers
00039 #define RF22_REG_00_DEVICE_TYPE                         0x00
00040 #define RF22_REG_02_DEVICE_STATUS                       0x02
00041 #define RF22_REG_03_INTERRUPT_STATUS1                   0x03
00042 #define RF22_REG_04_INTERRUPT_STATUS2                   0x04
00043 #define RF22_REG_07_OPERATING_MODE1                     0x07
00044 #define RF22_REG_08_OPERATING_MODE2                     0x08
00045 #define RF22_REG_09_OSCILLATOR_LOAD_CAPACITANCE         0x09
00046 #define RF22_REG_0B_GPIO_CONFIGURATION0                 0x0b
00047 #define RF22_REG_0C_GPIO_CONFIGURATION1                 0x0c
00048 #define RF22_REG_0D_GPIO_CONFIGURATION2                 0x0d
00049 #define RF22_REG_0F_ADC_CONFIGURATION                   0x0f
00050 #define RF22_REG_11_ADC_Value                           0x11
00051 #define RF22_REG_12_Temperature_Sensor_Calibration      0x12
00052 #define RF22_REG_1C_IF_FILTER_BANDWIDTH                 0x1c
00053 #define RF22_REG_1F_CLOCK_RECOVERY_GEARSHIFT_OVERRIDE   0x1f
00054 #define RF22_REG_20_CLOCK_RECOVERY_OVERSAMPLING_RATE    0x20
00055 #define RF22_REG_21_CLOCK_RECOVERY_OFFSET2              0x21
00056 #define RF22_REG_22_CLOCK_RECOVERY_OFFSET1              0x22
00057 #define RF22_REG_23_CLOCK_RECOVERY_OFFSET0              0x23
00058 #define RF22_REG_24_CLOCK_RECOVERY_TIMING_LOOP_GAIN1    0x24
00059 #define RF22_REG_25_CLOCK_RECOVERY_TIMING_LOOP_GAIN0    0x25
00060 #define RF22_REG_26_RSSI                                0x26
00061 #define RF22_REG_27_RSSI_THRESHOLD                      0x27
00062 #define RF22_REG_28_ANTENNA_DIVERSITY1                  0x28
00063 #define RF22_REG_29_ANTENNA_DIVERSITY2                  0x29
00064 #define RF22_REG_2A_AFC_LIMITER                         0x2a
00065 #define RF22_REG_2B_AFC_CORRECTION_READ                 0x2b
00066 #define RF22_REG_2C_OOK_COUNTER_VALUE_1                 0x2c
00067 #define RF22_REG_2D_OOK_COUNTER_VALUE_2                 0x2d
00068 #define RF22_REG_2E_SLICER_PEAK_HOLD                    0x2e
00069 #define RF22_REG_30_DATA_ACCESS_CONTROL                 0x30
00070 #define RF22_REG_31_EZMAC_STATUS                        0x31
00071 #define RF22_REG_32_HEADER_CONTROL1                     0x32
00072 #define RF22_REG_33_HEADER_CONTROL2                     0x33
00073 #define RF22_REG_34_PREAMBLE_LENGTH                     0x34
00074 #define RF22_REG_35_PREAMBLE_DETECTION_CONTROL1         0x35
00075 #define RF22_REG_36_SYNC_WORD3                          0x36
00076 #define RF22_REG_37_SYNC_WORD2                          0x37
00077 #define RF22_REG_38_SYNC_WORD1                          0x38
00078 #define RF22_REG_39_SYNC_WORD0                          0x39
00079 #define RF22_REG_3A_TRANSMIT_HEADER3                    0x3a
00080 #define RF22_REG_3B_TRANSMIT_HEADER2                    0x3b
00081 #define RF22_REG_3C_TRANSMIT_HEADER1                    0x3c
00082 #define RF22_REG_3D_TRANSMIT_HEADER0                    0x3d
00083 #define RF22_REG_3E_PACKET_LENGTH                       0x3e
00084 #define RF22_REG_3F_CHECK_HEADER3                       0x3f
00085 #define RF22_REG_40_CHECK_HEADER2                       0x40
00086 #define RF22_REG_41_CHECK_HEADER1                       0x41
00087 #define RF22_REG_42_CHECK_HEADER0                       0x42
00088 #define RF22_REG_43_HEADER_ENABLE3                      0x43
00089 #define RF22_REG_44_HEADER_ENABLE2                      0x44
00090 #define RF22_REG_45_HEADER_ENABLE1                      0x45
00091 #define RF22_REG_46_HEADER_ENABLE0                      0x46
00092 #define RF22_REG_47_RECEIVED_HEADER3                    0x47
00093 #define RF22_REG_48_RECEIVED_HEADER2                    0x48
00094 #define RF22_REG_49_RECEIVED_HEADER1                    0x49
00095 #define RF22_REG_4A_RECEIVED_HEADER0                    0x4a
00096 #define RF22_REG_4B_RECEIVED_PACKET_LENGTH              0x4b
00097 #define RF22_REG_58                                     0x58
00098 #define RF22_REG_60_CHANNEL_FILTER_COEFFICIENT_ADDRESS  0x60
00099 #define RF22_REG_61_CHANNEL_FILTER_COEFFICIENT_VALUE    0x61
00100 #define RF22_REG_62_CRYSTAL_OSCILLATOR_POR_CONTROL      0x62
00101 #define RF22_REG_63_RC_OSCILLATOR_COARSE_CALIBRATION    0x63
00102 #define RF22_REG_64_RC_OSCILLATOR_FINE_CALIBRATION      0x64
00103 #define RF22_REG_65_LDO_CONTROL_OVERRIDE                0x65
00104 #define RF22_REG_66_LDO_LEVEL_SETTINGS                  0x66
00105 #define RF22_REG_67_DELTA_SIGMA_ADC_TUNING1             0x67
00106 #define RF22_REG_68_DELTA_SIGMA_ADC_TUNING2             0x68
00107 #define RF22_REG_69_AGC_OVERRIDE1                       0x69
00108 #define RF22_REG_6A_AGC_OVERRIDE2                       0x6a
00109 #define RF22_REG_6B_GFSK_FIR_FILTER_COEFFICIENT_ADDRESS 0x6b
00110 #define RF22_REG_6C_GFSK_FIR_FILTER_COEFFICIENT_VALUE   0x6c
00111 #define RF22_REG_6D_TX_POWER                            0x6d
00112 #define RF22_REG_6E_TX_DATA_RATE                        0x6e
00113 #define RF22_REG_6F_TX_DATA_RATE                        0x6f
00114 #define RF22_REG_70_MODULATION_CONTROL1                 0x70
00115 #define RF22_REG_71_MODULATION_CONTROL2                 0x71
00116 #define RF22_REG_72_FREQUENCY_DEVIATION                 0x72
00117 #define RF22_REG_73_FREQUENCY_OFFSET1                   0x73
00118 #define RF22_REG_74_FREQUENCY_OFFSET2                   0x74
00119 #define RF22_REG_75_FREQUENCY_BAND_SELECT               0x75
00120 #define RF22_REG_76_NOMINAL_CARRIER_FREQUENCY1          0x76
00121 #define RF22_REG_77_NOMINAL_CARRIER_FREQUENCY0          0x77
00122 #define RF22_REG_79_FREQUENCY_HOPPING_CHANNEL_SELECT    0x79
00123 #define RF22_REG_7A_FREQUENCY_HOPPING_STEP_SIZE         0x7a
00124 #define RF22_REG_7C_TX_FIFO_CONTROL1                    0x7c
00125 #define RF22_REG_7D_TX_FIFO_CONTROL2                    0x7d
00126 #define RF22_REG_7E_RX_FIFO_CONTROL                     0x7e
00127 #define RF22_REG_7F_FIFO_ACCESS                         0x7f