单片机之间串口通信速率问题
现在想在DSC单片机与K10单片机之间用串口通信,K10要把电网采样的瞬时值送到DSC中,DSC中每隔50us就要处理一次数据。如果我用K10在50us内传8个字节数据到DSC中,串口通信速率要到1.28M bit/s
我想问下,单片机之前通信速率能达到多快?误码率怎么样。谢谢大家。 有没有考虑过SPI的方式,一个当主机,一个当从机,速度肯定可以满足,用串口比较吃力。 串口应该不行 根本不能用串口,要用并口连接,并且加校验。 能用SPI就妥妥的。 波特率太高串口不行 talkingbeast 发表于 2015-9-9 11:56
有没有考虑过SPI的方式,一个当主机,一个当从机,速度肯定可以满足,用串口比较吃力。 ...
硬件已经设计了,当时没考虑到。不行的话,只能到把采样改到主机采样了 dmmcu 发表于 2015-9-9 12:38
波特率太高串口不行
好,谢谢。了解 电子小生 发表于 2015-9-10 10:52
好,谢谢。了解
如果两边都有正确的dma和fifo,其实短距离内用串口跑几兆都是没问题的。
关键是得有dma和fifo,不然中断频率受不了 redroof 发表于 2015-9-10 12:40
如果两边都有正确的dma和fifo,其实短距离内用串口跑几兆都是没问题的。
关键是得有dma和fifo,不然中断频 ...
中断应该是50us一次。 eelninth 发表于 2015-9-10 11:22
用什么口也不能把其性能用尽,也留有足够余量系统才稳定,这么高的速度,UART明显不合适 ...
嗯,我也觉得太高了。所以才来问问大家 电子小生 发表于 2015-9-10 12:54
中断应该是50us一次。
50us的倒数是20兆,为什么有这么快?
20兆波特率也不过2兆的字节速率啊。如果有8级的FIFO,速率就降到256K,这样差不多就够了。
或者用DMA来收发字节流,这样其实完全处理的过来。
本帖最后由 NJ8888 于 2015-9-10 14:40 编辑
我曾经的产品DSP和ARM M3之间1.5625M波特,之所以这个是想快又要适合两侧时钟能分频出来.妥妥的 redroof 发表于 2015-9-10 14:31
50us的倒数是20兆,为什么有这么快?
20兆波特率也不过2兆的字节速率啊。如果有8级的FIFO,速率就降到256 ...
你算错了,50us对应20kHz 50us内80个bit,你这串口速度要到1.6M啊,单片机上的串口速度跑到2M,4M应该都可以,关键是两边的时钟如果不同步,可能会有误差的问题,还有你这个50us内传8个字节数,如果没有FIFO,8个字节得产生8个中断,平均6.25us就得一个中断,貌似太频繁了 unknown 发表于 2015-9-10 16:58
50us内80个bit,你这串口速度要到1.6M啊,单片机上的串口速度跑到2M,4M应该都可以,关键是两边的时钟如果不 ...
飞思卡尔单片机可以设置OnFullRxBuf,自己设置缓冲区,缓冲区满了后,会发会OnFullRxBuf中断。这样,中断时间就可以很长了。 NJ8888 发表于 2015-9-10 14:39
我曾经的产品DSP和ARM M3之间1.5625M波特,之所以这个是想快又要适合两侧时钟能分频出来.妥妥的 ...
看来还是可以试试的。我想我这两块都是飞思卡尔单片机,时钟应该不会差太多的。 只要接收时保证不丢数据,是可以的。用DMA一般无问题,中断的话看你中断的最大响应时间。
页:
[1]