打开了两个串口,为什么输出都在一个上啊?

lcllcl20031   2009-2-16 22:24 楼主
定义了两个串口,串口1做shell用,串口2它用,可是用write输出时都在shell下显示,串口2一直没反应,请教一下可能是哪方面的问题呢,困惑了很久了,一直找不到问题所在。操作如下:
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
      ]]]]]]]]]]]  ]]]]     ]]]]]]]]]]       ]]              ]]]]         (R)
]     ]]]]]]]]]  ]]]]]]     ]]]]]]]]       ]]               ]]]]
]]     ]]]]]]]  ]]]]]]]]     ]]]]]] ]     ]]                ]]]]
]]]     ]]]]] ]    ]]]  ]     ]]]] ]]]   ]]]]]]]]]  ]]]] ]] ]]]]  ]]   ]]]]]
]]]]     ]]]  ]]    ]  ]]]     ]] ]]]]] ]]]]]]   ]] ]]]]]]] ]]]] ]]   ]]]]
]]]]]     ]  ]]]]     ]]]]]      ]]]]]]]] ]]]]   ]] ]]]]    ]]]]]]]    ]]]]
]]]]]]      ]]]]]     ]]]]]]    ]  ]]]]]  ]]]]   ]] ]]]]    ]]]]]]]]    ]]]]
]]]]]]]    ]]]]]  ]    ]]]]]]  ]    ]]]   ]]]]   ]] ]]]]    ]]]] ]]]]    ]]]]
]]]]]]]]  ]]]]]  ]]]    ]]]]]]]      ]     ]]]]]]]  ]]]]    ]]]]  ]]]] ]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]       Development System
]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]       VxWorks version 5.5
]]]]]]]]]]]]]]]]]]]]]]]]]]       KERNEL: WIND version 2.6
]]]]]]]]]]]]]]]]]]]]]]]]]       Copyright Wind River Systems, Inc., 1984-2002

                               CPU: ARM Integrator - ARM920T (ARM).  Processor .
                              Memory Size: 0x1e00000.  BSP version 0.5.6.
                             WDB Comm Type: WDB_COMM_END
                            WDB: Agent configuration failed.
-> devs
drv name
  0 /null
  1 /tyCo/0
  1 /tyCo/1
  4 bootHost:
  5 /pty/rlogin.S
  6 /pty/rlogin.M
  7 /vio
value = 25 = 0x19
->iosFdShow
fd name                 drv
  3 /tyCo/0                1 in out err
  4 (socket)               3
  5 (socket)               3
  6 (socket)               3
  7 (socket)               3
  8 (socket)               3
value = 32 = 0x20 = ' '
-> open("/tyCo/1",2,0)
value = 9 = 0x9
-> iosFdShow
fd name                 drv
  3 /tyCo/0                1 in out err
  4 (socket)               3
  5 (socket)               3
  6 (socket)               3
  7 (socket)               3
  8 (socket)               3
  9 /tyCo/1                1
value = 32 = 0x20 = ' '
-> write(9,"AAA",3)
AAAvalue = 3 = 0x3
->

回复评论 (5)

物理串口是不是就有一个呀
点赞  2009-2-17 09:08
这种情况跟有些target机器有关,建议换一台试试看。
点赞  2009-2-17 11:10
物理串口有2个的,在系统中调用AT91F_US_SendFrame()可以在串口2上看到数据啊 .
点赞  2009-2-17 13:27

vxworks shell 只支持一个终端输出.可以用   
ioGlobalStdSet (STD_IN,  consoleFd);
    ioGlobalStdSet (STD_OUT, consoleFd);
    ioGlobalStdSet (STD_ERR, consoleFd);
重新定向
config.h中定义了默认终端.
点赞  2009-4-14 13:53
查一下usrConfig里关于串行设备的配置部分
点赞  2009-4-14 23:21
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复