| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- #include "tmsgheaders.h"
- void rst_for_fpga(void *bar1) {
- uint32_t *ptr = bar1 + RST_ADDR;
- *ptr = RST_FOR_FPGA_ON;
- usleep(1);
- *ptr = RST_FOR_FPGA_OFF;
- }
- void shift_reg (void *bar1) {
- uint32_t *ptr = bar1 + LMX_BASE_ADDR;
- *ptr = InitShRegHeader;
- uint32_t *data_ptr = bar1 + LMX_BASE_ADDR ;
- *data_ptr = SHIFT_REG;
- }
- void key_switch (void *bar1, double freq){
- if (freq >= 100e3 && freq <= 1000e6) {
- uint32_t *ptr_header = bar1 + LMX_BASE_ADDR;
- *ptr_header = InitShRegHeader;
- // Data for Shift Reg
- uint32_t *ptr = bar1 + LMX_BASE_ADDR;
- *ptr = 0x1<<SHIFT_REG_SW1_RF_BITP|0x1<<SHIFT_REG_GPIO_SW_015_RF_BITP | 0x0<<SHIFT_REG_SW_MIXER_RF_BITP | 0x0<<SHIFT_REG_SW2_RF_BITP | 0x1 << SHIFT_REG_SW_RF_BITP;
- }
- else if (freq > 1000e6 && freq <= 1300e6) {
- uint32_t *ptr_header = bar1 + LMX_BASE_ADDR;
- *ptr_header = InitShRegHeader;
- // Data for Shift Reg
- uint32_t *ptr = bar1 + LMX_BASE_ADDR;
- *ptr = 0x1<<SHIFT_REG_SW1_RF_BITP | 0x1<<SHIFT_REG_SW2_RF_BITP | 0x1<<SHIFT_REG_GPIO_SW_015_RF_BITP | 0x1<<SHIFT_REG_SW_MIXER_RF_BITP | 0x1<<SHIFT_REG_SW3_RF_BITP | 0x1 << SHIFT_REG_SW_RF_BITP;
- }
- else if (freq > 1300e6 && freq <= 2200e6) {
- uint32_t *ptr_header = bar1 + LMX_BASE_ADDR;
- *ptr_header = InitShRegHeader;
- // Data for Shift Reg
- uint32_t *ptr = bar1 + LMX_BASE_ADDR;
- *ptr = 0x1<<SHIFT_REG_SW1_RF_BITP | 0x1<<SHIFT_REG_SW2_RF_BITP | 0x0<<SHIFT_REG_SW3_RF_BITP | 0x1<<SHIFT_REG_GPIO_SW_015_RF_BITP | 0x1<<SHIFT_REG_SW_MIXER_RF_BITP | 0x1 << SHIFT_REG_SW_RF_BITP;
- }
- else if (freq > 2200e6 && freq <= 3600e6) {
- uint32_t *ptr_header = bar1 + LMX_BASE_ADDR;
- *ptr_header = InitShRegHeader;
- // Data for Shift Reg
- uint32_t *ptr = bar1 + LMX_BASE_ADDR;
- *ptr = 0x1<<SHIFT_REG_SW1_RF_BITP | 0x0 <<SHIFT_REG_SW2_RF_BITP | 0x1<<SHIFT_REG_SW_MIXER_RF | 0x1<<SHIFT_REG_GPIO_SW_015_RF_BITP | 0x1 << SHIFT_REG_SW_RF_BITP;
- }
- else if (freq > 3600e6 && freq <= 5500e6) {
- uint32_t *ptr_header = bar1 + LMX_BASE_ADDR;
- *ptr_header = InitShRegHeader;
- // Data for Shift Reg
- uint32_t *ptr = bar1 + LMX_BASE_ADDR;
- *ptr = 0x0<<SHIFT_REG_SW1_RF_BITP | 0x1<<SHIFT_REG_SW_MIXER_RF | 0x1<<SHIFT_REG_GPIO_SW_015_RF_BITP | 0x1 << SHIFT_REG_SW_RF_BITP;
- }
- else if (freq >5500e6 && freq <= 9000e6){
- uint32_t *ptr_header = bar1 + LMX_BASE_ADDR;
- *ptr_header = InitShRegHeader;
- // Data for Shift Reg
- uint32_t *ptr = bar1 + LMX_BASE_ADDR;
- *ptr = 0x1<<SHIFT_REG_SW_MIXER_RF | 0x1<<SHIFT_REG_GPIO_SW_015_RF_BITP | 0x0 << SHIFT_REG_SW_RF_BITP;
- }
- };
-
|