This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

LAUNCHXL2-TMS57012: How do you config peripheral Registers using the memory map

Part Number: LAUNCHXL2-TMS57012
Other Parts Discussed in Thread: TMS570LS1224, HALCOGEN

Hi, 

I'm looking to build my own kernel for this MCU and I need to know how I can config the peripheral registers using the memory map listed in the Hercules (TMS570LS1224) datasheet. On the Tiva C platform, it was easy to config peripheral registers since the Tiva C datasheet stated how each register can be configured, but the Hercules datasheet just provides memory map range for each peripheral and it supplies no info on how to configure the peripherals. For example, what value should I write to the peripheral memory location for SCI so I can configure things like baud rate, parity, etc.,?  The datasheet does not seem to discuss this. 

Here's what the datasheet supplies for SCI: 

SCI    PS[6]    0xFFF7_E500  -  0xFFF7_E5FF    256B    256B    Reads return zeros, writes have no effect

I'm not looking to use the API generated by the HAL Generator but I want to communicate with the device at a low level for kernel efficiency. I'm a student and this is a personal project.

Thanks,

Saeed

  • Saeed,

    The best approach would be to use the initialization code generated by HALCoGen as reference. You could use the GUI to turn off any "optional" safety checks to come up with the bare minimum configuration required to run any application. This would include initializing the CPU registers, initializing the stack pointers, and enabling access to peripherals via the periphInit() function. All other steps during initialization are not really mandatory, but would make sense depending on your application.