关于CH372通讯程序被中断的问题!!!

我希望,单片机一方面通过USB口不停的获得实时数据,然后按照数据所规定的频率和幅度输出,两次输出的时间间隔在1US左右(根据信号的频率来定)。上位机根据信号的频率和幅度、种类计算出数据,发给单片机,信号主要为正弦波,而且可以变频。 不过我的定时中断,优先级最高,不能暂缓。我的项目,主要由上位机发送数据,然后单片机按照非常严格的间隔将数据输出,如果数据输出的时间间隔被改变,则输出波形的频率会改变,这是不能接受的。 现在最大的问题是USB(CH372)的内置固件方式的程序不能被打断,不知其外置部件方式能否被打断。

希望大侠指点一下,不胜感激!

这种情况你要知道你的1US的时间中,空闲的时间是多少??也就是说你单片机输出数据的时间是多长,如果是满负荷操作的话那就没办法操作了


谢谢hcn,1US的时间中,空闲的时间大概50%,请教如何完成该任务?关键是usb的通讯程序,可以被中断吗?如果可以就好办,用两个缓冲区,一个满了就开始输出,同时usb往另一个缓冲区下载数据,如果都有数据就停止usb,关键是输出程序一旦开始就要严格定时输出,中断优先级最高,而usb也靠中断传送数据,如果定时输出中断usb的中断服务程序,会不会使usb通讯出错?请大侠给与指点,最好得出确定的结论。谢谢。


我们这边的USB通信是可以被任意打断的,只有控制传输只要被打断的时间不要超过几个US就没什么问题了 还有就是一个问题就是,你用500NS来发送数据的话,那你用中断的话,单片机的效率是很低的,光进中断就要200-300NS,那你发送数据的时间就更短了啊


只有登录才能回复,可以选择微信账号登录