Tool/software: Code Composer Studio
Hello. I have a problem with UPP. I try to write my driver, I don’t use SDK. It is necessary to implement continuous data reception through channel B. I configure the multiplexer, reset UPP, turn on the UPP, setup interrupts, configure two windows (both 32000 bytes, one line, located in a non-cached area, one immediately becomes active, the other is waiting). A continuous counter, 16 bit, is fed to the input of the UPP channel B. A total of 32000 values should appear in two windows, right? I wait until the last element of the second window is filled, and check the result. I observe data loss between windows - about 40 bytes, depends on baud rate. Loss occurs due to window switching - receiving a window of 64,000 bytes is successful. Here is my settings:
UPCTL = 0x2020004
UPICR = 0x380038 (both channels for debug)
UPTCR = 0x0
UPQD0 = buf0
UPQD1 = (1 << 16) | (32000)
UPQD2 = 0
UPQD0 = buf1
UPQD1 = (1 << 16) | (32000)
UPQD2 = 0