主题:关于RS485和RS232 共有36524人关注过本帖 |
---|
kchmn |
1楼 |
关于RS485和RS232 Post By:2006-1-23 21:37:00 [只看该作者]
ETR232i如同手册中提到,485和232在源代码上是没有区别的。而在485和232 demo中唯一的区别是在485中多了一个if语句,然后reset ii=0. 就我看来,在没有结束字符和一次性传输字符教少的情况下,485和232是没有区别的。可否用strlen得出的字符串长度来作为结束一个传输文件的手段?具体485和232在编程上有什么区别啊?
|
|
单帖管理 | 引用 | 回复 |
x10 |
2楼 |
Post By:2006-1-24 9:52:00 [只看该作者]
在ETR232i评估板上RS485采用TXD自动切换收发方向,所以数据收发程序驱动与RS232没有区别。如果采用RTS切换收发方向(抗干扰能力强),发送程序则有所不同。
|
|
单帖管理 | 引用 | 回复 |
kchmn |
3楼 |
Post By:2006-1-24 14:29:00 [只看该作者]
如果要采用RTS切换收发方向,应该怎样编?是直接控制硬件切换?可否发一个样本。另外,如果同时要用到多个com port,如1,2,3,在编写user.bat时该怎么写?例如跑test.exe,user.bat中是
test COM1 COM2 COM3还是其它格式? |
|
单帖管理 | 引用 | 回复 |
kchmn |
4楼 |
Post By:2006-1-24 14:36:00 [只看该作者]
在我的程序中,我用9600 baud rate控制2 个RS485的泵,我确认我的控制程序没有问题,但是只能给泵发出第1个命令串,大概8 byte,接着第2....n个字符串大约15 byte却不能正确发到泵上。我确认过要发出的每单一命令,都能正常执行,但是当连在一起后,却不行。 一般会造成泵死掉. 我在每次发送后都有给至少3秒的NB_Delay,但是结果差不多。请问可能的原因?
|
|
单帖管理 | 引用 | 回复 |
zhl |
5楼 |
Post By:2006-1-24 17:16:00 [只看该作者]
1、采用RTS来切换收发方向的程序已发给你,请查收。
2、同时使用多个串口需要重新编写应用程序,在应用程序中同时初始化三个串口并安装相应的中断。 3、这和程序有关,能将你的程序发过来看看吗? |
|
单帖管理 | 引用 | 回复 |
kchmn |
6楼 |
Post By:2006-1-24 18:04:00 [只看该作者]
我需要用RS485来控制2个泵,一个RS232/TTL的来控制一个8051卡,还有个用来给上位机发消息。程序发到support了。谢谢
|
|
单帖管理 | 引用 | 回复 |
kchmn |
7楼 |
Post By:2006-1-24 19:02:00 [只看该作者]
因为对不同串口发送不是同时的,不可以先初始化一个串口,发送完后再初始化另外的吗?还是你所指的初始化是说你们已经烧进rom的程序不支持同时初始化多个串口,需要改?
|
|
单帖管理 | 引用 | 回复 |
x10 |
8楼 |
Post By:2006-1-24 20:33:00 [只看该作者]
我们所提供的串口驱动程序和BIOS无关。一般把初始化放在应用程序的开始,而什么时候使用串口则是由应用程序决定。明天我会看你的代码的。
|
|
单帖管理 | 引用 | 回复 |
kchmn |
9楼 |
Post By:2006-1-26 16:12:00 [只看该作者]
泵的问题我解决了,是我程序的错。现在留下来的问题就是怎样书写user.bat文件然后可以在.exe中同时运用2个串口。(非同时)
|
|
单帖管理 | 引用 | 回复 |
x10 |
10楼 |
Post By:2006-1-27 19:14:00 [只看该作者]
这个应当很简单,不是很明白会有什么问题。
|
|
单帖管理 | 引用 | 回复 |
kchmn |
11楼 |
Post By:2006-2-3 9:50:00 [只看该作者]
例,要运行test.exe,用com1,com3是在user.bat里面直接写 
test COM1 COM3吗? 但是我直接写test COM3 两个串口都能通讯,那么在user.bat中加入COM Port number的用意是什么呢? |
|
单帖管理 | 引用 | 回复 |
x10 |
12楼 |
Post By:2006-2-3 19:47:00 [只看该作者]
抱歉我会看看代码,明天答复你。
|
|
单帖管理 | 引用 | 回复 |