我在中断处做一个操作(比如说发送一串数据),没终端一次,发送一串数据,问题来了,当我的数据还没有发送完,中断间隔很短,短到数据没传送完毕下一次中断就来临了,请问如何避免因此种问题导致数据错误呢?
要求不能修改中断频率。
谢谢各位大神!!!
Susan Yang:
请问您现在用的是什么芯片?CAN通信的话,发送完成之后会置位相应位
中断控制发送:
①当发送缓冲区被锁定时,CPU必须将报文临时保存到数据存储器中,并置位软件标志“还有报文”用于指示有新的报文等待发送。在结束当前运行的发送时启动中断服务程序,在中断服务程序中进行下一个发送报文的起始处理。
②当发送缓冲区被释放时,CPU将新报文写入发送缓冲区,并置位发送请求标志。在发送结束时CAN控制器产生一个发送中断。
中断控制接收:已接收一个报文,该报文通过验收滤波器并放入接收FIFO中,则产生一个接收中断。CPU能够立即响应将接收到的报文传送到自身的报文存储器,并置位命令寄存器的释放缓冲区标志。
da qin zheng sheng:
可以考虑结合dma工作
user5820093:
回复 Susan Yang:
我用的是tms570ls0914的芯片