求助:51单片机如何实现两个串口分时复用的

2021-01-12 22:18:27 字数 694 阅读 9049

1楼:匿名用户

是一个单片机,要接成两个串口吗?

那只好用一个模拟开关,来切换两个串口。但实际上是一个串口,需要单片机分时来使用两个串口。这需要有严格的通信协议,编写程序要按这个协议,否则,两个串口在时间上会出现冲突,或不能正常通信,或丢失数据。

stc单片机,就有这种类型的,外部引脚是两个串口,即两组rxd,txd引脚。内部还是一个uart,但两个串口的切换是在内部完成的,外部用起来就方便多了。

stc单片机还有内部有两个独立串口的,这样,用起来就省事多了,两个独立串口,互相不影响。

51单片机地址数据复用输出是怎么做到复用的,求大神细说?!

2楼:匿名用户

执行 movx a,@dptr 时,不是wr信号有效,是rd信号有效。如果想使用外部ram,又想利用单片机的地址复用功能,就必须加地址锁存器。像你说的那样是无法正确执行movx a,@dptr指令的。

3楼:匿名用户

怎么不要锁存器?p0口先输出地址低8位,同时p2口输出地址高8 位,ale信号就是锁存地址低8 位用的 然后p0口输出数据,输出数据时,锁存器输入和输出已经隔离了,给它数据也没用了

输出数据时地址已准备好了,同时读/ 写 选通信号有效

4楼:小狂

想省出p2的话就得加锁存器

单片机程序问题stc双串口,stc89c52单片机怎么实现用两个串口控制两个模块?

1楼 这东西还得自己去多思考,多琢磨 串口通信 由串口1发出至上位机 你上位机是完全没收到数据吗? 波特率,校验位之类的设置对没? 你可以一步一步的来调 先调通串口2 再调串口1 最后联调 2楼 匿名用户 不用示波器光看程序太费劲了,用示波器看看是哪个地方的问题,没有示波器用万用表看看电影值是否变动...

在应用单片机时,可不可以在同管脚同时实现两个输出

1楼 匿名用户 应该说不能。 楼上kyzy00238和814414180二位所说的可以 复用 ,虽然理论上可以做到,但那必须外加一些复杂的解算电路硬件,或者,采用特殊的用法 例如串行通信时不管数码管显示,允许它乱闪 而不通信时数码管才正常显示 。 我想外加复杂硬件的做法,大概不是您所要的。而允许数码...