Other Parts Discussed in Thread: HALCOGEN
Hello!
I am trying to establish UART communication. For this purpose SCI2 is selected, which is accessible on TMDX570LS20SUSB user's pins. At first this module was configured to transmit data without interrupts. Data transmission works normally in polling mode.
The next step is to use TX interrupt for data transmission. The first byte is sent from main (), but the next bytes should be transmitted from TX ISR. For this purpose TX INT (high level) for SCI2 is enabled from HalCoGen. VIM channel 13 is enabled too in HalCoGen as in the example HERCULES-SCIUART. I do not understand this because datasheet and HalCoGen show that VIM channel 13 corresponds to LIN1 high. VIM channel is also configured to cause an IRQ.
The CCS and HalcoGen projects are attached.
I see that microcontroller sends only one first byte from main (); but TX interrupts never occur. So, TX interrupt does not operate correctly. Where is it necessary to handle interrupts? I found out from several examples that all interrupts should be handled in Notifications. You will see in the attached CCS project, that sciNotification is modified to send next byte . Is it correct? In this particular project only SCI2 TX interrupt should be enabled. But how is possible to handle both Rx and Tx interrupts?
I do not see that all SCI2 configuration, which was performed in HalCoGen, is done in the sciInit (); function. For example TX interrupt level is set to LOW and TX interrupt enable bit is not set. Am I right? And where is VIM configuration performed in the CCS accordingly to HalCoGen settings?
Does low level interrupt correspond to IRQ, but high level interrupt - to FIQ? Or not? FIQs will not be required for my application. Are the levels also denoted as low level = level 1 and high level = level 0? At the moment I am confused.
