单片机
C8051F340单片机,IO口要外接一个旋转编码器的AB相的电平信号。
当不接上编码器的时候,系统正常。
接上编码器,并不转动,单片机会死机,有时候则反复重启。
程序都是很成熟的,前一台一样的没有这种问题。
请教如何排除这种故障?从哪些方面以及如何下手?
编码器接口直接相连MCU的IO吗?没图不好分析
编码器输出的ttl信号,直接接单片机io口。因为是高电平计数,所以每个io口有一个2k的下拉电阻。
这是长线耦合空间的电磁干扰所致,说明你的系统EMC设计不良。
改进方法:注意电源设计及去耦,PCB布局走线 ...
请教编码器供电端去藕电容用104外,还需不需要并一个大点的电解电容?供电端的磁珠是电源和地都需要嘛?信号线串磁珠的话,大小如何选择?单片机的io口有2k的下拉电阻。
设置成推挽模式仅在做输出时才有效,输入管脚应设置成弱上拉型。
磁珠电感没有直插式的,你买的应该是穿芯 ...
这个单片机设置io口模式只能是推挽或者漏极开路,设置成推挽输出后,弱上拉就被禁止了。只有设置成漏极开路才可选择弱上拉。
我的理解是推挽和漏极开路只能一个存在,因为单片机通过设置相关寄存器位为0表示漏极开路,为1表示推挽。
或者是我的理解有误?但是按照芯片手册,设置为推挽后,就没有弱上拉了。
建议重新焊接MCU,必要时先吹下来,它再重焊接。
单片机是机器焊的,焊接出问题的可能性不大吧?而且试了两块板都这样。