• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Microcontrollers » C2000™ Microcontrollers » Design Notes » Design Notes
Share
C2000™ Microcontrollers
  • Forums
  • Announcements
  • E2E Wiki
Table of Contents
  • Design Notes
  • [2802x SDFlash] config for Piccolo 2802x 50Mhz parts
  • [2802x/2803x/2806x] Power and Clock Sequencing
  • [2803x/2802x/280x] Dual mapped memory
  • [2803x/2802x] HRPWM - output B
  • [2803x] Interrupt Latency
  • [280x] Power on Reset
  • [2823x to 2833x] Migration
  • [28335] ADC frequency
  • [2833x / 2823x / 2834x] Boot from XINTF
  • [ADC] 2833x/2823x ADC calibration
  • [BreakPoints] How many h/w breakpoints on C28x?
  • [C2000] controlSUITE - what is it and why use it?
  • [C2000] Terms and Abbreviations
  • [CLA] CLA and CPU message RAM arbitration
  • [CLA] How does MSTF.RND32 work?
  • [CLA] Running a CLA function in Flash
  • [Codegen Tools] Calculate a Checksum During Compile Time
  • [Codgen Tools] IEC61508 authentication?
  • [CSM] Permanent lock
  • [CSM] Recovering a locked device
  • [CSM] When does the CSM get locked
  • [eQEP] Can eQEP be used as an eCAP?
  • [EVA/EVB] PWM Pin state at power-up (2407A)
  • [Examples] C280x Timer Examples
  • [F2806x] Want to use the max speed (90MHz)
  • [FFT] Comparison of implementations: VCU, 16/32 bit fixed-point and 32-bit floating point
  • [Flash API] error 21 STATUS_FAIL_PRECONDITION
  • [Flash] Execution of Flash erasing and C28x ISR at the same time on Concerto?
  • [Flash] Frequently Asked Questions
  • [Flash] JTAG connects but can not erase/program
  • [Flash] Re-Programming over JTAG (can't connect after programming)
  • [Floating Point] What are MFLOPS
  • [Floating-Point] Double precision on C28x+FPU
  • [GPIO] input qualification and alternate peripheral function
  • [HRCAP] Can HRCAP be used as a general PWM
  • [HRPWM] - Generating Complimentary HRPWM
  • [HRPWM] Frequency Considerations
  • [I/O Link] Is there I/O link support for C28x?
  • [ILLEGAL_ISR] Illegal trap during EMI testing
  • [Mathworks] Which C2000 devices are supported?
  • [Migration] 24x to 28x
  • [Piccolo] Migration guide from a F2802x or F2803x to F2806x
  • [Power] mW/DMIPS
  • [Power] Testing power consumption for every module
  • [SCI] Baudrate for 2833x/2823x
  • [SCI] Number of ports on 2803x Piccolo devices
  • [SPI] RX frequency limitations
  • [Trip-Zone] Tripping eCAP
  • [USB] Thoughts on 2806x USB design considerations
  • [XINTF] Single cycle write?
  • [XINTF] TMS320F28335 XINTF is "not working"
  • char/byte types on C28x
  • F2803x PWM ETPS
  • JTAG EMU0/1 Pull-up/down

Design Notes

C2000™ Microcontrollers

Welcome to the C2000™ Microcontrollers Section of the TI E2E Support Community. Ask questions, share knowledge, explore ideas, and help solve problems with fellow engineers. To post a question, click on the forum tab then "New Post".

  • Article
  • History

Design Notes

Rate This
Comments
  • Mehdi Rahiminejad Mehdi Rahiminejad
    Mar 8, 2013 11:49 PM

    Hi

    I decided to implement Fast Fourier Transform in TMS320LF2407A DSP. I download the FFT library (sprc069) and tried to used the c-callable module as it has been describe in the related document. For testing my code, I tried to apply the FFT on a specific signal (one period of sinusoidal or square wave) and compare the result with the MATLAB. The result is completely different!! (I know the input of the FFT lib is in Q15 format and output is in Q14 format).

    my code is the same as what is mentioned in the FFT lib document::

    #pragma DATA_SECTION(aiDataLog1_g, "data_log");

    int aiDataLog1_g[DATA_LOG_LEN];

    #pragma DATA_SECTION(aiDataLog2_g, "data_log");

    int aiDataLog2_g[DATA_LOG_LEN];

    #pragma DATA_SECTION(fft_test, "int_ram");

    FFT128R fft_test=FFT128R_DEFAULTS;

    // Creating a specific signal as input

    //  getSin() output is in Q15

    for (iTemp=0; iTemp<128; iTemp++) {

    aiDataLog1_g[iTemp] = 0.5*getSin(258*iTemp);

    }

    // FFT calculation

    /* FFT initialization */

    fft_test.ipcbptr = aiDataLog1_g; /* FFT computation buffer */

    fft_test.magptr = aiDataLog2_g; /* Store back the mag. square */

    //fft.winptr=win; /* Window coefficient array */

    fft_test.init(); /* Copy Twiddle factor */

    /* Acquire samples in bit reversed order or

    Bit-reverse the in-order data using bit-rev utility */

    FFTC_brev1(fft_test.ipcbptr, fft_test.ipcbptr, 128);

    /* FFT Computation */

    //fft_test.win(&fft_test); /* Window the input data */

    fft_test.izero(&fft_test); /* Zero the imaginary part */

    fft_test.calc(&fft_test); /* Compute the FFT */

    fft_test.mag(&fft_test); /* Obtain the magnitude square */

    According to the document of the FFT library (sprc069), everything is correct, but the result is wrong.  

    I would greatly appreciate any help you can give me.

    Thanks

  • shuai wang shuai wang
    Apr 16, 2013 6:28 AM

    Hi

    I wanted to use I2C1 in F28M35X, the user guid tell me two pins can used by I2C1, that is PA0,PA1 and PG0,PG1. PA can be used by SCI1.But,I find PG can not be used. code are as follow:

    void CH454_creat()

    {

    /* I2C1 Init */

    /* Enable the peripheral */

    SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C1);

    /* Configure the appropriate pins to be I2C instead of GPIO. */

    GPIOPinConfigure(GPIO_PG0_I2C1SCL); /* GPIO00 on Concerto base board */

    GPIOPinConfigure(GPIO_PG1_I2C1SDA); /* GPIO01 on Concerto base board */

    GPIOPinTypeI2C(GPIO_PORTG_BASE, GPIO_PIN_0 | GPIO_PIN_1);

    /* Initialize the I2C master. 100KHz */

    I2CMasterInitExpClk(I2C1_MASTER_BASE, SysCtlClockGet(SYSTEM_CLOCK_SPEED), false);

    // Enable the hardware I2C.

    I2CMasterEnable(I2C1_MASTER_BASE);

    // Specify slave address

    I2CMasterSlaveAddrSet(I2C1_MASTER_BASE, CH454_I2C_ADDR, false);

    }

    void I2C_sent(UChar CMD)

    {

    // Place the character to be sent in the data register

    I2CMasterDataPut(I2C1_MASTER_BASE, CMD);

    // Initiate send of character from Master to Slave

    I2CMasterControl(I2C1_MASTER_BASE, I2C_MASTER_CMD_SINGLE_SEND);

    // Delay until transmission completes

    while(I2CMasterBusBusy(I2C1_MASTER_BASE))

    {

    }

    }

    void CH454_sentCMD(UChar *CMD)

    {

    int i;

    for(i = 0; i<2; i++)

    {

    I2C_sent(CMD[i]);

    }

    }

    WHY?

  • YUSUF FARRAH YUSUF FARRAH
    Apr 25, 2013 5:07 PM

    I am relatively new to using the TMS320F2808  dsp based micro-controller.  I am using Code Composer 5 and XDS510 JTAG debugger via USB to a windows PC to develop C code for my application.  One the requirements is to have a checksum verification of the application software in FLASH (Sectors B-D) done by bootstrap software co-resident in Flash (Sector A) but different sector before launching the application image.  My basic question is what is the most straight forward method to calculate & embed a 16 or 32 bit checksum into my application.  I looked throughout  Code Composer help to no avail, but I have to believe this is a routine task and there is a straight forward best practice to do it that I have not found yet.  Some insightful feedback would earnestly be appreciated.

    Thanks,

  • Julio Avilez Julio Avilez
    May 3, 2013 2:54 PM

    When I installed the CCSV5.3 i was connected to the usb port on my laptop (XDS100v1 to a dock station and XDS100v2 to the laptop). I Run the examples for the concerto and everything worked fine.

    Now I need to connect the XDS100v2 to the dock station also, because I need to move the laptop constantly. Now it does not connect I get errors but if I go back to the laptop connects OK.

    This is the error:

    IcePick_C_0: Error connecting to the target: (Error -2131 @ 0x0) Unable to access device register. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 5.1.92.0)

    My device manager indicates that the com port for the XDS100v2 changes from COM32 to COM36 when I change between Laptop and Dock, where can I change the comm port or how can I create 2 configurations?

    My goal is to be able to debug the concerto in to different locations:

    At WORK I use the dock station USB connections

    At home I use the laptop USB connections.

TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use