打印

C8051F340单片机UART1串口程序运行过程中切换到别的口

[复制链接]
1264|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xbyu520|  楼主 | 2016-7-14 17:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
xbyu520|  楼主 | 2016-7-14 17:58 | 只看该作者
主要原因是想按照时间顺序,把UART1做多个串口使用。UART0已经被使用了。

使用特权

评论回复
板凳
yhn1973| | 2016-7-14 18:03 | 只看该作者
不可以吧,这个一切换,其他的交叉开关分配管脚也跟着变了,如果交叉开关只有一个串口的话还差不多

使用特权

评论回复
地板
xbyu520|  楼主 | 2016-7-14 18:09 | 只看该作者
感觉按道理应该可以的,如果uart1口在其他口的后面,可以做到不影响其他口

使用特权

评论回复
5
xbyu520|  楼主 | 2016-7-14 18:10 | 只看该作者
可惜到目前为止,还没调通

使用特权

评论回复
6
ningling_21| | 2016-7-14 18:17 | 只看该作者
xbyu520 发表于 2016-7-14 18:10
可惜到目前为止,还没调通

改变交叉开关容易影响其它管脚

使用特权

评论回复
7
xbyu520|  楼主 | 2016-7-14 21:38 | 只看该作者
交叉开关有优先权的,uart1如果排在最后,对前面已经分配的没有影响

使用特权

评论回复
8
ayb_ice| | 2016-7-15 06:23 | 只看该作者
放在后面分配是可以的,或者跳过己使用的PIN

使用特权

评论回复
9
xbyu520|  楼主 | 2016-7-15 09:19 | 只看该作者
ayb_ice 发表于 2016-7-15 06:23
放在后面分配是可以的,或者跳过己使用的PIN

问题是我不管怎么配置,就是只能在一个iO口上输出,不好轮流切换输出。您实际试验过吗?

使用特权

评论回复
10
yhn1973| | 2016-7-15 09:37 | 只看该作者
会不会是先后顺序有问题,比如说先不把UART1连到引脚,然后再配置跳过寄存器,然后再把UART1连到引脚

使用特权

评论回复
11
xbyu520|  楼主 | 2016-7-15 10:26 | 只看该作者
yhn1973 发表于 2016-7-15 09:37
会不会是先后顺序有问题,比如说先不把UART1连到引脚,然后再配置跳过寄存器,然后再把UART1连到引脚 ...

按照你的方法试验了,还是不行

使用特权

评论回复
12
ddlxiaoxu| | 2016-7-15 10:45 | 只看该作者
不行加个串口扩展芯片吧!

使用特权

评论回复
13
mohanwei| | 2016-7-15 11:15 | 只看该作者
你先用那个config2来做两份配置文件:1份是默认的,另一份是跳转后的。看看其它管脚是否有冲突。如果没有,把初始化函数改名为init1()和init2(),需要的时候切换一些就好了

使用特权

评论回复
14
xbyu520|  楼主 | 2016-7-15 13:54 | 只看该作者
本帖最后由 xbyu520 于 2016-7-15 13:55 编辑
mohanwei 发表于 2016-7-15 11:15
你先用那个config2来做两份配置文件:1份是默认的,另一份是跳转后的。看看其它管脚是否有冲突。如果没有, ...

谢谢!我从新配置了IO口参数,现在可以切换了。只是不知道这种用法是不是科学的,是不是厂家允许的。

使用特权

评论回复
15
xbyu520|  楼主 | 2016-7-17 11:20 | 只看该作者
请问版主,为什么无法给分数

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

43

主题

853

帖子

5

粉丝