一个嵌入式硬件驱动模块通常应包括如下函数:

(1)中断服务程序 ISR

(2)硬件初始化
A.修改寄存器,设置硬件参数(如 UART 应设置其波特率,AD/DA 设备应设置其采样速率等);
B.将中断服务程序入口地址写入中断向量表:

/* 设置中断向量表 */
m_myPtr = make_far_pointer(0l); /* 返回 void far 型指针 void far * */
m_myPtr += ITYPE_UART; /* ITYPE_UART: uart 中断服务程序 */
/* 相对于中断向量表首地址的偏移 */
*m_myPtr = &UART _Isr; /* UART _Isr:UART 的中断服务程序 */

(3)设置 CPU 针对该硬件的控制线
a.如果控制线可作 PIO(可编程 I/O)和控制信号用,则设置 CPU 内部对应寄存器使其作为控制信号;

b.设置 CPU 内部的针对该设备的中断屏蔽位,设置中断方式(电平触发还是边缘触发)。

(4)提供一系列针对该设备的操作接口函数。例如,对于 LCD,其驱动模块应提供绘制像素、画线、绘制矩阵、显示字符点阵等函数;而对于实时钟,其驱动模块则需提供获取
时间、设置时间等函数。

一个嵌入式硬件驱动模块通常应包括哪些函数?相关推荐

  1. 一个c语言源程序至少包括哪些内容,一个c源程序中至少应包括一个什么函数_后端开发...

    PHP如何将PNG转换成JPG?_后端开发 PHP将PNG转换成JPG的方法:首先获取要转为JPG的PNG图片路径:然后通过"imagecreatefrompng()"函数,并根据 ...

  2. 计算机硬件工程师需要学哪些,嵌入式硬件工程师要求是什么?需要掌握哪些内容...

    随着硬件的不断发展和产业的升级,针对嵌入式硬件工程师的工作要求已经从传统的硬件工程师要求拓展转变了不少,下边我们来看看一个嵌入式硬件工程师应该掌握哪些技能. 嵌入式硬件工程师主要职责是为产品设计硬件电 ...

  3. 嵌入式硬件工程师应具备哪些基本技能?

    设计是产品制作的第一关,那些硬件工程师既是产品设计者,又是质量把关者,对产品的质量与性能起着决定作用.那么,嵌入式硬件工程师应具备哪些基本技能? 一.硬件工程师应具备的基本技能 1.有需求分析.总体方 ...

  4. 2 一个完整的计算机系统包括,一个完整的计算机系统应包括.doc

    文档介绍: 0一个完整的计算机系统应包括()radio2计算机及外部设备|主机箱.键盘.显示器和打印机|硬件系统和软件系统|系统软件和系统硬件C0admin230计算机的5大基本构件包括:运算器.存储 ...

  5. 针对第2章习题6的SPJ数据库,为项目名称为“一汽”的工程项目建立一个供应情况的视图V_SPJ,视图中应包括供应商代码SNO,零件代码PNO,供应数量QTY,并针对该视图完成下列查询 (1)找出一汽

    针对第2章习题6的SPJ数据库,为项目名称为"一汽"的工程项目建立一个供应情况的视图V_SPJ,视图中应包括供应商代码SNO,零件代码PNO,供应数量QTY,并针对该视图完成下列查 ...

  6. 设计一个分数类java_设计一个学生类,学生类中应包括学号,姓名,语文成绩,数学成绩,英语成绩,同时还要提供两个方法,一个方...

    设计一个学生类,学生类中应包括学号,姓名,语文成绩,数学成绩,英语成绩,同时还要提供两个方法,一个方 2016-08-22 0 0 0 5.0 分 其他 1 积分下载 如何获取积分? 设计一个学生类, ...

  7. 【电子基础】总结·嵌入式硬件基础

    嵌入式系统硬件基础 By 成鹏致远 第一章 常用硬件 -->嵌入式系统常用的硬件器件,主要包括分立器件.光电半导体.逻辑IC.模拟IC以及存储器共五大类 -->分立器件主要有:二极管.三极 ...

  8. 嵌入式硬件基础知识汇总<附带与硬件密切相关的软件介绍>

    嵌入式硬件基础 1,存储器 1.1 概念 1.2,存储器结构模型 1.3,存储器性能指标 1.4,嵌入式存储器类型 1.4.1,只读存储器 1.4.2,随机存储器 1.4.3,双端口RAM 1.4.4 ...

  9. 慕课嵌入式开发及应用(第二章.嵌入式硬件构件与底层驱动构件基本规范)

    慕课苏州大学.嵌入式开发及应用.第二章.入门与软件框架.嵌入式硬件构件与底层驱动构件基本规范 0 目录 2 入门与软件框架 2.1 嵌入式硬件构件与底层驱动构件基本规范 2.1.1 课堂重点 2.1. ...

最新文章

  1. SQL语句中不同的连接JOIN
  2. python面试总结
  3. 为何去银行存款的人越来越少,但是银行的存款却在增加?
  4. Java面试题之有没有有顺序的Map实现类,如果有,他们是怎么实现有序的?
  5. 外包公司到底值不值去?
  6. 修改kubelet启动参数
  7. Cas单点登录配置数据查询用户
  8. 前端大屏幕项目的一点思考
  9. 计算机控制技术结束语,电子商务在线 - 计算机控制技术教学改革探索与实践
  10. 企业级业务架构如何设计?
  11. oracle 进程占cpu使用率,ORACLE进程占用CPU情况分析
  12. android 覆盖虚拟按键,解决Android 虚拟按键遮住了页面内容的问题
  13. 图片怎么添加滤镜?给图片调色这样做
  14. 江苏省高校,中专校职称计算机信息技术应用能力考核,江苏省高校中专校专业技术人员职称信息技术应用能力考核资料.doc...
  15. 逻辑回归基本流程及鸢尾花项目实战
  16. Altium阴阳拼板教程
  17. CSS-Sprite(雪碧图)
  18. 如何在电脑上进行PDF压缩?
  19. php 域名纠错,关闭网通域名纠错系统的解决方法(非常管用)
  20. linux自动断网,adsl自动断网的解决

热门文章

  1. PHP手机号中间四位用星号*代替显示
  2. Ansible基础入门
  3. UVA1386 【Cellular Automaton】题解
  4. Perl中的字符串操作函数
  5. DEDE利用Ajax实现调用当前登录会员的信息简要说明
  6. 轻量级前端MVVM框架avalon - 模型转换
  7. 【哈利波特】Sherbert Lemon对HP的解读之六
  8. D2Admin 7月份更新内容:cli3以及更方便的全局控制等
  9. 大战设计模式【16】—— 桥接模式
  10. 阅读鸟哥的风雪之隅PHP博客的笔记(1)