Hello, I am using the RM48L952 Hercules microcontroller.
At the moment I need to program a serial interface between two microcontrollers. I took the technical reference manual, went to chapter 26 (SCI module) wrote the registers and their addresses, wrote the functions and tested it and it worked.
I can clearly easily exchange bytes between them, but sometimes they miss some data. According to what I've been reading online the SCI module has and 8 byte internal buffer (I need only 4), which would allow me to send and receive data without any problems (by this I mean that I wouldn't lose bytes just because I didn't poll the bit at the correct time).
Sometimes the data exchange fails, which indicates that there is something wrong with my configuration. So I started reading about the module online and read that it must be put in multi-buffer mode in order to have the 8 bytes, which means that I need to put a 1 in bit 10 of the SCIGCR1 . When I checked the chapter again, to verify this infformation I noticed that the 10th bit was a reserved bit, which had me worried. This led me to verify which chapter I was in and I saw that there are 2 SCI chapters (25 and 26, serial communication interface SCI/LIN module and serial communication interface SCI module).
The SCI/LIN module had the multi-buffer bit but the SCI module didn't. Does this mean that if I'm using the SCI module I'll have to do something about synchronization before starting the data exchange?Will I have to use DMA?
PS: I'm not using HALcogen but I've verified that the generated code is very similar, despite mine having some modifications.
By the way I am using balls W3 and N2 of the microcontroller at address 0xFFF7E500U