unvx 发表于 2024-5-20 16:06:57

刚接触单片机,请教串口问题

大家好,我是刚开始接触单片机,实际学习中有很多疑问,希望能得到大家的指点。
因为特定需求只能使用STC8H2K08U,QFN20 3mm x 3mm封装,这样的芯片,制作不大于1厘米的设备,只使用两个串口。
串口1:用来烧录、RTC对时、以及和PC通信。
串口2:用来和外设通信。
这样目前的接线就是
STC-USB Link1D -- 串口1 -- STC8H2K08U -- 串口2 -- 外设
设备工作情况是:
串口1:烧录、对时。当设备离开PC独立工作时,串口1不使用。
串口2:设备根据RTC闹铃时间从睡眠中醒来,给外设发送“AT”命令,让外设开始工作,STC8H2K08U自身再次进入掉电模式。
以上接线方式和逻辑是对的吗?
我现在困惑的是,当设备连接PC时,能通过串口1给外设发送“AT”命令来操作外设吗?外设接的是串口2。
就是设备工作时串口2来操作设备,设备不工作时PC通过串口1来操作设备,能这样操作吗?
因为体积问题,只想让设备留出4个触点 GND TX RX VCC。

电子DIY小家 发表于 2024-5-20 16:20:27


以上接线方式和逻辑是对的吗?
--对的

我现在困惑的是,当设备连接PC时,能通过串口1给外设发送“AT”命令来操作外设吗?外设接的是串口2。
--PC发送串口命令给单片机,单片机的串口1接受到命令之后再给串口2发数据!这样就可以实现PC给串口2发数据的效果了

就是设备工作时串口2来操作设备,设备不工作时PC通过串口1来操作设备,能这样操作吗?
--程序写好就可以让单片机实现两个串口的数据转发

因为体积问题,只想让设备留出4个触点 GND TX RX VCC。
--可以

unvx 发表于 2024-5-20 20:26:10

谢谢{:handshake:},我是纯小白{:sweat:},有两个串口数据转发的实例吗?
我看试验箱9.62实例 “15-串口2与串口3通信测试程序” 是短接TX RX,和你说的转发不一样,
其它不知道哪个是两个串口数据转发的实例。

unvx 发表于 2024-5-20 21:00:00

我现在看的是这个实例,PC发给串口1,原样返回。发给串口2,原样返回。
怎么让串口1的数据转给串口2,或者串口2的数据转给串口1呢?

jwd 发表于 2024-5-20 21:08:55

可以让发送的数据是从缓冲区拿啊

unvx 发表于 2024-5-21 10:48:56

能说一下具体怎么操作,或者改一下附件中的实例吗?

unvx 发表于 2024-5-22 16:45:41

只是这样改了一下,串口1发,串口2收,串口2发,串口1收。
这样是不是有问题,有时候还出乱码
能指点一下串口怎么转发吗?

乘风飞扬 发表于 2024-5-22 18:26:29

附件例子供参考

unvx 发表于 2024-5-22 18:48:43

收到,感谢{:handshake:}
页: [1]
查看完整版本: 刚接触单片机,请教串口问题