文档介绍:基于Vxworks实时操作系统的串口通信程序设计与实现
摘要:结合嵌入式实时操作系统Vxrks实现风洞测控系统的实际应用,以其中的串口通信为例,讨论了在Vxrks下实现串口通信的关键技术,给出了根本原理、环境配置和程序例如。关键词::
#defineINLUDE_DB
#defineINLUDE_DB_TTY_TEST
#undefDB__TYPE
#defineDB__TYPEDB__SERIAL/*定义通信方式为串口联结*/
#defineDB_TTY_HANNEL1/*通道号*/
#defineDB_TTY_BAUD9600/*串口速率,可设置至38400*/
#defineDB_TTY_DEV_NAE"ty/1"
#defineNSLE_TTY0
#defineDEFAULT_BT_LINE"fd=0,0〔0,0〕hstnae:/fd0/vxrks\h=主机
ipe=目的机ipu=主机上的登录用户名"
(2)在Trnad集成环境中执行菜单命令PrjetakeP486nTargetslean删除以前生成的文件,执行菜单命令PrjetakeP486BtRTargetsbtr_unp编译链接生成btr_unp;再选择VxrksTarget,编译生成vxrks;
(3)拷贝\\Trnad\target\nfig\p486\btr_unp至\\Trnad\hst\bin下
(4)重命名文件btr_unp为btr;
(5)准备一张已格式化的空盘插入软驱;
(6)在目录\\Trnad\hst\bin下执行命令kbta:btr;
(7)拷贝\\Trnad\target\nfig\p486\Vxrks至软盘;
(8)将系统制作盘插入目的机软驱,加电启动目的机即载入Vxrkst系统。[3]
5程序例如
#
#inlude""
#
#
#
#
#
#
#inlude"types/"
intpen_1(vid)//翻开串口1函数
{intsfd;//串口设备文件描绘符
sfd=pen(〞/ty/0〞,0_RDR,0);//翻开串口并返回串口设备文件描绘符
if(sfd==ERRR)//假如不能翻开串口1那么打印出错信息
printf("Yuan’tpenprt1!");
}
intnfig_1(vid)//串口1配置函数
{itl(sfd,FISETPTINS,PT_LINE);//设置串口工作形式为行形式:LINE_DE
itl(sfd,FIBAUDRATE,9600);//设置串口波特率为9600bps
itl(sfd,FIFLUSH,0);//清空输入输出缓冲
itl(sfd,SI_H_PTS_SET,S8|S