Quantcast
Channel: Microcontrollers
Viewing all 219980 articles
Browse latest View live

Forum Post: RE: MSP430FR5969: Addressing Mode of CG(R3) for ADDA and SUBA instructions

$
0
0
I understand your confusion about the interpretation of the instruction code 0x03EF. It's indeed a bit tricky when the disassembled output doesn't match the expected assembly code. First of all, you're right about R2/R3 being constant generator registers on the MSP430. The special behavior you're observing is likely due to the interaction between the instruction encoding and the constant generation mechanism. In the case of the `ADDA` instruction, the machine code `0x03EF` is an encoding that the disassembler interprets as `ADDA R3, R15`. However, because R3 can be used as a constant generator to represent the immediate value #2 in certain addressing modes, the actual effect is equivalent to `ADDA #2, R15`. Regarding the documentation in SLAU367, the difference between the "Indirect register mode" in Table 4 - 2 and the "Register mode" in chapters 4.5.2.6 and 4.6.1 might seem conflicting at first glance. But in reality, these modes are defined based on different aspects of instruction encoding and execution. The "Indirect register mode" might refer to how the value is retrieved from the register in a more complex memory - accessing scenario, while the "Register mode" is more about the basic operation of using registers directly in an instruction. As for the exceptional case you mentioned about `ADDA` and `SUBA`, it makes perfect sense. Since getting zero from R3 in these instructions would be pointless, the hardware designers might have chosen to use R3 in a special way to represent immediate values like #2.

Forum Post: RE: MSPM0G3507: how to create secondary BSL at location 0x00000000 and Jump to APP

$
0
0
Hi Son, Once you remove the stopcounter code, the timerA you enabled in App1 will continue to count and cause interrupt, but the timerA interrupt handler has been changed to default handler(see app2 start up file). So the MCU will enter into endless loop and no LED is toggle. I have done the test the result is same as what I explained. Regards, Zoey

Forum Post: RE: TMS320F280041: PWM deadband of 50Hz frequency

$
0
0
Hi Angela, Could you help us understand which oscilloscope channel is representing which signal? Which is the jitter in the waveform that we want to get rid off? Also can you share the zoomed in PWM waveforms at zero crossing and the expected waveform which we would like to achieve Best regards, Pawan

Forum Post: RE: AM2432: EtherCAT Slave connecting to KEYENCE KV7500 not successful

$
0
0
Hi AAron We tested your suggestion, it did not help. register 0x110 does not reflect change in link. Signals are confirmed with scope. Other thoughts? Thanks Rasty

Forum Post: RE: AM263P4: How To "Update The Calibration"?

$
0
0
[quote userid="500225" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1478563/am263p4-how-to-update-the-calibration/5719500#5719500"]Though there are some consideration which is concerning to me. Given the update will be done to an signed mcelf image, if you update .cinit section you will need to update the hash and the signature also, how would that work.[/quote] That is a very good question. I don't think it would work now that I think about it, not without a great deal of effort. At the very least I would have to move the .cinit (or its equivalent) outside of any signed area but that itself brings complications. I think for now, I will park this question. My backup plan is to use EEPROM to store individual calibration values for now, a much simpler concept to work with. Thanks for the pertinent questions.

Forum Post: RE: TMS320F28388D: I would like to inquire about the method of configuring a QEP using CLB blocks.

$
0
0
I cannot obtain the desired answer through the provided link. First, I want to verify whether creating 7 additional eQEP modules using 7 CLB blocks is feasible. Additionally, the CLB Tool appears to only allow configuration of CLB1 to CLB4 (as shown in the attached image). I am curious about the method to configure the remaining blocks into functional eQEP modules.

Forum Post: AM2434: EDS file MaxCIPConnections meaning

$
0
0
Part Number: AM2434 Tool/software: Hello Archit Dev, may I ask you what is the meaning of MaxCIPConnections parameter in the EDS file? Does this limit maximum amount of devices connected in the daisy chain? (nodes) We were planning to daisy chain up to 100 devices. Is somewhere else in the EDS file a limitation of maximum amount of devices connected in the daisy chain? Thanks for help ! Petr

Forum Post: MSP430FR6043: How to DSPLIB GUI set 900K~1.1M for bandpass filtering

$
0
0
Part Number: MSP430FR6043 Tool/software: hi,all How to set 900K~1.1M for bandpass filtering? The sampling frequency can only be set to a maximum of 200k, my actual sampling frequency is 8M.

Forum Post: RE: AM2432: EtherCAT Slave connecting to KEYENCE KV7500 not successful

$
0
0
Hi Rasty, Could you provide the ICSS Memory dump. I'm referring to the following sections: PRU_ICSSG_RAM: 0x30010000 - 0x30010ECF PRU_MII_RT_MII_RT: 0x30032000 to 0x3003206C PRU_MDIO_MDIO: 0x30032400 to 0x30032484 Regards, Aaron

Forum Post: RE: AM2634-Q1: Customer used AM2634 for HSM development issue?

$
0
0
Hi, Please share the VPP circuits Regards, Nikhil

Forum Post: LAUNCHXL-CC26X2R1: Loading Keys to Key Store Memory

$
0
0
Part Number: LAUNCHXL-CC26X2R1 Tool/software: Hello, I want to add keys to key store memory from external memory. I looked up the reference manual document and I decided to use "12.7.4.2.1 Load Keys From External Memory" part. However, these registers are crypto registers so I can not reach directly. As I understand from the part "12.5.6 Key Area Registers", I can change these registers only via DMA. In this situation I got an error and probably this error about not configuring DMA appropriately. So, what is the way configuring DMA properly? You can see the pseudocode in the below. 12.7.4.2.1 Load Keys From External Memory The following software example in pseudocode describes the actions that are typically executed by the host software to load one or more keys into the key-store module. // configure master control module write ALGSEL 0x0000_0001 // enable DMA path to the key store module write IRQCLR 0x0000_0001 // clear any outstanding events // configure key store module (area, size) write KEYSIZE 0x0000_0001 // 128-bit key size write KEYWRITEAREA 0x0000_0001 // enable keys to write (e.g. Key 0) // configure DMAC write DMACH0CTL 0x0000_00001 // enable DMA channel 0 write DMACH0EXTADDR // base address of the key in ext. memory write DMACH0LEN // total key length in bytes (e.g. 16 for 1 x 128-bit key) // wait for completion wait IRQSTAT[0]==’1’ // wait for operation completed check IRQSTAT[31:30] == ‘00’ // check for absence of errors in DMA and key store write IRQCLR 0x0000_0001 // acknowledge the interrupt write ALGSEL 0x0000_0000 // disable master control/DMA clock // check status check KEYWRITTENAREA 0x0000_00001 // check that Key 0 was written // end of algorithm I am looking forward to your respond. Thanks.

Forum Post: RE: AM2634-Q1: Customer used AM2634 for HSM development issue?

$
0
0
VPP External 1.7V power supply Add 0.1u capacitor to the PCB, and the OtpkeyWriter fails

Forum Post: RE: MSPM0G3519: Live firmware update (LFU) examples

$
0
0
Hi Helic, For Q3: How can we guarantee the preserved global/static variables are kept in the same memory location before, during and after firmware update?

Forum Post: RE: AM2634: AM2634 reset reason

$
0
0
[quote userid="600936" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1489415/am2634-am2634-reset-reason"]Why do I read the value 67 from the register shown below?[/quote] It could be because of the previous 0x41 value present (which is the reset value) and 0x42 gets added to this due to WDT0. Could you please try clearing the WARM_RST_CAUSE register (by writing 0x7 into WARM_RST_CAUSE_CLR) before reading this value?

Forum Post: RE: TMS320F280041C: Removal of Flash read protection for sectors 8 to sectors 15 in Bank0 and Bank1

$
0
0
Hi Rajeshwary Nitin Bongirwar we found that only 8 sectors are available in this controller in flash command file.so when we trying to write or read from sector 8 (0x88000 to 8FFFF )in Bank 0,it showing that reading is prevented at that location . so that issue is resolved. But In flash Bank1(0x90000 to 97FFF) we are unable to write data. showing that return value of Fapi issue programming command as invalid address 0x90000 . help me out regard this.

Forum Post: RE: AM2434: Enable encryption on hf_fs file from CCS

$
0
0
Hello Prashant, thank you for explanation of this, we are currently have our system project with 4cores, and we want to encrypt only one, how could we make it in easiest way? How could we modify devconfig.mak file, to ENC_ENABLED?=yes for only one core of system project? Thank you.

Forum Post: TMS320F28P659SH-Q1: Not getting any example for above mentioned part number

$
0
0
Part Number: TMS320F28P659SH-Q1 Tool/software: Hi, I'm working on F28P659SH6 but in code composer studio I'm not getting this part number under devices of c2000 microcontrollers. I need to kick start to work on this device with an example . How can I get this device ?

Forum Post: RE: AM2634: On the TDCO configuration of the CAN secondary sampling points

$
0
0
In order to get the required SSP(%) , we can adjust the SSP location with the use of trcvDelayCompensationOffset. SSP Percentage = ((SS + PS1 + (PS2 x (1 - (SSP Location / Bit Time)))) / Bit Time) x 100 where, - SSP Location is the location of the secondary sample point in time, typically measured in nanoseconds (ns) or microseconds (us). - Bit Time is the total time for one bit, typically measured in nanoseconds (ns) or microseconds (us). In general, the trcvDelayCompensationOffset is used to adjust the SSP location to compensate for the transceiver delay. A positive trcvDelayCompensationOffset value will move the SSP to the right (i.e., later in the bit time), while a negative value will move it to the left (i.e., earlier in the bit time). ex: // Calculate the SSP location without compensation uint32_t sspLocation = (bitTime * sspPercentage) / 100; // Calculate the SSP location with compensation uint32_t compensatedSspLocation = sspLocation + trcvDelayCompensationOffset; // Calculate the new SSP percentage with compensation uint32_t compensatedSspPercentage = (compensatedSspLocation * 100) / bitTime; For more details refer TRM: https://www.ti.com/lit/ug/spruj55b/spruj55b.pdf?ts=1742375150848&ref_url=https%253A%252F%252Fwww.google.com%252F Thanks, Mudit Bhansali

Forum Post: RE: MSPM0G3519: Live firmware update (LFU) examples

$
0
0
Hi, Wayne We can use the variables in boot while running in app. Also, directly jump from boot to app will not clear the SRAM, customer can use the fix address to save some parameters. And this kind of application depending on customer's requirement. Regards, Helic

Forum Post: TMS320F280039C: I don't find any usage of DAC and SDFM module in TI sofware resolver decoding refernence design

$
0
0
Part Number: TMS320F280039C Other Parts Discussed in Thread: TIDM-02014 Tool/software: Dear TI Team: When I use Infineon,I use DSADC Module to get sinθ and cos θ value through the process in below picture.However,I don't find any usage of DAC and SDFM module in TI sofware resolver decoding refernence design in such as TIDM-02014.It seems we need to devote more efforts to builing software codes instead of relying hardware module.In Infineon,I just pay attentaion to DSADC register configuration,after the initiation of DSADC module,I just only need to get sinθ and cosθ periodly without any other too much software process.So it will not cause too much burden to software running process. Therefore,I am curious that why TI use "Discrete Resolver Front-End" solution without any usge of DAC and SDFM module which is similar as DSADC Module in Infineon.And I also see description such as"The sigma delta filter module (SDFM) is a four-channel digital filter designed specifically for current measurement and resolver position decoding in motor control applications."in SDFM chapter of user mannual. why does TI software resolver decoding has no usage of DAC and SDFM module?
Viewing all 219980 articles
Browse latest View live