2、用或门集成电路(如4072)加一级电压放大级实现。
3、直接用八个继电器实现
你好:
这个电路和程序是相当简单的:
电路方面,你找一个单片机最小系统,然后随便禅明找一个普通贺瞎告IO口当作电平检测引脚,再随便找另一个普通IO口当继电器驱动引脚,就这样了,没什么复杂的。
程序也很简单啊,比如P1^0作电平检测,P1^1作继电器驱动
sbit TTL=P1^0
sbit relay=P1^1
if(TTL==0)
{
TR0=1
relay=1
}
然后定时器中断函数这么写:
void Timer0() interrupt 1
{
TH0=(65536-50000)/256
TL0=(65536-50000)%256
if(++count>20)
{
count=0
if(++num==7)
{
num=0
TR0=0
relay=0
}
}
}
当让,继电器类型得考虑进去。
有不懂的地方随时回复我。
希神芦望我的回答能帮助到你。
首先,MAX485是单5V供电的,所以你应当改用MAX3485或其它的3.3V的485收发器。其次,C1、C2两个电容不应该是同一个值,一般一个224和一个222之类,相差两个数量级。
再次,端口的防护一般使用TVS管。普通稳压管的响应速度太慢,两个稳压管反接起不到好的保护效果。局兄弯
“这个PA0我应该怎么写程序”
PA0拉高电平时,收发器处于发送状态;PA0拉低电平时,收发器处于接收状态。你需要尘槐根据自己的通信协议,规划好节点接管总线的时序桐闷,平时处于接收状态,拿到令牌或分配到自己的时间片以后就切换到发送状态发送数据包。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)