娘西皮的,现在碰到一个很怪异棘手的问题,同样两块电路板,一个是接FT232BL虚拟出串口,一个是不焊接FT232BL,单片机直接转接一个MAX3232的板子,
原先的偶都是用M8L做的,现在因为碰到一个特殊的情况,加了好多东西,容量不够,用M168V做。
这两个程序,M8L和M168V以前都成功在FT232BL虚拟串口的板子上做过,产品也出货,客户使用一两年都没啥问题的。说明程序都是OK的。
现在的怪异问题来了。同样的一片M8L,在FT232BL线路板以及MAX3232的线路板上,工作都是OK的,
而M168V在FT232BL的板子上工作OK,可在通过MAX3232的板子上工作不良,用LED点亮测试方法发现,M168V很难进入接收中断,或难得进入接收中断后,对接收到数据处理不正确。
M168V的熔丝位偶都尝试过了,偶外部晶振用的是3.6864MHZ,在MAX3232工作板上,用3-8M的熔丝设置不行,换到8M以上熔丝也不行,BOD开启与不开启也不行,而同样在FT232BL的板子上,同样的程序,不管熔丝怎么设置都能正常工作。
电源处理偶是7805L,输入端有1000U的大电解,输出端现在也加了1000U的大电解,103,104用了不下4、5个。
技术文档偶看了,M8L和M168V的管脚顺序都是一模一样的,管脚功能当然是M168V要多点,但是偶同样工作在UART模式,怎么M8L在FT232BL和MAX3232的板子上工作OK,而M168V的片子在同样的FT232BL的板子上工作OK,而在MAX3232板子上工作不行呢? M16L,M32L,M64L也都均能在MAX3232模式下及FT232BL虚拟串口模式下工作正常。
娘B的,ATMEL公司害死人。
|