《中断与设备驱动》PPT课件.ppt

上传人:sh****n 文档编号:6649043 上传时间:2020-03-01 格式:PPT 页数:18 大小:1.11MB
返回 下载 相关 举报
《中断与设备驱动》PPT课件.ppt_第1页
第1页 / 共18页
《中断与设备驱动》PPT课件.ppt_第2页
第2页 / 共18页
《中断与设备驱动》PPT课件.ppt_第3页
第3页 / 共18页
点击查看更多>>
资源描述
中断与设备驱动 Interrupt Driver 罗海波robhappy 目录 设备驱动简介中断与中断处理函数的可重入问题实例分析 自学 设备驱动 Bootloader与BSP 典型的设备 控制器 驱动器 一般设备驱动的组成 设备的缓冲区管理 P183 图6 5示例UART的FIFO缓冲区P6 6环形缓冲区如何用C代码实现一个环形缓冲区 中断 中断的分类 硬件中断来自外部 针对CPU内核 如串口收到数据 击键等 软件中断通过在程序中执行的中断指令来实现 又称软陷 80X86 int68000 trapARM SWI异常CPU在运行过程中引起的事件 如数据中止 未定义指令等 中断的处理过程 一般由硬件 软件两部分共同完成 调用栈帧和中断栈帧的区别 最后一个参数 入口参数 函数返回地址 局部变量 局部变量 保存的调用函数的寄存器值 中断返回地址 程序状态字 局部变量 保存的中断前所用到的寄存器 调用栈帧结构 中断栈帧结构 Q 如何理解这两个栈帧结构 调用子函数时 子函数内部如何访问局部变量和入口参数 函数调用返回时 SP指针会发生什么 为何中断栈帧没有参数传递 C中的中断处理 C中的中断处理 处理器为何能异步响应中断 中断何时可能会延迟或者丢失 CPU指令周期使然不支持中断嵌套 默认 临界资源访问时 为了保护 关中断 如何加快中断的响应 ISR分上下部分避免调用耗时的函数避免浮点运算避免不必要的函数调用 用C编写中断服务程序应该注意的 不能返回值不能向ISR传递参数ISR应该尽可能的短小精悍printf char ipFormatString 函数会带来重入和性能的问题 不能在ISR中使用 在ARM平台上由于半主机机制 速度会更慢 其他不可能重入的函数不可使用耗时的函数避免调用大量的运算尽量避免 没有OS的中断服务队列 自己编写一个该队列的分配和释放函数 函数的可重入问题 都是 并发访问 惹得祸 函数如何可重入 局部变量的访问在重入时不会引起冲突 全局数据的访问在重入时往往容易引起冲突 临界资源的访问在重入时往往容易引起冲突 不可重入函数的互斥保护 关中断关调度 禁止做任务切换 利用信号量 重入函数的伪问题 有的函数虽然不可重入 但是根本不会重入 故 没必要保护 此函数是一个非递归函数 且 这个函数不会被ISR调用 且 这个函数只会在一个任务中被调用 其他任务不会调用此函数
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!