关于ch372中断的一个问题

各位,最近我用ch372做了个开发板,碰到两个问题: 1.ch372的中断脚接到51单片机的INT1上(外部中断1),单片机设置成外部中断低电平触发。现在的问题是: ch372的INT输出始终是低电平,导致中断服务程序不断被触发,甚至在ch372未被初始化的情况下也是如此,以及我成功初始化后,把usb线拔掉不做任何usb通讯也是如此,这好象不对吧?我的理解应该是ch372中断后,一但中断被响应,它就应该把int拉高。 虽然这个问题不影响usb通讯,但如果int1不断被触发,单片机的性能将大大折扣,严重影响其他程序的运行 2.ch372看起来很不问题,我简单的通过pc向它发一些数据,结果时间稍长CH375WriteData即返回错误。 上面两个问题应该排除是程序的问题,我用自己写的固件以及用内置固件,完全用贵公司网站上的那些测试代码均是同样的结果。另外,硬件问题也不大可能,布线方面严格按照贵公司手册上的说明做的,而且本人有超过5年的高速电路设计经验,这种低级错误大概也不大可能犯。

我想请教公司的技术人员,上述两种情况可能是什么原因,是否是芯片设计本身的不足导致的? 另外其他兄弟如果有好的建议,非常欢迎指教在下

补充句:用的是ch372A


CH372的中断引脚只有在执行完会产生中断的命令或接收、发送完数据才会产生中断。正常不会出现你所说的情况的。上电复位、初始化之后一直为高电平,接收到数据之后才会产生中断,也就是才会将INT#拉低,通知单片机有中断产生,单片机发了GET_STATUS命令获取中断状态之后,中断引脚INT#将被拉高。 你说372的INT#脚始终为低电平,会不会被你板子上拉低了,你可以直接将这个引脚翘起来,再看看发数据之前、发数据之后的变化。


没有,我是直接把ch372的INT脚与51 单片机的INT1脚直接相连的,本来在电路设计时候我考虑是在这个脚上加个10k的上拉电阻的,不过因为datasheet的参考设计中没有这样做,怕多此一举,但现在确实不正常


正常的话,INT#引脚在上电复位,以及初始化之后,都应该是高电平,只有在有中断产生时它才拉低。你有没有试过按我前面说的将这个引脚撬起来,断开与其它的连接试一下。如果撬起来还是这样的话,要不你换块芯片试一下。


引用回复: CH372的中断引脚只有在执行完会产生中断的命令或接收、发送完数据才会产生中断。正常不会出现你所说的情况的。上电复位、初始化之后一直为高电平,接收到数据之后才会产生中断,也就是才会将INT#拉低,通知单片机有中断产生,单片机发了GET_STATUS命令获取中断状态之后,中断引脚INT#将被拉高。 你说372的INT#脚始终为低电平,会不会被你板子上拉低了,你可以直接将这个引脚翘起来,再看看发数据之前、发数据之后的变化。 同意二楼的说法,已经很清楚了.正常的情况下中断引脚是为高电平,只有在执行完会产生中断的命令或接收、发送完数据才会被拉成低电平申请中断! 如果你方便的话,可以把你的原理图和程序发到我们的技术支持信箱,我们再具体了解一下,尽快给你一个满意的答案!


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