NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

CC3200 CRC Demo Application

From Texas Instruments Wiki
Jump to: navigation, search
Cc31xx cc32xx return home.png
Cc32xx return sample apps.png

Overview[edit]

The Cyclic Redundancy Check (CRC) computation module can be used for message transfer and for safety system checks. The purpose of the CRC engine is to accelerate CRC and TCP checksum operation. The result of the CRC operation is a 32- and 16-bit signature that can be used to check the sanity of data. The following features are supported:

  • Four major CRC forms
  1. CRC16-IBM as used by USB and ANSI
  2. CRC32-IEEE as used by IEEE 802.3 and MPEG-2
  3. CRC32C as used by G.Hn
  4. CRC16-CCITT as used by CCITT/ITU X.25
  • Checksum (TCP)
  • Word and byte feed
  • Byte and half-word swapping for input and output data
  • Bit reversal

Application details[edit]

The application is a reference to usage of CRC DriverLib functions on CC3200. Developer/User can refer to this simple application and re-use the functions in their applications. This application can be used with or without "Uart Terminal".

If the user wishes to use "Uart Terminal" to give some inputs and follow the execution path prints, then they might do so by defining "USER-INPUT" in the des_main.c file.

  • crcdemo: This command allows the user to excercise the CRC funcitonality on CC3200. The command needs a parameter, crc_mode.
- crc_mode is the CRC algorithm that user can choose, the value can be P8005 or P1021 or P4C11DB7 or P1EDC6F41 or TCPCHKSUM.
   P8005 - CRC-16-IBM 0x8005
   P1021 - CRC-16-ICCITT 0x1021
   P4C11DB7 - CRC-32 0x4C11DB7
   P1EDC6F41 - CRC-32 0x1EDC6F41
   TCPCHKSUM - TCP Checksum

Further, user will be prompted for more inputs.  

Not defining or un-defining the USER-INPUT will allow the user to follow the execution path on the IAR or CCS IDE, in the "debugging" mode and no input is needed to be given by the user.

Source Files briefly explained[edit]

  • main.c - The main file that contains the core-logic for encryption and decryption. The functions in the file uses DriverLib calls to perform encryption and decryption.

Supporting files

  • crc_userinput.c - This file is used in the USER-INPUT mode. The function in the file reads the input from the user, parses the input string and feed the core-logic functions in the crc_main.c
  • pinmux.c - Generated by the PinMUX utility. UART0 pins are brought out in this file.
  • startup_ccs.c - CCS related functions
  • startup_ewarm.c - IAR related functions
  • uart_logger.c - Functions to display information on UART

Usage[edit]

  1. Setup a serial communication application (HyperTerminal/TeraTerm). For detail info visit Terminal setup
    On the host PC, open a hyperterminal, with the following settings
    • Port: Enumerated COM port
    • Baud rate: 115200
    • Data: 8 bit
    • Parity: None
    • Stop: 1 bit
    • Flow control: None
  2. Run the reference application.
    • Flash the bin
    • Open the project in IAR/CCS. Build and download the application to the board
  3. On the Hyperterminal, a prompt appears
    • The CRC commands need to be issued and the results can be seen
CC3200 crc terminal runScreen.png

Limitations/Known Issues[edit]

None.

Links[edit]

{{#invoke: Navbox | navbox }} {{#invoke: Navbox | navbox }}

E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article CC3200 CRC Demo Application here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article CC3200 CRC Demo Application here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article CC3200 CRC Demo Application here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article CC3200 CRC Demo Application here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article CC3200 CRC Demo Application here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article CC3200 CRC Demo Application here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article CC3200 CRC Demo Application here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article CC3200 CRC Demo Application here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article CC3200 CRC Demo Application here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity