Part Number: TMS320F28379D I am working with the PM_bissc_SystemTest example for bissc, and I met a strange problem. When I run the program, it cannot enter the SPI interrupt function(interrupt void bissc_spiRxFifoIsr()), and always wait at ( while(biss_data_struct.dataReady != 1)), but when I pause the program and continue to run the program, It can enter the SPI interrupt function, and the rest of code runs correctly. Now I need pause-run-pause-run....... I don not know why... Now I have two pieces of board to run the example, and another is normal !!
↧
Forum post: TMS320F28379D: BiSS-C can not work normally
↧
Forum post: CCS/MSP432P401R: UART receive/transmit
Part Number: MSP432P401R Tool/software: Code Composer Studio I have a MSP432P401R and BOOSTXL-EDUMKII. I am having trouble sending an image from the PC to the MSP432 through the UART to be displayed on MKII. The MKII has a 128x128 display. I have a bitmap image that has a color depth of 256K colors represented in a 128x128 array. I am having trouble sending that image in array form in DriverLib and Register Level to the board. Is this possible?
↧
↧
Forum post: TMS320F2810: TMS320F2810PBKQ FUNCTION fail issue
Part Number: TMS320F2810 Dears, We use TMS320F2810PBKQ,find some PCS have a function fail,as below picture show,we test GATE_C to GND,the OK board is 0.75V,the NG board is 0V,the OK board have voltage wave output,but the NG part no wave output.When we test this PIN to GND impedance discrete ,the NG and OK part is same ,Pls check. Pls give us some design suggest.
↧
Forum post: TMS320F280049: will the noise of 3.3V supply affect the connection with the debugger?
Part Number: TMS320F280049 Customer found F280049 always failed to connect the debugger through JTAG. I found they are using TPS561201 to provide the 3.3V for F280049, and it would enter PFM mode(Pulse Skip Control) during light load, which might bring with more voltage ripples/noise. I am not sure whether it will affect the stability of the connection with the debugger. If so, I will suggest them to use TPS561208 with CCM during light load. Could you please help check my assumption? Thank you.
↧
Forum post: TMS320F28335: Same Clock to DSP and External ADC ADS1278
Part Number: TMS320F28335 Hi Team, Is it possible to give clock from same crystal to DSP TMS320F28335 and ADC ADS1278 ? Thanks & Regards, Sachin
↧
↧
Forum post: TMS320F280049C: FSI test issue
Part Number: TMS320F280049C Hi expert: My customer wants to use FSI to communicate between two C2000 Board. I suggest them begin with: http://www.ti.com/lit/an/spracm3/spracm3.pdf Firstly, they use two launchpads, download the code into Flash, but nothing happened, both GPIO16 are low. And there is no signal in CLK and data0. Then, they try 1 control card and 1 Launchpad. I add _LAUNCHXL_F280049C to pre-define symbol to change the GPIO. Connect both boards with CCS, emulation mode. RAM code. This time, both GPIO16 are high. However, The lead code is stuck at ESTOP0(fsi_ex16_daisy_handshake_lead.c); since this is Error. while(1) { #if FSI_DMA_ENABLE==0 // Now, start transmitting data frames // Fill TX array with new data prepareTxBufData(); // Write data into Tx buffer // Start the first transfer FSI_writeTxBuffer(FSITXA_BASE, txBufData, nWords, 0U); FSI_startTxTransmit(FSITXA_BASE); // // Wait for TX frame done event // while(fsiTxInt1Received != 1U); // Set FSI TX circular buffer pointer back to beginning FSI_setTxBufferPtr(FSITXA_BASE, 0U); // // Wait for RX data frame received event // while(fsiRxInt1Received != 1U); // Set FSI RX circular buffer pointer back to beginning FSI_setRxBufferPtr(FSIRXA_BASE, 0U); if(error == 0) { fsiTxInt1Received = 0U; fsiRxInt1Received = 0U; } else { // Error occurred during communications ESTOP0; } I also change lower CLK, but nothing changed. #define PRESCALER_VAL FSI_PRESCALE_10MHZ #define PRESCALER_VAL FSI_PRESCALE_5MHZ Except that, I did not change the code. Could you kindly tell me where I did wrong? BR Emma
↧
Forum post: NS486SXF: Information required on Software Development Tools used for this product
Part Number: NS486SXF We need to know the development tools for this product. Basically we want to know Assembler, C/C++ compiler, source code editor, project build environment, debugger used for this board. Couldn't get the information in the product site.
↧
Forum post: MSP430FR5739: Execute the function from RAM
Part Number: MSP430FR5739 Hello All, We are using MSP430FR5739 and developing the firmware on IAR IDE. We want to be able to execute the function from RAM, by copying it from specific location of FRAM. Is this possible ? We have looked at different methods recommended here by on community posts, however, we are running into issue and would like to know if there are any official guidelines from TI (also IAR if any). Please let me know if anyone had been able to successfully do this. Regards, Devika R
↧
Forum post: LAUNCHXL-F28379D: Communication error. LED D1 and D9 always ON.
Part Number: LAUNCHXL-F28379D Hello, I am trying to download a PWM generation program onto the LAUNCHXL-F28379D through Simulink, but I get the following error, The following error occurred during deployment to your hardware board: Debug Server Scripting (DSS) error: *** User inputs: Target Configuration: C:\PROGRA~3\MATLAB\SUPPOR~1\R2018b\toolbox\target\SUPPOR~1\tic2000/CCS_CO~1/F28379~1.CCX Program Name: D:\matlab\models\spwmin.out Board Name: * CPU Name: C28xx_CPU1 Hardware Name: TI_Delfino_F2837xD *** Starting debug session... SEVERE: 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 8.0.903.2) SEVERE: emulation failure occurred SEVERE: Error connecting to the target: emulation failure occurred *** Cannot create a valid debug session for Board/CPU=*/C28xx_CPU1. Make sure this matches only one board and one CPU. Exiting... Also both LED D1 and D9 are always ON. Just to make sure I was doing it right I tried to download an LED example onto the board via Simulink and I get the same following error The following error occurred during deployment to your hardware board: Debug Server Scripting (DSS) error: *** User inputs: Target Configuration: C:\PROGRA~3\MATLAB\SUPPOR~1\R2018b\toolbox\target\SUPPOR~1\tic2000/CCS_CO~1/F28379~1.CCX Program Name: D:\matlab\models\LED.out Board Name: * CPU Name: C28xx_CPU1 Hardware Name: TI_Delfino_F2837xD *** Starting debug session... SEVERE: 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 8.0.903.2) SEVERE: emulation failure occurred SEVERE: Error connecting to the target: emulation failure occurred *** Cannot create a valid debug session for Board/CPU=*/C28xx_CPU1. Make sure this matches only one board and one CPU. Exiting... The LED D1 and D9 are always ON. I tried tapping the RESET button and changing USB port on my PC but the error still persists. I tried configuring switch S1 as 1-UP, 2-UP and 3-DOWN and tapping RESET. Still doesnt work. Any help will be appreciated. Thanks in advance
↧
↧
Forum post: MSP432P4011: MSP432P4011 ESD EMI troubles
Part Number: MSP432P4011 Hi, we want to use the MSP432P4011(64-pin) instead of the MSP432P4111(100-pin), used on LaunchPad. They all die after programming and running them. After a long search we will now create an ESD safe environment and adapt the pcb with protection. First we dive into literature and some experiments to better understand whats happening! At this stage, tips are welcom! regards, Laurent 2M Engineering the Netherlands
↧
Forum post: RM57L843: TMS570LC4357 and RM57L843 On-Chip Temperature Sensor Measurements
Part Number: RM57L843 Dear TI, Hope you are fine. I am working on onboard chip temperature sensors.The document mentioned above have a code bug in the attached picture which results in wrong junction temperature measurement.The code used in the above document gives worng temperature values in kelvin.By correcting the code it will give the correct callibration values in OTP as well as in kelvin.Please find the attached documents. With Regards, Bilal Zahoor Ahmed.
↧
Forum post: CCS/TMS570LC4357: Flash initiliaze fault in the TMS570LC4357
Part Number: TMS570LC4357 Tool/software: Code Composer Studio Hello sir I am using the TMDX570LC43HDK board, the CPU is TMS570LC4357. I want to use the internal Flash, so I use the F021 library. The first I only use the function /* Initialize flash bank for API operations */ oReturnCheck = Fapi_initializeFlashBanks(150); but it return the fault " Fapi_Error_OtpChecksumMismatch, /* Returned if OTP checksum does not match expected value */" I don't know which can cause it ?
↧
Forum post: TMS320F280049C: tms320f280049c
Part Number: TMS320F280049C Hi all, I am learning how to deal with CLB with CLB tool with the state machine examples of spracl3 'Designing With the C2000™ Configurable Logic Block (CLB)' I have read the description below that I can not understand well and don't know how to proceed with CPU programming with this code below. my question seems not to be specific. sorry for that. that is because I don't know way too much about how the CPU core app code is linked to CLB system and vice versa. could I get a more detailed explanation about it and could you guys teach me how to deal with that? if it is too hard to explain whole things about that, could you guys let me know any document or example source to refer to? many thanks.
↧
↧
Forum post: CCS/TMS570LC4357: The initialize error when I use the internal Flash on the TMDX570LC43HDK board
Part Number: TMS570LC4357 Tool/software: Code Composer Studio hello sir I am using the board TMDX570LC43HDK and want try to read and write the internal Flash. I use the F021 API. when I call the function "Fapi_initializeFlashBanks" it return the "Fapi_Error_OtpChecksumMismatch" can you give me some advice ?
↧
Forum post: TM4C1294NCPDT: Adding SPIEthernet to AWR1843Boost eval board
Part Number: TM4C1294NCPDT Hi, I would like to add standard Ethernet connectivity to my design which is based on AWR1843Boost reference design so I am thinking of connecting the SPI interface of AWR1843 chip to TM4C1294 (TIVA) MCU and update the firmware on TIVA MCU to add Ethernet bridge functionality while maintaining the XDS110 emulation functionality. However, I am not able to find the source code for the XDS110 application running on TIVA MCU to modify it for my purpose. Do you know where should I start for developing an application code on TIVA MCU that gives me both XDS110 emulation and SPI<> Ethernet functions? Thanks
↧
Forum post: CCS/LAUNCHXL-F28379D: ADC does not appear to sample as often as expected
Part Number: LAUNCHXL-F28379D Tool/software: Code Composer Studio Hello, I am using the LAUNCHXL-F28379D microcontroller EVM along with an AD9833 waveform generator. I am currently at the stage where I am just trying to make sure that my ADC can effectively sample the sine waves that I am generating with the AD9833 but have run into some trouble. I am essentially just using the adc_soc_continuous_cpu01 example from ControlSuite combined with some of the SPI commands from the spi_loopback_cpu01 example. I know that my SPI communication with the waveform generator is operating properly because when I command a 5kHz signal, I can see the following on an Oscilloscope: (note that the Oscilloscope probe is set to 1:10 amplification and the actual peak-peak value is only .66V) Essentially when I try to return the same plot using the ADC, the waveform I get is a mess. I believe I have all my settings correct to guarantee the highest sampling rate I can (SYSCLK = 200MHz, ADCCLK = 50MHz) but from what I can tell, it appears that the ADC is sampling much less frequently than that, since it only takes about 20 samples to capture a full period of the 5kHz waveform. Below is the code I am using, apologies if it is a bit messy: //########################################################################### // FILE: Example_28X7xSpi_FFDLB.c // TITLE: SPI Digital Loop Back program. // //! \addtogroup cpu01_example_list //! SPI Digital Loop Back //! //! This program uses the internal loop back test mode of the peripheral. //! Other then boot mode pin configuration, no other hardware configuration //! is required. Interrupts are not used. //! //! A stream of data is sent and then compared to the received stream. //! The sent data looks like this: \n //! 0000 0001 0002 0003 0004 0005 0006 0007 .... FFFE FFFF \n //! This pattern is repeated forever. //! //! \b Watch \b Variables \n //! - \b sdata , sent data //! - \b rdata , received data // //########################################################################### // $TI Release: F2837xD Support Library v100 $ // $Release Date: Mon Dec 9 12:58:09 CST 2013 $ //########################################################################### #include "F28x_Project.h" // Device Headerfile and Examples Include File #include "math.h" //definitions for selecting ADC resolution #define RESOLUTION_12BIT 0 //12-bit resolution #define RESOLUTION_16BIT 1 //16-bit resolution (not supported for all variants) //definitions for selecting ADC signal mode #define SIGNAL_SINGLE 0 //single-ended channel conversions (12-bit mode only) #define SIGNAL_DIFFERENTIAL 1 //differential pair channel conversions //buffer for storing conversion results (size must be multiple of 16) #define RESULTS_BUFFER_SIZE 256 Uint16 AdcaResults[RESULTS_BUFFER_SIZE]; Uint16 resultsIndex; // Prototype statements for functions found within this file. // __interrupt void ISRTimer2(void); void take_adc_conversion(void); void ConfigureADC(void); void SetupADCContinuous(Uint16 channel); void delay_loop(void); void spi_xmit(Uint16 a); void spi_fifo_init(void); void spi_init(void); void error(void); void declareFrequency(double freq); Uint16 rdata; // received data Uint16 sdata1; Uint16 sdata2; Uint16 sdata3; Uint16 sdata4; Uint16 sdata5; float refFreq = 25000000.0; int MSB; int LSB; int i; long freqWord; float myPower = 268435456.0; //2^28 float desiredFreq = 5000.0; void main(void) { // Step 1. Initialize System Control: // PLL, WatchDog, enable Peripheral Clocks // This example function is found in the F2837xD_SysCtrl.c file. InitSysCtrl(); // Step 2. Initialize GPIO: // This example function is found in the F2837xD_Gpio.c file and // illustrates how to set the GPIO to it's default state. //This is needed to set ADC GPIOs InitGpio(); // Skipped for this example // Setup only the GP I/O only for SPI-A functionality // This function is found in F2837xD_Spi.c InitSpiaGpio(); // Step 3. Clear all __interrupts and initialize PIE vector table: // Disable CPU __interrupts DINT; // Initialize PIE control registers to their default state. // The default state is all PIE __interrupts disabled and flags // are cleared. // This function is found in the F2837xD_PieCtrl.c file. InitPieCtrl(); // Disable CPU __interrupts and clear all CPU __interrupt flags: IER = 0x0000; IFR = 0x0000; // Initialize the PIE vector table with pointers to the shell Interrupt // Service Routines (ISR). // This will populate the entire table, even if the __interrupt // is not used in this example. This is useful for debug purposes. // The shell ISR routines are found in F2837xD_DefaultIsr.c. // This function is found in F2837xD_PieVect.c. InitPieVectTable(); //Configure the ADC and power it up ConfigureADC(); //Setup the ADC for continuous conversions on channel 0 SetupADCContinuous(3); //Enable global Interrupts and higher priority real-time debug events: EINT; // Enable Global interrupt INTM ERTM; // Enable Global realtime interrupt DBGM //Initialize results buffer for(resultsIndex = 0; resultsIndex > 14); //Only lower 14 bits are used for data LSB = (int)(freqWord & 0x3FFF); //Set control bits 15 ande 14 to 0 and 1, respectively, for frequency register 0 LSB |= 0x4000; MSB |= 0x4000; Uint16 sdata1 = 0x2100; //Resets AD9833 Uint16 sdata2 = LSB; //Freq0 register write LSBs Uint16 sdata3 = MSB; //Freq0 register write MSBs Uint16 sdata4 = 0xC000; //Phase register write Uint16 sdata5 = 0x2000; //Release reset for(i = 1; i ADCIN1 and will be actively //converting while first 8 results are being saved AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT0; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT1; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT2; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT3; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT4; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT5; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT6; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT7; //wait for the second set of 8 conversions to complete while(0 == AdcaRegs.ADCINTFLG.bit.ADCINT4); //clear both INT flags generated by second 8 conversions AdcaRegs.ADCINTFLGCLR.bit.ADCINT2 = 1; AdcaRegs.ADCINTFLGCLR.bit.ADCINT4 = 1; //save results for second 8 conversions // //note that during this time, the first 8 conversions have //already been triggered by EOC14->ADCIN2 and will be actively //converting while second 8 results are being saved AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT8; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT9; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT10; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT11; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT12; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT13; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT14; AdcaResults[resultsIndex++] = AdcaResultRegs.ADCRESULT15; } //disable all ADCINT flags to stop sampling AdcaRegs.ADCINTSEL1N2.bit.INT1E = 0; AdcaRegs.ADCINTSEL1N2.bit.INT2E = 0; AdcaRegs.ADCINTSEL3N4.bit.INT3E = 0; AdcaRegs.ADCINTSEL3N4.bit.INT4E = 0; //at this point, AdcaResults[] contains a sequence of conversions //from the selected channel //software breakpoint, hit run again to get updated conversions //asm(" ESTOP0"); } //Write ADC configurations and power up the ADC for both ADC A and ADC B void ConfigureADC(void) { EALLOW; //write configurations AdcaRegs.ADCCTL2.bit.PRESCALE = 6; //set ADCCLK divider to /4 AdcaRegs.ADCCTL2.bit.RESOLUTION = RESOLUTION_12BIT; AdcaRegs.ADCCTL2.bit.SIGNALMODE = SIGNAL_SINGLE; //Set pulse positions to late AdcaRegs.ADCCTL1.bit.INTPULSEPOS = 1; //power up the ADC AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1; //delay for 1ms to allow ADC time to power up DELAY_US(1000); EDIS; } //setup the ADC to continuously convert on one channel void SetupADCContinuous(Uint16 channel) { Uint16 acqps; //determine minimum acquisition window (in SYSCLKS) based on resolution if(RESOLUTION_12BIT == AdcaRegs.ADCCTL2.bit.RESOLUTION){ acqps = 14; //75ns } else { //resolution is 16-bit acqps = 63; //320ns } EALLOW; AdcaRegs.ADCSOC0CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC1CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC2CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC3CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC4CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC5CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC6CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC7CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC8CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC9CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC10CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC11CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC12CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC13CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC14CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC15CTL.bit.CHSEL = channel; //SOC will convert on channel AdcaRegs.ADCSOC0CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC1CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC2CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC3CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC4CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC5CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC6CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC7CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC9CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC10CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC11CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC12CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC13CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC14CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCSOC15CTL.bit.ACQPS = acqps; //sample window is acqps + 1 SYSCLK cycles AdcaRegs.ADCINTSEL1N2.bit.INT1E = 0; //disable INT1 flag AdcaRegs.ADCINTSEL1N2.bit.INT2E = 0; //disable INT2 flag AdcaRegs.ADCINTSEL3N4.bit.INT3E = 0; //disable INT3 flag AdcaRegs.ADCINTSEL3N4.bit.INT4E = 0; //disable INT4 flag AdcaRegs.ADCINTSEL1N2.bit.INT1CONT = 0; AdcaRegs.ADCINTSEL1N2.bit.INT2CONT = 0; AdcaRegs.ADCINTSEL3N4.bit.INT3CONT = 0; AdcaRegs.ADCINTSEL3N4.bit.INT4CONT = 0; AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 6; //end of SOC6 will set INT1 flag AdcaRegs.ADCINTSEL1N2.bit.INT2SEL = 14; //end of SOC14 will set INT2 flag AdcaRegs.ADCINTSEL3N4.bit.INT3SEL = 7; //end of SOC7 will set INT3 flag AdcaRegs.ADCINTSEL3N4.bit.INT4SEL = 15; //end of SOC15 will set INT4 flag //ADCINT2 will trigger first 8 SOCs AdcaRegs.ADCINTSOCSEL1.bit.SOC0 = 2; AdcaRegs.ADCINTSOCSEL1.bit.SOC1 = 2; AdcaRegs.ADCINTSOCSEL1.bit.SOC2 = 2; AdcaRegs.ADCINTSOCSEL1.bit.SOC3 = 2; AdcaRegs.ADCINTSOCSEL1.bit.SOC4 = 2; AdcaRegs.ADCINTSOCSEL1.bit.SOC5 = 2; AdcaRegs.ADCINTSOCSEL1.bit.SOC6 = 2; AdcaRegs.ADCINTSOCSEL1.bit.SOC7 = 2; //ADCINT1 will trigger second 8 SOCs AdcaRegs.ADCINTSOCSEL2.bit.SOC8 = 1; AdcaRegs.ADCINTSOCSEL2.bit.SOC9 = 1; AdcaRegs.ADCINTSOCSEL2.bit.SOC10 = 1; AdcaRegs.ADCINTSOCSEL2.bit.SOC11 = 1; AdcaRegs.ADCINTSOCSEL2.bit.SOC12 = 1; AdcaRegs.ADCINTSOCSEL2.bit.SOC13 = 1; AdcaRegs.ADCINTSOCSEL2.bit.SOC14 = 1; AdcaRegs.ADCINTSOCSEL2.bit.SOC15 = 1; } //=========================================================================== // No more. //=========================================================================== Any tips or advice at all would be appreciated. Thank you! Austin Allen
↧
Forum post: CCS/TMS320F280049: power cycle issue not restarting program on custom PCB
Part Number: TMS320F280049 Tool/software: Code Composer Studio I'm having issues with a program I wrote for the TMS320F280049 on my custom PCB not restarting after a power cycle. The hardware is derived from the F280049M controlCARD development board. Whenever I program my PCB using the XDS220 ISO JTAG programmer, the PCB functions as expected. I'm able to debug the software, view registers, watch variables, etc. As soon as I power cycle the PCB, the program no longer restarts. When I upload the same software using the same tools onto the F280049M controlCARD development board and perform a power cycle, the development board restarts. I have checked my supply ramp rate on my custom PCB and it's circa 1000 V/s which is within the datasheet specifications. I'm baffled as to why this only occurs to my PCB and not the development board. Am I missing something completely obvious with the CCS9 settings or have I missed something in my hardware?
↧
↧
Forum post: TMS570LS3137: compatibility of NOR FLASH with TMS570LS3137BZWTQQ1 processor
Part Number: TMS570LS3137 I am using the processor "TMS570LS3137BZWTQQ1" with a NOR FLASH "MT28EW128ABA1LJS-0SIT" . The NOR FLASH has access time of 95 n second. I want to know that that whether this NOR FLASH would be compatible with this processor or not.
↧
Forum post: Question about PI_POS_REG4
Dear team: 1, In the CCS lib, it is: v.v1 = _IQmpy(v.Kp, (v.up + v.ui)); But according to the block diagram from: ...\ti\ controlSUITE \libs\app_libs\motor_control\math_blocks\v4.1\~Docs. Should it be: v.v1 = _IQmpy(v.Kp, v.up) + v.ui; ? 2, Which of the two methods of position control is better? Best regards
↧
Forum post: CCS/EK-TM4C129EXL: CRC-32 with 0x4C11DB7 polynomial
Part Number: EK-TM4C129EXL Tool/software: Code Composer Studio I am trying to use the CRC module to calculate the CRC-32 using the polynomial 0x4C11DB7 with EK-TM4C129EXL I have tried several combinations of seed, bit reversal, endiannes etc. but so far I do not get the same results for the same input data. //***************************************************************************** // // crc32.c - Simple CRC-32 demo // // Copyright (c) 2013-2017 Texas Instruments Incorporated. All rights reserved. // Software License Agreement // // Texas Instruments (TI) is supplying this software for use solely and // exclusively on TI's microcontroller products. The software is owned by // TI and/or its suppliers, and is protected under applicable copyright // laws. You may not combine this software with "viral" open-source // software in order to form a larger program. // // THIS SOFTWARE IS PROVIDED "AS IS" AND WITH ALL FAULTS. // NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT // NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR // A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. TI SHALL NOT, UNDER ANY // CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL // DAMAGES, FOR ANY REASON WHATSOEVER. // // This is part of revision 2.1.4.178 of the EK-TM4C129EXL Firmware Package. // //***************************************************************************** #include #include #include "inc/hw_ccm.h" #include "inc/hw_memmap.h" #include "driverlib/crc.h" #include "driverlib/debug.h" #include "driverlib/rom.h" #include "driverlib/rom_map.h" #include "driverlib/sysctl.h" #include "driverlib/uart.h" #include "driverlib/udma.h" #include "drivers/pinout.h" #include "utils/uartstdio.h" //***************************************************************************** // //! \addtogroup example_list //! CRC-32 Demo (crc32) //! //! Simple demo showing an CRC-32 operation using the CCM0 module. //! // //***************************************************************************** //***************************************************************************** // // Configuration defines. // //***************************************************************************** uint32_t g_ui32Result; // // Random data for generating CRC. // uint32_t g_ui32RandomData[16] = { 0x8a5f1b22, 0xcb935d29, 0xcc1ac092, 0x5dad8c9e, 0x6a83b39f, 0x8607dc60, 0xda0ba4d2, 0xf49b0fa2, 0xaf35d524, 0xffa8001d, 0xbcc931e8, 0x4a2c99ef, 0x7fa297ab, 0xab943bae, 0x07c61cc4, 0x47c8627d }; int main(void) { // g_ui32Result=0; // // Enable the CRC module. // SysCtlPeripheralEnable(SYSCTL_PERIPH_CCM0); // // Wait for the CRC module to be ready. // while(!SysCtlPeripheralReady(SYSCTL_PERIPH_CCM0)) { } // // Configure the CRC module. // // CRCConfigSet(EC_BASE, CRC_CFG_INIT_SEED | CRC_CFG_TYPE_P4C11DB7 | CRC_CFG_SIZE_32BIT); // CRCConfigSet(CCM0_BASE, CRC_CFG_INIT_SEED | CRC_CFG_RESINV | CRC_CFG_TYPE_P4C11DB7 | // CRC_CFG_OBR | CRC_CFG_IBR | CRC_CFG_SIZE_32BIT); // // CRCConfigSet(CCM0_BASE, ( CRC_CFG_INIT_SEED | CRC_CFG_RESINV | CRC_CFG_TYPE_P4C11DB7 | CRC_CFG_OBR | CRC_CFG_IBR | CRC_CFG_SIZE_32BIT)); // Set the seed value.This value is the start value for CRC operations. If this value is not written, then the residual seed from // the previous operation is used as the starting value. // // CRCSeedSet(EC_BASE, 0x5a5a5a5a); // CRCSeedSet(CCM0_BASE, 0x5a5a5a5a); uint32_t seed = 0x5a5a5a5a; CRCSeedSet(CCM0_BASE, seed); // // Process the data and get the result. The result should be // 0x75fd6f5c. // //g_ui32Result = CRCDataProcess(EC_BASE, g_ui32RandomData, 16, false); g_ui32Result = CRCDataProcess(CCM0_BASE, g_ui32RandomData, 16, false); while(1); }
↧