本文详细介绍了Linux平台下内核空间设备驱动程序的开发。在比较proc和dev两种文件系统的基础上,分别以PCI设备和USB设备的驱动程序开发为实例来介绍利用两种文件系统开发字符设备驱动程序的方法。
上传时间: 2013-04-24
上传用户:1583060504
该文进行的设计作为数控系统大课题中的一个子课题,主要研究利用PCI总线来实现对外围IO的操作,硬件上包括设计一块PCI接口卡并测试通过,软件上实现了PCI接口卡在Linux下的驱动和用软PLC来实现对外围IO的操作.该文在比较几种微机总线的基础上,为了实现数控系统高速、高精度、低功耗的要求,采用PCI总线进行设计.随着可编程逻辑器件的发展,为在一片PLD芯片内实现复杂的逻辑控制提供了条件.该文在综合比较开发PCI卡的几种方法的基础上,选择了使用FPGA来实现PCI接口卡设计.用VHDL语言对FPGA编程,采用模块化的设计方法进行设计,用状态机来控制PCI逻辑的时序.设计首先在EDA软件上仿真通过后,制作成PCI板卡并在现场调试通过.为方便所设计的PCI卡在数控系统及其它系统中应用,该文设计了PCI卡在Linux下的设备驱动程序,主要包括设备的注册与注销、与Linux内核的接口、相关的入口函数、驱动程序的编码、编译、加载与卸载等,并编写了相应的测试代码,在Linux环境下调试通过.为了解决数控系统中PLC的应用问题,该文还设计了PCI卡在软PLC中的应用.采用的软PLC软件是Linux下的MatPLC软件.在详细讨论MatPLC工作原理的基础上,设计了一个输入模块、一个输出模块和一个MatPLC配置文件.输入模块通过驱动程序从PCI卡中读取数据,传送到MatPLC内核的全局变量中,输出模块从内核全局变量读取数据并进行逻辑运算,再输出到PCI卡.将他们编译通过,并进行测试,最终实现软PLC对外围IO端口的读写.该论文受到广东省科技攻关项目[2002A1040402]、广东省科技攻关项目[2003C101002]、广州市重大科技攻关计划[2002Z1-D0051]的资助.
上传时间: 2013-07-18
上传用户:szchen2006
C/C++程序设计教程.zipC/C++程序设计教程.zip-C/C++ Programming Guide. ZipC/C++ Programming Guide. Zip
上传时间: 2013-08-02
上传用户:sssl
51单片机程序设计与实验,51单片机程序设计与实验
上传时间: 2013-04-24
上传用户:dave520l
TMS320F2808的一些学习程序,供初学者学习用.会非常实用的
上传时间: 2013-07-03
上传用户:zhaiyanzhong
《单片机高级语言c51应用程序设计》书450页,徐爱钧,彭秀华等编著
上传时间: 2013-06-27
上传用户:111111112
目录 第1章 概述 1.1 采用C语言提高编制单片机应用程序的效率 1.2 C语言具有突出的优点 1.3 AvR单片机简介 1.4 AvR单片机的C编译器简介 第2章 学习AVR单片机C程序设计所用的软件及实验器材介绍 2.1 IAR Enlbedded Workbench IDE C语言编译器 2.2 AVR Studio集成开发环境 2.3 PonyProg2000下载软件及SL—ISP下载软件 2.4 AVR DEM0单片机综合实验板 2.5 AvR单片机JTAG仿真器 2.6 并口下载器 2.7 通用型多功能USB编程器 第3章 AvR单片机开发软件的安装及第一个入门程序 3.1 安装IAR for AVR 4.30集成开发环境 3.2 安装AVR Studio集成开发环境 3.3 安装PonyProg2000下载软件 3.4 安装SLISP下载软件 3.5 AvR单片机开发过程 3.6 第一个AVR入门程序 第4章 AVR单片机的主要特性及基本结构 4.1 ATMEGA16(L)单片机的产品特性 4.2 ATMEGA16(L)单片机的基本组成及引脚配置 4.3 AvR单片机的CPU内核 4.4 AvR的存储器 4.5 系统时钟及时钟选项 4.6 电源管理及睡眠模式 4.7 系统控制和复位 4.8 中断 第5章 C语言基础知识 5.1 C语言的标识符与关键字 5.2 数据类型 5.3 AVR单片机的数据存储空间 5.4 常量、变量及存储方式 5.5 数组 5.6 C语言的运算 5.7 流程控制 5.8 函数 5.9 指针 5.10 结构体 5.11 共用体 5.12 中断函数 第6章 ATMEGA16(L)的I/O端口使用 6.1 ATMEGAl6(L)的I/O端口 6.2 ATMEGAl6(L)中4组通用数字I/O端口的应用设置 6.3 ATMEGA16(L)的I/O端口使用注意事项 6.4 ATMEGAl6(L)PB口输出实验 6.5 8位数码管测试 6.6 独立式按键开关的使用 6.7 发光二极管的移动控制(跑马灯实验) 6.8 0~99数字的加减控制 6.9 4×4行列式按键开关的使用 第7章 ATMEGAl6(L)的中断系统使用 7.1 ATMEGA16(L)的中断系统 7.2 相关的中断控制寄存器 7.3 INT1外部中断实验 7.4 INTO/INTl中断计数实验 7.5 INTO/INTl中断嵌套实验 7.6 2路防盗报警器实验 7.7 低功耗睡眠模式下的按键中断 7.8 4×4行列式按键的睡眠模式中断唤醒设计 第8章 ATMEGAl6(L)驱动16×2点阵字符液晶模块 8.1 16×2点阵字符液晶显示器概述 8.2 液晶显示器的突出优点 8.3 16×2字符型液晶显示模块(LCM)特性 8.4 16×2字符型液晶显示模块(LCM)引脚及功能 8.5 16×2字符型液晶显示模块(LCM)的内部结构 8.6 液晶显示控制驱动集成电路HD44780特点 8.7 HD44780工作原理 8.8 LCD控制器指令 8.9 LCM工作时序 8.10 8位数据传送的ATMEGAl6(L)驱动16×2点阵字符液晶模块的子函数 8.11 8位数据传送的16×2 LCM演示程序1 8.12 8位数据传送的16×2 LCM演示程序2 8.13 4位数据传送的ATMEGA16(L)驱动16×2点阵字符液晶模块的子函数 8.14 4位数据传送的16×2 LCM演示程序 第9章 ATMEGA16(L)的定时/计数器 9.1 预分频器和多路选择器 9.2 8位定时/计时器T/C0 9.3 8位定时/计数器0的寄存器 9.4 16位定时/计数器T/C1 9.5 16位定时/计数器1的寄存器 9.6 8位定时/计数器T/C2 9.7 8位T/C2的寄存器 9.8 ICC6.31A C语言编译器安装 9.9 定时/计数器1的计时实验 9.10 定时/计数器0的中断实验 9.11 4位显示秒表实验 9.12 比较匹配中断及定时溢出中断的测试实验 9.13 PWM测试实验 9.14 0~5 V数字电压调整器 9.15 定时器(计数器)0的计数实验 9.16 定时/计数器1的输入捕获实验 ......
上传时间: 2013-07-30
上传用户:yepeng139
基于西门子PLC设计的自动售货机系统.doc
上传时间: 2013-04-24
上传用户:270189020
周立功μCOS-II程序设计基础,值得新手学习。
上传时间: 2013-04-24
上传用户:trepb001
介绍了三菱FX2N 系列PLC 在串行通讯技术中使用无协议数据传输的指令格式,以及单片机与其通讯的软硬件实现方法。关键词:PLC RS485 接口 无协议数据传输 打码机控制器
上传时间: 2013-05-20
上传用户:浮尘6666