‘壹’ 单片机多机通讯时,多是主机向从机发送命令后,从机给出应答信号,能不能从机主动给主机发送数据呢,谢谢
主机和从机通讯时,不可以从机主动发数据给主机。一般要主机主动去发布命令,从机去应答,如果从机也主动和主机联系,那么会造成主机接收数据错误,或者发送数据错误!
下面分析下原因。
1、首先说明下单片机多机通讯的原理:简单点就是多个单片机TXD和RXD连接到一个,主机的TXD连接从机的RXD,从机之前是并联状态;复杂的呢就是通过RS485芯片,连接方式和上面一样的,RS485相对来说传输数据抗干扰。
2、主机给从机发送数据,从机怎么来接收这一帧数据。一般我们是给每个从机都设置一个独一无二的地址。从机接收到数据首先判断是不是发送给自己的,就像是收快递一样的。不是发给自己的,后面的数据就不处理,或者不接收数据。
3、说明下主机和从机的概念。其实主机、从机都是一样的设备,作歼如为主机来说,这个设备要主动去和从机的设备去沟通,就好像车间的班长和流水线上的操作工,班长去下发任务,操作工根据任务命令去做事。
主机就是去告诉从机,什么时间去做什么事。从机就是等待命令,然后去检测外部信号,执行命令。
4、主机和从机通讯的时候罩御,能不能从机主动。明白了主机和从机的概念,深入的想一下,为什么要主机发送命令,从机做出应答呢
。一般是主机会和很多从机进行通信。主机和从机通信一般是有个时间的间隔。比如200ms发送一次,然后切换到下一个从机。
如果主机在发送数据的时候,从机突然主动和主机联系了,那么
就会出现数据错误了,因为主机在发送数据,发送的过程中肯定会造成来不及处理接收数据,因为单片机同时只能处理一件事情。
所以
主机就是要主动联系,从机就是要等待主机联系之后再回应主机。不然就会出现沟通混乱的问氏闷启题,在编写程序的时候一定要注意这一点。
‘贰’ 单片机如何输出4~20mA信号
原理上,单片机可以完成控制输出4~20mA信号。有两种方案:
1、运放+三极管构成可控恒流源,单片机用PWM波形经滤波后输出控制电压,该电压作为可控恒流源基准电压,达到控制输出4~20mA信号目的。优点是简便易行,缺点是恒流值随单片机电源电压变化且温度特性不好。
1、运放+三极管构成可控恒流源,单片机用专用DAC和基准电压源通过数模转换输出控制电压,该电压作为可控恒流源基准电压,达到控制输出4~20mA信号目的。优点是恒流源指标好,缺点是结构复杂且成本提高。
‘叁’ 51单片机如何控制电话拨号,原理是什么电路如何接谢谢了。
有专门用于单片机控制拨号的芯片,,拨号线D0,D1,D2,D3能排列成十六种状态,能出16种双音频信号或15钟脉冲信号.单片机用四条线控制D0,D1,D2,D3,再用两条线控制/CE和ACK就可。
单片机,全称单片微型计算机(英语:Single-Chip Microcomputer),又称微控制器(Microcontroller),是把中央处理器、存储器、定时/计数器(Timer/Counter)、各种输入输出接口等都集成在一块集成电路芯片上的微型计算机。与应用在个人电脑中的通用型微处理器相比,它更强调自供应(不用外接硬件)和节约成本。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出接口简单,功能较低。由于其发展非常迅速,旧的单片机的定义已不能满足,所以在很多应用场合被称为范围更广的微控制器;从上世纪80年代,由当时的4位、8位单片机,发展到现在的32位300M的高速单片机。