Part Number: TMS570LS1227
Other Parts Discussed in Thread: HALCOGEN, TMS570LS1224
Dear team,
The customer is currently debugging the SCI multi-buffer of TMS570LS1227.
According to the specification, the sci of the LS1227 chip has an 8-byte buffer.
Set bit10 in GCR1, which is mbuf mode, to 1, and write all bits 16-bit18 of SCIFORMAT register to 1 to achieve multi-buffer function.
He tried to change GCR1 and SCIFORMAT ,but the parameters cannot be modified.
As the following code in sciInit:
/** - global control 1 */ sciREG->GCR1 = (uint32)((uint32)1U << 25U) /* enable transmit */ | (uint32)((uint32)1U << 24U) /* enable receive */ | (uint32)((uint32)1U << 10U) /* mbuf mode */ | (uint32)((uint32)1U << 5U) /* internal clock (device has no clock pin) */ | (uint32)((uint32)(1U-1U) << 4U) /* number of stop bits */ | (uint32)((uint32)0U << 3U) /* even parity, otherwise odd */ | (uint32)((uint32)0U << 2U) /* enable parity */ | (uint32)((uint32)1U << 1U); /* asynchronous timing mode */ /** - transmission length */ sciREG->FORMAT = ((8U - 1U) | 0x70000U); /* length */
But after the function exits, bit10 of GCR1 is still 0 and the value of FORMAT is still 7. Why?
In addition, the specification does not introduce how to read the RD register when the muti-buffer mode is in the muti-buffer mode. Is the RD register read continuously after the RDY is detected?
BR,
Susan