Part Number: TMS570LC4357 Tool/software: Hello, I am currently working on the TMS570LC4357 hercules devkit and have encountered a behavior that I believe is not documented, or at least, I have not been able to find the relevant documentation. During my debugging process, I observed that triggering a soft reset through EMAC->SOFTRESET also resets the MDIO module, which appears to be an undocumented feature. Could you please confirm this behavior for me? Specifically, after setting EMAC->SOFTRESET, I noticed that the MDIO module becomes disabled and its clock divider values are lost (NOT emac control softreset ) . Any assistance or clarification you could provide on this matter would be greatly appreciated. The Reference manual mention in section 32.2.15.1 that "Unlike the EMAC module, the MDIO and EMAC control modules cannot be placed in reset from a register inside their memory map." Nevertheless the EMAC control module seems to be in reset via the RESET bit in the SOFTRESET register (section 32.3.2) whereas the EMAC module is in reset via the SOFTRESET bit in the SOFTRESET register (section 32.5.34).
↧
Forum Post: TMS570LC4357: Clarification Required on EMAC(0xFCF78000)->SOFTRESET(0x174) Behavior Affecting MDIO Module
↧
Forum Post: RE: TM4C1290NCPDT: TM4C1290NCPDT
Despite the warnings, I think the hex file will work. Does it? Please attach the linker command file to your next post. So it will be accepted, please add the file extension .txt . Thanks and regards, -George
↧
↧
Forum Post: TMS320F28069: GPIO Output Toggling Glitch
Part Number: TMS320F28069 Tool/software: Hey, I am noticing something strange with specific GPIOs that are configured as outputs. The code below is how GPIO30 and GPIO25 are configured. While my project is running, in a scenario with a lot of switching noise, these GPIOs tend to “toggle” themselves without me writing any command to do so. GpioCtrlRegs.GPAMUX2.bit.GPIO30 = 0; // GPIO30 = GPIO30 GpioCtrlRegs.GPADIR.bit.GPIO30 = 1; // GPIO30 = OUTPUT GpioCtrlRegs.GPAPUD.bit.GPIO30 = 0; // Disable pullup on GPIO30 GpioCtrlRegs.GPAMUX2.bit.GPIO25 = 0; // GPIO25 = GPIO25 GpioCtrlRegs.GPADIR.bit.GPIO25 = 1; // GPIO25 = OUTPUT GpioCtrlRegs.GPAPUD.bit.GPIO25 = 0; // Disable pullup on GPIO25 These GPIO outputs are some of few that are routed right under some High Voltage switching, it will pick up a lot of noise in certain scenarios. When the project is in a low noise scenario, the GPIO behaves fine, only doing exactly what it is programmed to do. But when it is in a high noise scenario sometimes randomly this GPIO will toggle on its own. While monitoring the GpioDataRegs.GPADAT.bit.GPIO30 bit during debug, it will change from 0->1 or 1->0 on its own. I have removed all set/clear/dat commands to just observe the behavior all on its own. Below is a screenshot of GPIO30 and GPIO25 behaving this way (they both are routed near the HV switching noise source). So my question is why is this happening? If my GPIO is set as an output, it shouldn’t toggle/latch/change states without my code telling it to. Does high noise have a change to influence this GPIO to change states? Our current work around right now is to assume this GPIO is constantly being read by the micro, as if it were an input, and maybe tricking itself when it reads noise and toggles itself. So, the below code is additional Qualification Window GPIO setup, assuming as if it were an input. Below the code is a screenshot of GPIO30 and GPIO25 with this extra setup. GpioCtrlRegs.GPACTRL.bit.QUALPRD3 = 0x4B; //(75x2)/(90Mhz)=period GpioCtrlRegs.GPAQSEL2.bit.GPIO30 = 2; //6 sampling window GpioCtrlRegs.GPAQSEL2.bit.GPIO25 = 2; //6 sampling window Thanks for any help or insight, it is appreciated
↧
Forum Post: RE: TMS320F28388S: Customer Bootloader related inquiries
Hello, The method you described is possible. We have a Serial Flash Programming Application Note that you can reference and there's example code located in C2000ware SDK. The serial flash kernel example can be found at \driverlib\f2838x\examples\c28x_dual\flash_kernel Regarding general information about custom bootloaders, the Boot ROM source code (device bootloaders) is available in C2000ware at \libraries\boot_rom\f2838x\revA\rom_sources\cpu1\F2838x_ROM\bootROM\source. These can be referenced when developing your custom bootloader. Warm regards, Matt
↧
Forum Post: RE: TM4C123GH6PM: Dereferencing void *intfPtr on TivaC platform
[quote userid="91011" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1427240/tm4c123gh6pm-dereferencing-void-intfptr-on-tivac-platform/5476010#5476010"]I have solved my problem, I had a inscope devAddr, and got deleted in memory afterwards, making it a global solved the issue.[/quote] Thanks to Bruce for the recommendation to make it a global that seems to solve the problem.
↧
↧
Forum Post: LP-MSPM0G3507: failed to upload the secondary bootloader, non-main contents error
Part Number: LP-MSPM0G3507 Other Parts Discussed in Thread: MSPM0G3507 , UNIFLASH Tool/software: Hi We have experienced an issue with loading the secondary bootloader on the DSP(M0G3507) via Launchpad debugger. The secondary bootloader project was imported from mspm0_sdk_2_02_00_0X.(secondary_bsl_uart_LP_MSPM0G3507_nortos_ticlang). it seems like the secondary bootloader intended to get access to and modify non-MAIN memory section for BCR and BSL data configuration. Please find the attached. We failed to load secondary bootloader due to error says 'non-main contents corrupted.' When we tried to use Uniflash software program to upload the secondary bootloader (.hex file), the chip will be permanently locked. I believed that something weird happened in the non-main memory area.
↧
Forum Post: RE: MSPM0L1306-Q1: I2C implementation vi PA18 and PA19
Hello Archie, I found what the customer's comment refers to in section 8.20 of the Datasheet. I spoke with my Systems team, and the reason for this is because the I2C Specification defines FM+ devices as having the ability to sink up to 20mA of current. The SDIO pins have an absolute max rating of 6 mA. So this is why that note exists. Now, In my opinion, 6mA definitely can work. The I2C spec does give the equations and timings to calculated the minimum and maximum pull-up resistor values. I believe the risk is that if you plug into another I2C buss also has stronger pull-ups, or even pull-ups in parallel, then you could possible exceed this max current would could damage or reduce the lifetime of the device. If the I2C bus is fully contained on board, and the pull-up resistance is fixed and controlled to guarantee that this doesn't happen, then I think it's fine. Hopefully this explanation explains exactly where this note comes from and provides all context to make a decision for the customer's application. Thanks, JD
↧
Forum Post: TMS320F28388S: Periodic Resets in TI Bootloader
Part Number: TMS320F28388S Tool/software: Greetings, Our DSP is currently powering up in the TI Bootloader. Looking at the XRS! signal, we can see that it is periodically going low. It is occurring roughly every 10ms and lasts for 50us. We have verified that our HW’s ability to generate that signal is not happening. Can the TI bootloader do this? We are using a 25MHz crystal. Thank you, Ed
↧
Forum Post: RE: TMS320F2800156-Q1: TZ trigger problem
Hi Zoey, If you want to trigger trip zone on a high level instead of a rising edge, you will need to use the digital compare logic submodule to set the outputs low on the DCA/BEVT signal. What is the customers input signal? Can you describe the path the customer is taking to route the trip input to the trip zone submodule? Best, Ryan Ma
↧
↧
Forum Post: TMS320F28375S: CRC implementation with changed polynomial.
Part Number: TMS320F28375S Tool/software: The C2000 series support VCU0, 1,2, VCRC to calculate CRC. I have a requirement of configurable polynomial. This DSP series doesnot allow me to use any of the previous mentioned options for configurable polynomial. I can only use software to calculate the crc. Could you please confirm if I am correct? Also, I want to use TI standard library if any for software implementation of CRC calculation. Its a 8 bit CRC calculation.
↧
Forum Post: RE: AM2634: 64MB Memory access with Q-SPI for AM2634
Hello TEMC, Okay so the only PSRAM we are looking into right now is this OSPI based on for use with OSPI enabled devices. That was a miss on my end that we only have that as a recommendation. We don't have any recommendations for one that interfaces with GPMC on AM263 at this time. Best Regards, Ralph Jacobi
↧
Forum Post: RE: ARM-CGT: Release build removes code from TCM
I need to see the details of how you implement ... [quote userid="500225" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1428486/arm-cgt-release-build-removes-code-from-tcm"]placing the function code in TCM memory location[/quote] Please attach the linker command file to your next post. So it is accepted, please add the file extension .txt . Thanks and regards, -George
↧
Forum Post: RE: TMS320F28335: help on reflashing boot via serial
Hi Luca, What version of C2000Ware do you have? Kind regards, Skyler
↧
↧
Forum Post: RE: TMS320F28379D: Exploring the possibility of utilizing the controller’s emulative memory to eliminate the need for external EEPROM.
Hi Mahesh, There is an example for Gen 3 devices as well, here is the link . Section 8 discusses how to adapt this example to other devices. Kind regards, Skyler
↧
Forum Post: TM4C129ENCPDT: Output clocks on GPIO pins
Part Number: TM4C129ENCPDT Tool/software: I'm trying to output DIVSCLK on PQ4 and RTCCLK on PK7. I've been looking through the datasheet, but still having trouble trying to figure out how to do this with the SDK. I 'think' I need to use MAP_SysCtlPeripheralEnable(), but not sure what setting to use. Do you have any other documentation, or example code, on how to route these clocks to the GPIOs? Jeff
↧
Forum Post: RE: TMS320F28379D: v22.6.1.LTS compiler not catching variable redefinitions in the same source file
This code gets no diagnostics ... int abc; int abc; Initialize both of the variables ... int abc = 0; int abc = 0; Then a diagnostic similar to ... "f2.c", line 2: error: variable "abc" has already been initialized .... is issued. Adding the LOCATION and RETAIN pragmas does not change things. For a deeper explanation, please see this page (not from TI). Thanks and regards, -George
↧
Forum Post: RE: TMS320F2800137: CCS Debug FlashSeting issue
Hello, I am currently looking into this and should have a response sometime tomorrow. Regards, Alex
↧
↧
Forum Post: RE: TMS320F2800157-Q1: How to customize changes SCI-BootLoader
Hi Winni, 2. The SCI bootloader is looking for TI-TXT formatted files. It differs from a generated hex file in that the filetype is .txt instead of .hex , as well as the contents of the file including hexadecimal values only. 3. The custom bootloader will recognize the received data by the address block it is associated with, before erasing that address block and programming the new contents. It will know the erase is sufficient by the length of the block given. This is handled by the Flash API. I'll link the CN version of our app note as well. e2e.ti.com/.../SPRABV4.pdf Thanks and regards, Charles
↧
Forum Post: RE: TMS320F28379D: Workaround for pulse skipping in a phase shift PWM control application
Hi Patrick, Thanks for sending all the updates. I'll take a look over what you've provided and get a response to you when I'm back in office tomorrow. Best Regards, Allison
↧
Forum Post: RE: LP-MSPM0G3507: 3507
You can refer to this demo code https://dev.ti.com/tirex/explore/node?node=A__AB.0jCUB3vTkGXeSK72L9A__msp430ware__IOGqZri__LATEST as you can see it include how to read data from TMP117 that is similar with TMP75. BP-BASSENSORSMKII User's Guide
↧