




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
嵌入式实验2 第一篇:嵌入式实验2南昌航空大学实验报告二0一一年10月16日课程名称:嵌入式系统实验名称:串行端口程序设计班级:080611学生姓名:曹启斌学号:08061107指导教师评定:签名:一、实验目的了解在linux环境下串行程序设计的基本方法。掌握终端的主要属性及设置方法,熟悉终端IO函数的使用。3学习使用多线程来完成串口的收发处理。二、实验内容读懂程序源代码,学习终端IO函数tcgetattr(),tcsetattr(),tcflush()的使用方法,学习将多线程编程应用到串口的接收和发送程序设计中。三、预备知识1、有C语言基础。2、掌握在LINUX下常用编辑器的使用。3、掌握Makefile的编写和使用。4、掌握Linux下的程序编译与交叉编译过程四、实验设备及工具硬件:UP-NETARM2410-S嵌入式实验仪,PC机pentumn500以上,硬盘40G以上,内存大于128M。软件:PC机操作系统REDHATLINUX9.0+MINICOM+AMRLINUX开发环境五、实验原理Linux操作系统从一开始就对串行口提供了很好的支持,为进行串行通讯提供了大量的函数,我们的实验主要是为掌握在LINUX中进行串行通讯编程的基本方法。1.程序流程图程序流程图如图2-3所示:图2-3程序流程图2串口操作需要的头文件#include/*标准输入输出定义*/#include/*标准函数库定义*/#include/*linux标准函数定义*/#include#include#include/*文件控制定义*/#include/*PPSIX终端控制定义*/#include/*错误号定义*/#include/*线程库定义*/3打开串口在Linux下串口文件是位于/dev下,串口一为/dev/ttyS0,串口二为/dev/ttyS1,打开串口是通过使用标准的文件打开函数操作:intfd;/*以读写方式打开串口*/fd=open(“/dev/ttyS0”,O_RDWR);if(-1==fd){perror(“提示错误!”);}4设置串口最基本的设置串口包括波特率设置,效验位和停止位设置。串口的设置主要是设置structtermios结构体的各成员值。structtermio{unsignedshortc_iflag;/*输入模式标志*/unsignedshortc_oflag;/*输出模式标志*/unsignedshortc_cflag;/*控制模式标志*/unsignedshortc_lflag;/*localmodeflags*/unsignedcharc_line;/*linediscipline*/unsignedcharc_cc[NCC];/*controlcharacters*/};设置这个结构体很复杂,可以参考man手册或者由赵克佳、沈志宇编写的《UNIX程序编写教程》,我这里就只考虑常见的一些设置:波特率设置:下面是修改波特率的代码:structtermiosOpt;tcgetattr(fd,&Opt);cfsetispeed(&Opt,B19200);/*设置为19200Bps*/cfsetospeed(&Opt,B19200);tcsetattr(fd,TCANOW,&Opt);校验位和停止位的设置:无效验8位Option.c_cflag&=~PARENB;Option.c_cflag&=~CSTOPB;Option.c_cflag&=~CSIZE;Option.c_cflag|=~CS8;奇效验(Odd)7位Option.c_cflag|=~PARENB;Option.c_cflag&=~PARODD;Option.c_cflag&=~CSTOPB;Option.c_cflag&=~CSIZE;Option.c_cflag|=~CS7;偶效验(Even)7位Option.c_cflag&=~PARENB;Option.c_cflag|=~PARODD;Option.c_cflag&=~CSTOPB;Option.c_cflag&=~CSIZE;Option.c_cflag|=~CS7;Space效验7位Option.c_cflag&=~PARENB;Option.c_cflag&=~CSTOPB;Option.c_cflag&=&~CSIZE;Option.c_cflag|=CS8;设置停止位:1位:options.c_cflag&=~CSTOPB;2位:options.c_cflag|=CSTOPB;需要注意的是,如果不是开发终端之类的,只是串口传输数据,而不需要串口来处理,那么使用原始模式(RawMode)方式来通讯,设置方式如下:options.c_lflag&=~(ICANON|ECHO|ECHOE|I

努力****元恺
实名认证
内容提供者


最近下载
一种基于双轨缆道的牵引式雷达波在线测流系统.pdf
一种基于双轨缆道的牵引式雷达波在线测流系统.pdf
一种胃肠道超声检查助显剂及其制备方法.pdf
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
201651206021+莫武林+浅析在互联网时代下酒店的营销策略——以湛江民大喜来登酒店为例.doc
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf
用于空间热电转换的耐高温涡轮发电机转子及其装配方法.pdf