keil MDK 中使用虚拟串口调试串口

看了很多的文章,写的都很简单(其实也很简单:))。给出个详细一点的教程。

 

1.       利用VSPD将PC上的两个虚拟串口连接起来。如图我将COM2 和COM3连接起来。点击Addr pair。

 

2.       可以看到Virtual ports上将两个虚拟串口连接到了一起了。

 

3.虚拟串口准备就绪了。先将直接输入命令的方式来调试。我们打开KEIL MDK的,设置成仿真的模式。点DEBUG.在COMMAND串口输入:MODE   COM2   38400,  0,  8,  1

 

 

 


说明:

MODE命令的作用是设置被绑定计算机串口的参数。基本使用方式为:

MODE COMx baudrate, parity, databits, stopbits

其中:

COMx(x = 1,2,…)代表计算机的串口号;

baudrate代表串口的波特率;parity代表校验方式;

databits代表数据位长度;

stopbits代表停止位长度。

例如:MODE COM1 9600, n, 8, 1

设置串口1。波特率为9 600,无校验位,8位数据,1位停止位。

MODE COM2 19200, 1, 8, 1

设置串口2。波特率为19 200,奇校验,8位数据,1位停止位。

4、点回车后,再输入 ASSIGN COM2 <S1IN> S1OUT

 

 

 

说明:

COMx代表计算机的串口,可以是COM1、COM2、COM3或其他;

inreg和outreg代表单片机的串口。对于只有一个串口的普通单片机,即SIN和SOUT;对于有两个或者多个串口的单片机,即SnIN和SnOUT(n=0,1,…即单片机的串口号)。

例如:ASSIGN COM1 < SIN > SOUT

将计算机的串口1绑定到单片机的串口(针对只有一个串口的单片机)。

ASSIGN COM2 < SIN > SOUT

将计算机的串口2绑定到单片机的串口0(针对有多个串口的单片机,注意串口号的位置)。

需要注意的是,参数的括号是不能省略的,而outreg则是没有括号的。


5、然后调试程序。可以看到串口COM3打印出了串口1的数据了。

posted @ 2012-03-12 19:35  Hiker天下  阅读(22702)  评论(5编辑  收藏  举报