大家看看,这样设计基于APB的UART行不?
时间:10-02
整理:3721RD
点击:
想设计一个基于APB的uart控制器,初步设想以中断的方式通知CPU发送和接收数据。当发送FIFO为空时,将中断寄存器中的某位置一,给出一个中断,然后CPU读取中断寄存器的值,然后发数据,如果FIFO满了,则将该位置零,同时给出一个中断,CPU读取后判断是否停止。用同样的方式处理接收FIFO。不知道这样设计合理不,希望各位大哥出来拍砖。谢谢!
顶起,大家帮帮忙。
这需要和软件进行商量,看是用中断方式还是用查询方式,如果是查询方式,那就不需要中断了
我想知道,这种方式行不行啊,或者说有什么优缺点。
这样感觉不合理,如果 FIFO 满的中断处理不及时的话,将会丢数据!
当发送FIFO为空时,给一个中断,cpu连续发送16个数据(假设FIFO为16x8的)。
因为当发送FIFO为空时,给出中断,发送要经过很长一段时间才会再次读取FIFO的内容。同理,当接受FIFO为满时,同样要经过很长一段时间才能继续往FIFO里塞数据。所以应该不存在中断处理不及会丢数据。