linux下串口编程
Linux 下串口编程入门
文档选项
<tr
valign="top"><td width="8"><img alt="" height="1" width="8"
src="//www.ibm.com/i/c.gif"/></td><td width="16"><img alt="" width="16"
height="16" src="//www.ibm.com/i/c.gif"/></td><td class="small"
width="122"><p><span class="ast">未显示需要 JavaScript
的文档选项</span></p></td></tr>
打印本页
将此页作为电子邮件发送
级别: 初级
左锦
(zuo170@163.com
), 副总裁, 南沙资讯科技园
2003 年 7 月 03 日
Linux 操作系统从一开始就对串行口提供了很好的支持,本文就 Linux 下的串行口通讯编程进行简单的介绍。
串口简介
串
行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用。常用的串口是 RS-232-C 接口(又称 EIA
RS-232-C)它是在 1970 年由美国电子工业协会(EIA)联合贝尔系统、
调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换
接口技术标准"该标准规定采用一个 25 个脚的 DB25
连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。传输距离在码元畸变小于 4% 的情况下,传输电缆长度应为 50
英尺。
Linux 操作系统从一开始就对串行口提供了很好的支持,本文就 Linux 下的串行口通讯编程进行简单的介绍,如果要非常深入了解,建议看看本文所参考的
《Serial Programming Guide for POSIX Operating Systems》
计算机串口的引脚说明
序号
信号名称
符号
流向
功能
2
发送数据
TXD
DTE→DCE
DTE发送串行数据
3
接收数据
RXD
DTE←DCE
DTE 接收串行数据
4
请求发送
RTS
DTE→DCE
DTE 请求 DCE 将线路切换到发送方式
5
允许发送
CTS
DTE←DCE
DCE 告诉 DTE 线路已接通可以发送数据
6
数据设备准备好
DSR
DTE←DCE
DCE 准备好
7
信号地
信号公共地
8
载波检测
DCD
DTE←DCE
表示 DCE 接收到远程载波
20
数据终端准备好
DTR
DTE→DCE
DTE 准
相关文档:
下面的代码分析是根据linux-2.6.17.14_stm22版本
#define STSYS_WriteRegDev32LE(Address_p, value) writel((u32)value, (void*)Address_p)
在include/asm-sh/io.h
#define writel(v,a) ({__raw_writel((v),(a));mb();})
#define __raw_write(v,a) __writ ......
关于read(...)返回值的正确判断:p30
File I/O 的 read(...)函数用法:
有问题的代码,只判断返回值为-1的情况。
unsigned long word;
ssize_t nr;
/* read a couple bytes into 'word' from 'fd' */
nr = read (fd, &word, sizeof (unsigned long));
if (nr == -1)
/* error */
Indeed, a call to read( ) ca ......
服务器:
#include <stdio.h>
#include <sys/socket.h>
#include <unistd.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <stdlib.h>
#include <time.h>
#define SERVER_PORT 20000 // define the defualt connect port id
#define LENGTH_OF_LISTEN_QU ......
转载自: http://soft.chinabyte.com/129/11092629.shtml
文件目录类
1.建立目录:mkdir 目录名
2.删除空目录:rmdir 目录名
3.无条件删除子目录: rm -rf 目录名
4.改变当前目录:cd 目录名 (进入用户home目录:cd ~;进入上一级目录:cd -)
5.查看自己所在目录:pwd
6.查看当前目录大小:d ......