SPRAC94D September   2018  – March 2022 AFE030 , AFE031 , TMS320F28075 , TMS320F28075-Q1 , TMS320F28076 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28375S-Q1 , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377D-EP , TMS320F28377D-Q1 , TMS320F28377S , TMS320F28377S-Q1 , TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S

 

  1.   Trademarks
  2. FSK Overview
  3. Hardware Overview
    1. 2.1 Block Diagram
    2. 2.2 Hardware Setup
  4. Interfacing With the AFE03x
    1. 3.1 Configuring the AFE031
  5. Transmit Path
    1. 4.1 FSK Example Specifications
    2. 4.2 PWM Mode
      1. 4.2.1 Software Implementation
      2. 4.2.2 Testing Results
      3. 4.2.3 HRPWM vs. EPWM
    3. 4.3 DAC Mode
      1. 4.3.1 Software Implementation
      2. 4.3.2 Testing Results
      3. 4.3.3 OFDM Ability
    4. 4.4 Porting TX to LAUNCHXL-F280049C
      1. 4.4.1 PWM Mode Specific Porting
      2. 4.4.2 DAC Mode Specific Porting
  6. Receive Path
    1. 5.1 Receive Path Overview
    2. 5.2 Receiver Software Implementation
      1. 5.2.1 Initial Setup and Parameters
      2. 5.2.2 Interrupt Service Routines
      3. 5.2.3 Run Time Operation
      4. 5.2.4 Testing Results
      5. 5.2.5 System Utilization
      6. 5.2.6 Device Dependency and Porting
    3. 5.3 Tuning and Calibration
      1. 5.3.1 Setting the AFE03X's PGAs
      2. 5.3.2 Automatic Gain Control (AGC)
      3. 5.3.3 Setting the Bit Detection Threshold
      4. 5.3.4 FSK Correlation Detector Library
    4. 5.4 Porting RX to LAUNCHXL-F280049C
  7. Interfacing With a Power Line
    1. 6.1 Line Coupling
    2. 6.2 Coupling to an AC Line
      1. 6.2.1 Low Voltage Capacitor
      2. 6.2.2 The Ratio of the Transformer
      3. 6.2.3 HV Capacitor
      4. 6.2.4 HV Side Inductor
    3. 6.3 Coupling to DC Line
    4. 6.4 Protection Circuit
      1. 6.4.1 Metal Oxide Varistors
      2. 6.4.2 Transient Voltage Suppressors
      3. 6.4.3 Current Steering Diodes
    5. 6.5 Determining PA Power Supply Requirements
  8. Summary
  9. References
  10. Schematics
    1. 9.1 Schematics (PWM Mode)
    2. 9.2 Schematics (DAC Mode)
  11. 10Revision History

Porting TX to LAUNCHXL-F280049C

Below are the steps taken to port boostxl_afe031_f28379d_pwmmode and boostxl_afe031_f28379d_dacmode from the LAUNCHXL-F28379D to the LAUNCHXL-F280049C after importing the projects into Code Composer Studio™.

  1. Change the C2000Ware includes search path from f2837xd to f28004x.
    1. Right click the project --> select Properties --> expand Resource --> select Linked Resources.
    2. Select F28379D_DEVICE_SUPPORT_ROOT and click Edit.
    3. Change the name from F28379D_DEVICE_SUPPORT_ROOT to F28004X_DEVICE_SUPPORT_ROOT.
    4. Change the directory location to be \device_support\f28004x instead of \device_support\f2837xd.
    5. In Properties, expand CCS Build --> expand C2000 Compiler --> select Include Options.
    6. Alter include paths that have F28379D_DEVICE_SUPPORT_ROOT to F28004X_DEVICE_SUPPORT_ROOT.
    7. Select Apply and Close.
  2. Replace all of the F2837xD source files within the project with f28004x source files.
    1. f28004x source files found within the C2000Ware directory C:\ti\c2000\C2000Ware_<version>\device_support\f28004x\common\source
  3. Replace the 2837x linker command files with 28004x linker command files.
    1. Generic flash and RAM 28004x linker command files can be found in the C2000Ware directory C:\ti\c2000\C2000Ware_<version>\device_support\f28004x\common\cmd.
  4. Alter the GPIO configurations for LED control within boostxl_afe031_f28379d_main.c
    1. Alter the GPIOs configured within the AFE_InitGpio function.
          //GPIO-23 - LaunchPad RED LED
          GPIO_SetupPinMux(23, GPIO_MUX_CPU1, 0);
          GPIO_SetupPinOptions(23, GPIO_OUTPUT, GPIO_PUSHPULL);
          // GPIO-34 - LaunchPad GREEN LED
          GPIO_SetupPinMux(34, GPIO_MUX_CPU1, 0);
          GPIO_SetupPinOptions(34, GPIO_OUTPUT, GPIO_PUSHPULL);
      
  5. Alter the GPIOs configured for AFE031 control within afe031_config.c.
    1. Alter the GPIOs configured within the HAL_afe031_cfgGpio function:
          //SD PIN
          GPIO_SetupPinMux(9, GPIO_MUX_CPU1, 0);
          GPIO_SetupPinOptions(9, GPIO_OUTPUT, GPIO_PUSHPULL);
          // SD=0
          GPIO_WritePin(9, 0);
          //DAC Pin Enable
          GPIO_SetupPinMux(8, GPIO_MUX_CPU1, 0);
          GPIO_SetupPinOptions(8, GPIO_OUTPUT, GPIO_PUSHPULL);
          // DAC=0
          GPIO_WritePin(8, 0);
    2. Remove or comment-out the GPIO configuration for the INT Pin within the HAL_afe031_cfgGpio function.
          // INT Pin - Not available on LAUNCHXL-F280049C
          // GPIO_SetupPinMux(123, GPIO_MUX_CPU1, 0);
          // GPIO_SetupPinOptions(123, GPIO_OUTPUT, GPIO_PUSHPULL);
  6. Alter the GPIOs configured for the SPI communication within hal_spi.c:
    1. Alter the GPIOs configured within the InitAFESpiGpio function.
          EALLOW;
          // SPI_MOSI
          GPIO_SetupPinOptions(16, GPIO_INPUT, GPIO_ASYNC | GPIO_PULLUP);
          // SPI_MISO
          GPIO_SetupPinOptions(17, GPIO_INPUT, GPIO_ASYNC | GPIO_PULLUP);
          // SPI_CS
          GPIO_SetupPinOptions(57, GPIO_INPUT, GPIO_ASYNC | GPIO_PULLUP);
          // SPI_CLK
          GPIO_SetupPinOptions(56, GPIO_INPUT, GPIO_ASYNC | GPIO_PULLUP);
          GPIO_SetupPinMux(16, GPIO_MUX_CPU1, 1);
          GPIO_SetupPinMux(17, GPIO_MUX_CPU1, 1);
          GPIO_SetupPinMux(57, GPIO_MUX_CPU1, 1);
          GPIO_SetupPinMux(56, GPIO_MUX_CPU1, 1);
          EDIS;
  7. Alter the GPIOs being written to for DAC enable within hal_afe031.h.
    1. Alter the GPIO written to within the HAL_afe031_dacEnable macro:
      GPIO_WritePin(8, 1);}
    2. Alter the GPIO written to within the HAL_afe031_dacDisable macro:
      GPIO_WritePin(8, 0); \
  8. Remove the InitEPwm1Gpio() function within boostxl_afe031_f28379d_main.c