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.

TMS570LS1227: TMS570LS1227 SCI LIN documentation

Part Number: TMS570LS1227
Other Parts Discussed in Thread: HALCOGEN,

Hi,

the LS1227 has one SCI and one SCI+LIN controller.  

- In Halcogen we find three tabs "SCI", "LIN" and "SCI2".  

- The data sheet mentions "LIN" and "SCI".  

- The user manual has SCI/LIN and SCI.  

- CCS then has registers for "Lin1" and "Lin2".

Could somebody please provide information how the two peripherals correlate with the ones in Halcogen, the data sheet, user manual and CCS?   Also I would like to know which interrupt vector numbers are assigned to those two peripherals.   Also which functions have to be used in in the Halcogen generated software in order to receive characters on the non-LIN SCI using interrupts.   I would appreciate if the answer would use distinct names for the two peripherals.

Kind Regards,

  • Hello Halgen,

    There are two SCI modules on TMS570LS1227 device. One SCI/LIN module (TRM) is named LIN in Datasheet , the other is SCI which is also named SCI in HALCoGen. The SCI/LIN module can be programmed to work either as an SCI or as a LIN. The core of the module is an SCI. The SCI’s hardware features are augmented to achieve LIN compatibility.

    1. LIN (Datasheet) or SCI/LIN (TRM) or SCILIN in HALCOGen on LS1227 PGE package: pin 131 and pin 132

    2. SCI on LS1227 PGE package: pin 38 and pin 39. It is SCI only (doesn't support LIN mode). This module is called SCI in datasheet, TRM , and HALCoGen

    LS1227 has only 1 LIN, so LIN1 should be used on CCS register window.

    VIM-13 or VIM-27 should be used for LIN mode and no-LIN SCI mode.

    Sorry for confused names.

  • QJ Wang said:

    > LS1227 has only 1 LIN, so LIN1 should be used on CCS register window.

    > VIM-13 or VIM-27 should be used for LIN mode and no-LIN SCI mode.

    So have you found out what Lin2 in CCS is?   And the vectors of the SCI?  And associated functions generated by halcogen?

    And did those 100 transistors saved for dropping LIN on the second SCI for an IC that size really justify the mess?   Why didn't you simply have SCI1 and SCI2 both with (or without; anybody still using that?) LIN?   And as a suggestion SCI3, SCI4 and maybe SCI5 so that users don't have to revert to microcode in your NLET?

     

    As a suggestion: why don't you tidy up your naming in your documentation and software?   Get rid of the confusing SCI2 tab in halcogen.  While you do that you may as well decide if you want to call your interrupts level 0 and 1 or high and low level.   And drop the "mib" in SPI and other modules and in the software.   Makes it easier to find the software files and chapters in the user manual (if you do not reserve 2/3 of your screen for the side bar).   While multi buffering might be something new for TI, other companies had that in 1987.   And maybe you can have your software developers thinking about why the register file of the spi for example should be named "spi_reg.h" and not "reg_spi.h".  And drop that camel case.   What's easier to read: thisIsAFunction or this_is_a_function?

  • The choice of naming conventions is often a contentious issue. Both reg_spi (registers of SPI) and spi_reg (SPI registers) are fine.