串口驱动程序设计
2015-08-30 15:32
190 查看
串口驱动位于tty子系统。对于用户来说,访问串口与访问其它字符设备的方法一样,都是通过系统调用访问设备文件从而访问设备。对于串口来说,主要是open,read,write这三个函数。因此驱动程序中也要实现这三个实现函数,而在此之前还需要对串口进行初始化以及串口驱动程序的注册。
串口驱动中使用到的重要数据结构:
UART驱动程序结构:struct uart_driver
UART端口结构: struct uart_port
UART相关操作函数结构:struct uart_ops
UART状态结构: struct uart_state
UART信息结构:struct uart_info
其中struct uart_driver包含有struct uart_state,struct uart_state包含有struct uart_info和struct uart_port,struct uart_port包含有struct uart_ops。
一个struct uart_driver对应一个串口驱动程序,可以对应多个串口设备;
一个struct uart_port对应一个串口设备;
一个struct uart_ops包含有多个函数指针,指明了该串口可以实现的操作。
串口驱动共包含有五部分:
①驱动程序的注册
使用函数:uart_register_driver()
②初始化
③打开设备-open
④发送数据-write
⑤接收数据-read
串口驱动中使用到的重要数据结构:
UART驱动程序结构:struct uart_driver
UART端口结构: struct uart_port
UART相关操作函数结构:struct uart_ops
UART状态结构: struct uart_state
UART信息结构:struct uart_info
其中struct uart_driver包含有struct uart_state,struct uart_state包含有struct uart_info和struct uart_port,struct uart_port包含有struct uart_ops。
一个struct uart_driver对应一个串口驱动程序,可以对应多个串口设备;
一个struct uart_port对应一个串口设备;
一个struct uart_ops包含有多个函数指针,指明了该串口可以实现的操作。
串口驱动共包含有五部分:
①驱动程序的注册
使用函数:uart_register_driver()
②初始化
③打开设备-open
④发送数据-write
⑤接收数据-read
相关文章推荐
- UI设计-不简单?简单(3)
- Go异常处理
- mysql 触发器
- 初步12-玩数字
- MyBatis之传入参数
- STL源码剖析 [容器](九)[stl_slist.h ]
- java中throws和throw的区别和用法
- btrfs文件系统初识及应用
- Solr部署详解
- Quartz动态改变任务时间
- Go内建函数copy
- 解决dreamweaver CS6已停止工作
- Java 编程
- java 时间计算
- apache kafka系列之在zookeeper中存储结构
- OSPF的NSSA区域
- 整型转字符串
- <Java笔试面试题>final,finally,finalize()区别
- 分布式消息中间件 MetaQ 作者庄晓丹专访
- 设计模式:单例