I mean the title should be “ Get 0% to 100% duty cycle with HRPCTL[HRPE]=1” I am sorry for this.
↧
Forum Post: RE: TMS320F28388D: Get 0% or 100% duty cycle with HRPCTL[HRPE]=1
↧
Forum Post: RE: MSP-EXP432P401R Altium design files
Hi Jace, I was afraid of that... But thank you for the quick reply anyways. I will contact our sales representative. Regards, Jonathan
↧
↧
Forum Post: RE: TMS570LS1114: How to get older HALCoGen version
Hello Chester, yes it works ! Thank you very much. Regards Mladen
↧
Forum Post: RE: MSP430FR2433: I2C communication error
Thanks for the help, I have corrected some errors and now I can send data and I can also read them. The only thing is that now, instead of reading what the pn532 should send, I read 0x80 all the time.... I don't know why. I think I'm sending the commands it needs...
↧
Forum Post: TMS320F28379D: I cannot reprogram flash after first programming
Part Number: TMS320F28379D Other Parts Discussed in Thread: UNIFLASH Hi, I had a chip TMS320F28379D with blank flash. I succesfully programmed it with my program: int main(void) { EALLOW; Flash0EccRegs.ECC_ENABLE.bit.ENABLE = 0; EDIS; EALLOW; *(Uint32 *)0xD00 = 0x0B5A; EDIS; InitSysPll(XTAL_OSC,IMULT_40,FMULT_0,PLLCLK_BY_2); [...] As you see InitSysPll has been called with XTAL_OSC but this clock signal is not provided. I cannot erase nor program flash using CCS and UniFlash. I even cannot check if the chip is blank. Uniflash signals following errors: [2.11.2021, 08:05:21] [INFO] C28xx_CPU1: Executing Blank Check... [2.11.2021, 08:05:44] [ERROR] C28xx_CPU1: Error occurred during flash operation: Timed out waiting for target to halt while executing wr_pll.alg [2.11.2021, 08:05:44] [ERROR] C28xx_CPU1: Error writing the PLL values (Flash algorithm timed out). Operation cancelled. [2.11.2021, 08:05:44] [ERROR] C28xx_CPU1: Perform a debugger reset and execute the Boot-ROM code (click on the RESUME button in CCS debug window) before erasing/loading the Flash. If that does not help to perform a successful Flash erase/load, check the Reset cause (RESC) register, NMI shadow flag (NMISHDFLG) register and the Boot-ROM status register for further debug. [2.11.2021, 08:05:44] [ERROR] C28xx_CPU1: Flash Programmer: Error initializing device. How to recover the chip? Kind regards, Piotr Romaniuk PS I can connect via JTAG to the chip CCS without programming flash and then check registers, setup breakpoints and make step execution. In debuger I tried to change oscillator source (to INT2_OSC). I setup breakpoint before InitSysPll and then modified register that holds this argument. Unfortunatelly PLL was never locked and program stuck at: ClkCfgRegs.SYSPLLMULT.all = ((fmult << 8U) | imult); // // Wait for the SYSPLL lock counter // while(ClkCfgRegs.SYSPLLSTS.bit.LOCKS != 1) <<<<< stuck here { // // Uncomment to service the watchdog // // ServiceDog(); } } }
↧
↧
Forum Post: TMDSCNCD28388D: pto_abs2qep Example can not run from flash
Part Number: TMDSCNCD28388D Hi I'm testing pto_abs2qep Example via TMDSCNCD28388D This Example can run correctly from RAM.. But Not Flash.. and this has no 'Build Configuration for Flash' .. so I made it below is my work 1. add f2838x_codestartbranch.asm and change entry_point to code-start. 2. change cmd file to 2838x_flash_lnk_cpu1.cmd 3. add define "_FLASH" 4. remove "__attribute__((ramfunc))" for int16_t main(void) after that I can run Example from Flash via Debug window.. But when I try to Stand Alone booting.. the board is not working... the other (led example) is work properly.. and I found one thing.. when I comment out "pto_abs2qep_runPulseGen()" from pto_abs2qep_setupPeriph() and all of pto_EPWM3ISR() code then board can boot stand alone.. is there any suggestion..??? or can i get pto_abs2qep Example for FLASH booting?
↧
Forum Post: RE: TMDSECATCNCD379D: SPI peripheral interface data transmit and receive error
Hi, Veena: I checked the polarity and phase configuration. There is no problem with these settings. I am able to send data from STM32F master device to my TI slave device. I changed the STE (CS) pin of the STM32F master device and the problem was solved. TI slave device is not sending data to STM32F master device. I don't see any output signal on SPI GPIO pins when TI device is in slave mode. I can get output signals from SPI GPIO pins when my TI is in master mode. Why won't my TI send data when in slave mode? Thanks, Sinan.
↧
Forum Post: TMDSCNCD28388D: Ethernet Activity LED not Working
Part Number: TMDSCNCD28388D My Control Card is MCU063B- Version. I have TCP I/P Ethernet Communications sending and receiving continuously on J4, the Yellow Link LED is on but there is no activity on the Green LED. I am using Matlab Simulink 2021b to program the device. Is there anything that needs to be done to get the led working?
↧
Forum Post: TMS320F280049C: SCI cannot send and receive data
Part Number: TMS320F280049C Other Parts Discussed in Thread: C2000WARE Hi expert: When I was doing the SCI experiment of F280049C, I found that the example code of TI(Its path is:D:\ti\c2000\C2000Ware_MotorControl_SDK_3_01_00_00\c2000ware\driverlib\f28004x\examples\sci) could send and receive data on F280049C-Launchpad, but the control board I developed by myself could not send and receive data (based on F280049C chip). After study, I find may need to add the driver of Uart and I realized the function also includes USB convert to Uart function.How to write this code?In addition, I need this Uart to be able to debug code on CCS.Hope this question can be answered, thank you! Best Regards Johnson Alanl
↧
↧
Forum Post: RE: MSP430FR5733: Internal resistance values of P1.0 and P1.3
Hi Johnson-san, Thank you for your reply. [quote userid="404787" url="~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1049596/msp430fr5733-internal-resistance-values-of-p1-0-and-p1-3/3884386#3884386"]How to measure this value? Power off and using voltage meter(one probe is GND, one probe is P1.0/P1.3)?[/quote] The customers use a voltage meter to connect to GND and P1.0 /P1.3 for measurement. [quote userid="404787" url="~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1049596/msp430fr5733-internal-resistance-values-of-p1-0-and-p1-3/3884386#3884386"] This should be input impedance. I don't have FR5733, but I have been measured in FR5739 Lanuchpad, the input impedance of P1.0 & P1.3 is all about 2.9MR. [/quote] I think the terminals will be high impedance. I will also measure using FR5739 Launchpad. Best regards, Sasaki
↧
Forum Post: TMS320F28035: PWM external sync leads to continuous HIGH level
Part Number: TMS320F28035 Hi, While prototyping a new device with external sync, we observed that, if the CMPA value is never reached due to TBPHS reload at sync, the PWM is maintained at HIGH level. We are using the 6 PWMA peripherals, each one being phase shifted by PI/3 from the precedent: 0° 60° 120° 180° 240° 300° Here is a picture explaining the problem (the last one is our concerning case): Here is our PWM configuration code: void pwm_RegisterConfiguration(int16 n, Uint16 period, int16 mode, uint16_t phase) { // Time Base SubModule Registers (*ePWM[n]).TBCTR = 0; (*ePWM[n]).TBCTL.bit.CTRMODE = TB_COUNT_UP; (*ePWM[n]).TBCTL.bit.HSPCLKDIV = TB_DIV1; (*ePWM[n]).TBCTL.bit.CLKDIV = TB_DIV1; (*ePWM[n]).DBCTL.bit.OUT_MODE = DB_DISABLE; // disable dead-band module // Master config if (mode == PWM_MASTER) { pwm_MasterSlaveConfig[n-1] = PWM_MASTER; (*ePWM[n]).TBCTL.bit.PHSEN = TB_DISABLE; (*ePWM[n]).TBCTL.bit.SYNCOSEL = TB_CTR_ZERO; // sync "down-stream" (*ePWM[n]).TBCTL.bit.PRDLD = TB_SHADOW; // set shadow load (*ePWM[n]).TBPHS.half.TBPHS = 0; } // Slave config else if (mode == PWM_SLAVE) { pwm_MasterSlaveConfig[n-1] = PWM_SLAVE; (*ePWM[n]).TBCTL.bit.PHSEN = TB_ENABLE; if (n == PWM1) { (*ePWM[n]).TBCTL.bit.SYNCOSEL = TB_SYNC_IN; // sync "down-stream" (*ePWM[n]).TBCTL.bit.PRDLD = TB_SHADOW; // set shadow load (*ePWM[n]).TBPHS.half.TBPHS = 0; // this value should stay at 0 in any case for PWM1 } else { (*ePWM[n]).TBCTL.bit.SYNCOSEL = TB_SYNC_IN; // sync flow-through (*ePWM[n]).TBCTL.bit.PRDLD = TB_SHADOW; // set Immediate load (*ePWM[n]).TBPHS.half.TBPHS = (period - phase); } } // Mandatory to fill TBPRD after setting an IMMEDIATE register // note : it's not mandatory for SHADOW register (*ePWM[n]).TBPRD = period - 1; // PWM frequency = 1 / period // Counter Compare Submodule Registers (*ePWM[n]).CMPA.half.CMPA = 0; // set duty 0% initially (*ePWM[n]).CMPB = 0; // set duty 0% initially (*ePWM[n]).CMPCTL.bit.SHDWAMODE = CC_SHADOW; (*ePWM[n]).CMPCTL.bit.LOADAMODE = CC_CTR_ZERO; (*ePWM[n]).CMPCTL.bit.SHDWBMODE = CC_SHADOW; (*ePWM[n]).CMPCTL.bit.LOADBMODE = CC_CTR_ZERO; // When CPU forces a PWM it is forced without sync (*ePWM[n]).AQSFRC.bit.RLDCSF = PWM_AQSFRC_LOAD_IMMEDIATELY; // Action Qualifier SubModule Registers: DISABLE ALL (*ePWM[n]).AQCTLA.bit.ZRO = AQ_NO_ACTION; (*ePWM[n]).AQCTLA.bit.CAU = AQ_NO_ACTION; (*ePWM[n]).AQCTLA.bit.CBU = AQ_NO_ACTION; (*ePWM[n]).AQCTLA.bit.PRD = AQ_NO_ACTION; (*ePWM[n]).AQCTLB.bit.ZRO = AQ_NO_ACTION; (*ePWM[n]).AQCTLB.bit.CAU = AQ_NO_ACTION; (*ePWM[n]).AQCTLB.bit.CBU = AQ_NO_ACTION; (*ePWM[n]).AQCTLB.bit.PRD = AQ_NO_ACTION; } When starting the function, we set the AQCTLx register as follow: void PWM_EnablePwmADisablePwmB() { PWM_list_e i; for (i = PWM1; i AQCTLA.bit.ZRO = AQ_CLEAR; ePWM[i]->AQCTLA.bit.CAU = AQ_SET; ePWM[i]->AQCTLA.bit.CBU = AQ_NO_ACTION; ePWM[i]->AQCTLA.bit.PRD = AQ_NO_ACTION; ePWM[i]->AQCTLB.bit.ZRO = AQ_CLEAR; ePWM[i]->AQCTLB.bit.CAU = AQ_CLEAR; ePWM[i]->AQCTLB.bit.CBU = AQ_CLEAR; ePWM[i]->AQCTLB.bit.PRD = AQ_CLEAR; ePWM[i]->AQCSFRC.bit.CSFB = PWM_FORCE_CONTINUOUS_LOW; } } Is there a special configuration needed to ensure the good behavior of the PWMs in this very particular case? Best regards, Alexis L. Embedded Software Engineer
↧
Forum Post: LAUNCHXL-F28379D: SCI port as UART to communicate data between LaunchPad and Arduino Board
Part Number: LAUNCHXL-F28379D Hi, Customer want to know how to communicate launchxl-f28379d to raspberry pi using SCI as port, please see details below. " I need launchxl-f28379d communicate raspberry pi. I want to use SCI port as UART to communicate data between LaunchPad and Arduino Board Using Embedded Coder Support Package for C2000 on Matlab Simulink. For example, Send 'A' charector every 5 second. Receive a string of setpoint voltage for example "12.5" from Arduino board then convert to float variable as a setpoint for PID loop. Convert A/D of Voltage and Current Data to string then send back to Arduino Board for Display on TFT Screen, Communication Speed 115200,8,n,1 Do you have sample that can meet this? " Thank you in advance. Regards, Maynard
↧
Forum Post: RE: TMDSECATCNCD379D: SPI peripheral interface data transmit and receive error
Hi Sinan, The slave device cannot initiate a data transfer. Once you write to the TX buffer, it will remain in the buffer till the master device initiates a transfer. You can make the master device send some dummy data to receive data from slave device. Regards, Veena
↧
↧
Forum Post: RE: TMS320F28034: memcpy() generate infinite recursive cycle
Hi. I include from standart compiler library, where _CODE_ACCESS void *memcpy(void * __restrict s1, const void * __restrict s2, size_t n); In linker script MEMORY { PAGE 0: RAML1 : origin = 0x008800, length = 0x000400 FLASHFEDC : origin = 0x3EC002, length = 0x007FDA ... ramfuncs : LOAD = FLASHFEDC, RUN = RAML1, LOAD_START(_RamfuncsLoadStart), LOAD_SIZE(_RamfuncsLoadSize), LOAD_END(_RamfuncsLoadEnd), RUN_START(_RamfuncsRunStart), PAGE = 0 If I change size of copy data to 255 or less, then memcpy compiled to inline code and work 505 memcpy(&RamfuncsRunStart, &RamfuncsLoadStart, 255); 3ecdbc: 76FF0AF5 MOVL XAR7, #0x3f0af5 3ecdbe: 8F008800 MOVL XAR4, #0x008800 3ecdc0: F6FE RPT #254 3ecdc1: 2484 || PREAD *XAR4++, *XAR7 =================================================================== I looked in my other project, and there memcpy disassembled correct: memcpy(): 3f16d1: 5200 CMPB AL, #0x0 40 { 3f16d2: A8AB MOVL @P, XAR4 3f16d3: C5A4 MOVL XAR7, @XAR4 51 for (rn = 0; rn < nn; rn++) *rto++ = *rfrom++; 3f16d4: 6107 SB C$L2, EQ 3f16d5: 88A9 MOVZ AR6, @AL 3f16d6: DE81 SUBB XAR6, #1 C$L1: 3f16d7: 5C85 MOVZ AR4, *XAR5++ 3f16d8: 7C87 MOV *XAR7++, AR4 3f16d9: 000EFFFE BANZ -2,AR6-- 52 if (nn == n) return (to); C$L2: 3f16db: 88A9 MOVZ AR6, @AL 3f16dc: 0FA6 CMPL ACC, @XAR6 3f16dd: 610F SB C$L5, EQ 3f16de: 5300 CMPB AH, #0x0 3f16df: 610D SB C$L5, EQ 3f16e0: 9DFF ADDB AH, #-1 3f16e1: 5CA8 MOVZ AR4, @AH C$L3: 3f16e2: 76BFFFFE MOVL XAR6, #0x3ffffe 64 *rto++ = *rfrom++; C$L4: 3f16e4: 9285 MOV AL, *XAR5++ 3f16e5: 9687 MOV *XAR7++, AL 63 for (rn = 0; rn < 65535; rn++) 3f16e6: 000EFFFE BANZ -2,AR6-- 65 *rto++ = *rfrom++; 3f16e8: 9285 MOV AL, *XAR5++ 3f16e9: 9687 MOV *XAR7++, AL 61 for (tmp = 0; tmp < upper; tmp++) 3f16ea: 000CFFF8 BANZ -8,AR4-- 69 return (to); C$L5: 3f16ec: A9A4 MOVL @XAR4, P 3f16ed: 0006 LRETR Maybe need include or define something else?
↧
Forum Post: TMDSHVMTRPFCKIT: hvkit motor control ground question
Part Number: TMDSHVMTRPFCKIT Hi i'm student of Konkuk University, Korea. i'm studying motor control and use tmdshvmtrpfckit to rotate motor. few weeks ago i got ground to ground short (maybe... but motor was okay, all insulation was fine. But I saw spark on motor case) how can it cause? and i want to ask "Can i ground motor shield to DC supply shield ground?" i think this can decrease fluctuation of inverter
↧
Forum Post: RE: TMDSECATCNCD379D: SPI peripheral interface data transmit and receive error
Hi, Veena: Can't I send data from TI Slave device to master STM32F device? I didn't fully understand this. [quote userid="128297" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1046386/tmdsecatcncd379d-spi-peripheral-interface-data-transmit-and-receive-error/3884629#3884629"]You can make the master device send some dummy data to receive data from slave device.[/quote] Thanks, Sinan.
↧
Forum Post: RE: LAUNCHXL-F280049C: About PMBCTRL.I2CMODE bit in PMBus module
Sorry, I explain it not clearly. That is data format. Like the follow picture.
↧
↧
Forum Post: RE: RM42L432: Problem with CAN on RM42L432
Yes, I have already enabled this mailbox.
↧
Forum Post: RE: EVM430-FR6047: Endress & Hauser
Hi Ray, You means that reference meter? If yes, I think you can consult Endress & Hauser company, this should don't a dedicated meter. Thanks! Best Regards Johnson
↧
Forum Post: RE: TMDSECATCNCD379D: SPI peripheral interface data transmit and receive error
Hi Sinan, As per the SPI protocol, the data is shifted out on the SPI lines based on SPICLK and the SPICLK is generated by the master device only. Both devices send and receive data at the same time. In case master requires the slave to send a data but master doesn't wish to send any new data, it can initiate a dummy data transfer. Eg: Write 0 to master TX, so that the the SPICLK is generated and slave can shift out the data to be sent. Please refer to the SPI Operation chapter in TRM for more information Regards, Veena
↧