[STM32F1] STM32F103,IO口直接接光电开关可行吗?

[复制链接]
8043|11
 楼主| at0755 发表于 2013-12-31 15:08 | 显示全部楼层 |阅读模式
光电开关一般内部都是OC门,输出脚不接负载电阻,直接接到STM32的IO口,IO设置为内部上拉输入。
这样使用可靠吗?还需要另加电阻上拉吗?

一般常见电路用光耦隔离, 我电源共地没意义。
或有的电路加三极管开关,好象没什么必要。

一起请教:
1、我系统用二个STM32,想一个CPU1去复位CPU2,是不是CPU2的复位接到CPU1的任意IO,CPU1通过软件就可以控制CPU2任意时候复位了?
2、二个STM32可否共用一个8M有源晶振,直接从CPU1的OSC_IN进,OSC_OUT出接到CPU2的OSC_IN,然后CPU2的OSC_OUT悬空?手册上好象没说用有源晶振时,OSC_OUT怎么接。

我是新手,顺便说下ADC的参照电压的使用的一个注意事项,帮助下新手:
ADC内部通道17的1.2V参照电压稳定性很高,使用时读通道17后修正外部采集数据,误差很小,使用很方便。
但要注意一定要先使能内部温度传感器,否则读参照电压时会出现很大误差,是完全不能使用的。
即ADC的初始化要加上这句:
ADC_TempSensorVrefintCmd(ENABLE);//内部温度传感器使能


常见光电开关内部结构如下图:


5186 发表于 2013-12-31 15:44 | 显示全部楼层
应该可以,我一般也这样接,没发现什么问题,无须外接上拉电阻
 楼主| at0755 发表于 2013-12-31 16:03 | 显示全部楼层
5186 发表于 2013-12-31 15:44
应该可以,我一般也这样接,没发现什么问题,无须外接上拉电阻

我也觉得应该是没问题,不过我这是工业环境使用,太简单了总有点心里不踏实的感觉。
led控制卡 发表于 2013-12-31 16:17 | 显示全部楼层
可以直接用
 楼主| at0755 发表于 2013-12-31 16:25 | 显示全部楼层
谢谢楼上二位,那我PCB上就IO口一条线直接拉端子上去!
grant_jx 发表于 2013-12-31 17:34 | 显示全部楼层
Reset只要保证电平、电平维持时间即可,因为内部复位电路的MOS原因,你也不需要保证Reset上有足够的驱动电流(不需要额外加上拉电阻),MCU的IO口足以做到复位另一个MCU。
Rain_King 发表于 2013-12-31 17:43 | 显示全部楼层
一般是没有问题的,内部上拉妥妥的,当然除非你有特别的电流要求.........
 楼主| at0755 发表于 2013-12-31 17:52 | 显示全部楼层
grant_jx 发表于 2013-12-31 17:34
Reset只要保证电平、电平维持时间即可,因为内部复位电路的MOS原因,你也不需要保证Reset上有足够的驱动电 ...


谢谢grant_jx版主解答,计划硬件复位电路还是留着,再从CPU1拉根线到CPU2的NRST,CPU2异常时可软件复位CPU2,没问题就OK。

正在布板,晶振还是决定用二个无源算了,理论上一个有源晶振应该没问题,但布线比较麻烦,担心晶振走线太长。
 楼主| at0755 发表于 2013-12-31 18:16 | 显示全部楼层
感觉有的工程师会过度设计,或者也只是COPY,这是原先51系统上的光电信号电路,本来也是准备直接COPY到新板的,虽然也不复杂,但想了下应该可以更简单。
不过又看了下原先的电路,在特殊情况下,比如接错线时引入高于VCC的电压,不至于损坏CPU。
现在如果光电开关直连IO,好象应该串个二极管保险点。
OPTO.jpg
戈卫东 发表于 2013-12-31 18:32 | 显示全部楼层
板子上最好放一个上拉电阻。。。
尽量避免用两个MCU在一个板子上。。。。
戈卫东 发表于 2013-12-31 18:33 | 显示全部楼层
现在晶振也没多少钱,似乎没必须省在这里。
 楼主| at0755 发表于 2013-12-31 19:09 来自手机 | 显示全部楼层
戈卫东 发表于 2013-12-31 18:32
板子上最好放一个上拉电阻。。。
尽量避免用两个MCU在一个板子上。。。。 ...

尽量避免二个MCU在一个板子上,是指?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

59

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部