当前位置:首页 -> 物联网学院
>>点击咨询学费与课程相关问题
招生简章
● 课程描述
基于Linux的嵌入式系统目前获得了广泛应用,在嵌入式Linux核心层的开发中,设备驱动的编写占据了大部分的工作量,能编写出真正可用的驱动程序存在着很多技术要点,本课程的开设兼顾初学者和有一定开发经验人员的需要,通过对嵌入式Linux系统理论知识和实际代码分析相结合的方式,了解和学习目前在嵌入式Linux驱动开发中比较重要的几项驱动和其框架结构,如块设备驱动程序框架,LCD Frambuffer,网络设备驱动,USB驱动等。通过大量精心设计的驱动实验,使学员真正掌握嵌入式系统驱动开发的关键技术。
● 质量保证
·所有课程内容均可免费重听,直到学员完全掌握为止。
·凡是汇文学员,在以后工作中遇到课程相关问题,可得到免费技术支持。
·雄厚的师资力量、经典的课程体系、丰富的教学经验确保教学质量。
·成绩优秀的学员可优先推荐到汇文合作单位实习、就业。
● 培养对象
对Linux驱动设计及嵌入式系统开发有一定经验和兴趣的电子、通信、计算机、自动化等相关专业专科生、本科生及研究生,相关专业的技术工程师,开发人员。
● 行业需求
工业控制,军工企事业,电信/网络/通讯,航空航天,汽车电子行业,医疗仪器,仪器仪表与电子。
● 基础要求
基本掌握C语言编程
具备一定的英文技术文档阅读能力
基本的Linux使用和应用程序编写基础
具有数字电路、模拟电路的基础
● 教师简介
浙江大学 徐新民(副教授)
工作研究领域
嵌入式系统的应用,微机测控,智能仪器仪表,集成电路设计方法,FPGA动态重构理论与技术研究
浙江大学 章专(副教授)
工作研究领域
嵌入式系统设计与应用.现代数字集成电路设计理论研究.可编程器件应用
浙江大学 董利达(副教授)
工作研究领域
Petri网理论及其离散事件系统,嵌入式系统设计与应用
浙江大学 金文光(副教授)
工作研究领域
无线通信与嵌入式系统设计
汇文教育 王老师
汇文教育特级讲师,浙大计算机学院资深专家,国际著名嵌入式公司资深技术骨干,曾担任某公司技术总监,擅长硬件设备(子系统)Linux驱动程序开发、硬件子系统相应SDK的研发、嵌入式芯片相关固件的研发等工作,深入理解计算机系统底层结构及各种嵌入式技术:包括以太网,PCI,TCP/IP,USB等,熟悉Linux内核编程及驱动程序开发,多年教学经验。
● 咨询电话
(0571)87952419,请直接拨打此电话咨询。
● 开课情况
开课时间:理论讲述:16学时; 实验操作:16学时
开课地点:浙大玉泉校区
学费:2800元(2-3人团报每人可减免300元,3-6人以上团报每人可减免400元,6-10人团报每人可减免500元,在校学生凭学生证可享受300元优惠,团报可叠加优惠,且杭州市内大学大四学生可用教育培训消费券(500元)抵现金500元,报名时需携带本人身份证复印件2张及本人一寸照片4张 )
讲义,午餐,教材等一律不收取其他费用
课程内容
Linux驱动程序实验班
1. Linux操作系统核心基础
◆ 调度,互斥量和锁等的实现原理
◆ 中断的上下部,定时器,内核线程
◆ 等待队列和工作队列,tasklet等
◆ Linux核心的内存管理(页面分配,slab,kmalloc,DMA内存)
◆ Linux设备管理模型和sysfs文件系统
2. 驱动程序与模块概念
◆ Linux设备驱动的概念
◆ Platform device模型介绍
◆ 模块的概念
◆ 模块的构建、编译和加载
3. 字符设备驱动程序
◆ 字符设备驱动程序概念
◆ 主设备号和次设备号
◆ fs_operation结构分析
◆ 驱动程序调试技术简单介绍
4. Linux块设备驱动程序开发
◆ Linux块设备驱动程序概要
◆ 块设备驱动程序的特点和工作原理
◆ 块设备驱动的设备文件接口概念
◆ 块设备驱动的文件系统接口概念
Linux块设备驱动程序实现要素分析
◆ 块设备驱动的注册接口(register_blkdev等)
◆ 块设备驱动操作接口(open,release,ioctl等)
◆ 块设备驱动的request队列和request操作
块设备代码分析(vdisk.c)
◆ vdisk.c的注册接口
◆ vdisk.c的open,release,ioctl
◆ vdisk.c的request队列和request操作
5. 网络设备驱动程序开发
网卡设备介绍
◆ 常见网卡
◆ 网卡芯片所实现的协议层功能
◆ cs8900网卡芯片手册导读
◆ cs8900网卡硬件电路分析
Linux网络驱动结构
◆ Linux TCPIP网络结构概述
◆ Linux网络设备结构
实验部分
第一部分 驱动基础实验
实验一:模块的构建、编译和装载,hello world模块的实现
实验二:Platform device模型实验
实验三:GPIO按键实验——使用中断机制访问
第二部分 块设备驱动实验
实验一: 修改vdisk.c支持多个设备
实验二: 在实验一基础上为vdisk.c添加字符设备接口实现
(实现open,close,ioctl,read,write,lseek方法)
第三部分 字符设备驱动实验
实验一:ifconfig等命令实验
实验二:字符设备的网卡驱动实现(上)
实验三:字符设备的网卡驱动实现(下)
实验四:驱动的测试程序编写
Linux驱动程序高级研修
1. Linux的input驱动
* 嵌入式系统中的键盘和触摸笔硬件结构原理
* Input子系统介绍
* Input的事件和设备驱动框架结构
* akae2440 button代码分析
* 实验1:编写akae2440下的button驱动
* 实验2:利用akae2440的蜂鸣器实现按键音
2. Linux下的MTD驱动
* Nor和NAND Flash硬件结构
* Linux的MTD子系统
* Yaffs文件系统和MTD子系统的结合
* Nandsim驱动代码分析
* 实验1:配置和调试Nandsim驱动代码
* 实验2:mtdutils工具的学习和使用
* 实验3:Yaffs文件系统的烧写和配置
3. LCD Framebuffer设备驱动程序开发
* Framebuffer驱动程序原理,结构分析、及数据结构
* Framebuffer驱动程序设计
*实验1:LCD Framebuffer——通过mmap操作fb设备
*实验2:LCD Framebufferr——通过mmap显示图片
4. Linux下的USB驱动
* USB工作原理介绍
* Linux的Host端驱动代码结构
* Linux的device端驱动代码结构
* usb 地址端点的使用
* usb 四种传输类型及其作用
* usb 协议实现及其详解
* usb 设备即插即用过程
* 驱动代码分析
* 实验1:学习使用Linux下的usb分析工具
* 实验2:配置和实现Linux的cdc-acm驱动,实现PC和开发板间的USB通信
* 实验3:配置和实现Linux的mass_storage驱动,实现将s3c2440开发板配置为一个U盘











