串口接收问题

想要实现串口的接收功能,一开始是通过新建一个任务然后使用read函数专门进行接收,但是在测试的过程中发现这个方法不可行,有时不一定会接收的到。所以现在就想要通过中断进行串口的接收,但是由于对于这个单片机还有软件的不熟悉,都不知道有没有串口中断,也不知道怎么配置。所以就想要问一下瑞萨工程师,这个该怎么办?

  • 不太建议字节写中断函数,因为改动比较大,你可以使用操作系统在一个任务里面调用read函数来读取数据,每次读一个,读不到的话就会切到别的任务,如果有数据收到就会切回来,和中断差不多,把这个任务当成一个中断函数来用就可以了。
    如果想修改接收中断的话,就到/generate/sc_drivers/r_scifa/src/hld/r_scifa_hld_prv.c里面找
    RXI_handler然后修改这个函数,启动接收时还调用read函数,但是比较复杂需要自己看懂代码来写驱动。