3265|6

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于串口驱动 [复制链接]

个人理解 微软显示串口驱动的MDD层 自己要实现PDD层
今天在PB5.0下看到这个 D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\SERIAL中有一个SERPDDCM文件夹 看名字好像是串口驱动的PDD 想问下这是个什么东西
如果是PDD 那写串口驱动还需要做些什么?

最新回复

当我们开发自己的驱动时, 可以在PUBLIC\COMMON\OAK下 复制相近的代码到我们自己的BSP下.然后修改平台相关部分的代码. sysIntr是物理中断号,操作系统会把它映射为逻辑中断号.你如果修改了这个值, 可能会与系统其它的中断号起冲突.所以不好用了...... 个人理解是这样.   详情 回复 发表于 2010-3-2 11:05
点赞 关注

回复
举报

1

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\SERIAL中的SERPDDCM文件夹是串口的样例,具体的pdd层驱动需要用户自己在BSP中开发
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
那部分可能是PDD层的一个框架范例吧
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

4
 
我也觉得可能是框架范例
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(中级)

5
 
如果你是用x86的板子,"SysIntr"=dword:14,因为串口1的物理中断号是IRQ4,而逻辑中断是根据物理中断号得到的,IRQ+SYSINTR_FIRMWARE得到的,SYSINTR_FIRMWARE是0x10,所以,SysIntr是0X14,修改为其他值的话,物理中断与系统逻辑中断对应不上了,就不能工作了。SYSINTR_FIRMWARE在PUBLIC\COMMON\OAK\INC\nkintr.h文件中定义的。
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

6
 
那个样例是不是可以直接拿来用呢?
在我的BSP包中 没有串口驱动的代码
可是改一下关于串口的注册表 串口就可以正常工作了
下面是注册表的一部分
IF BSP_SERIAL1
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\Serial1]
   "SysIntr"=dword:14
   "IoBase"=dword:03F8
   "IoLen"=dword:8
   "DeviceArrayIndex"=dword:0
   "Prefix"="COM"
   "IClass"="{CC5195AC-BA49-48a0-BE17-DF6D1B0173DD}"
   "Dll"="Com16550.Dll"
   "Order"=dword:0
   "Priority"=dword:0

不太理解 这个串口驱动到底是哪来的?
还有注册表中的SysIntr应该是逻辑中断吧 这个值是不是系统自动分配的呢?
这里的"SysIntr"=dword:14  改动下让它等于其它值 就不好用了 为什么呢?
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

7
 
当我们开发自己的驱动时, 可以在PUBLIC\COMMON\OAK下
复制相近的代码到我们自己的BSP下.然后修改平台相关部分的代码.

sysIntr是物理中断号,操作系统会把它映射为逻辑中断号.你如果修改了这个值,
可能会与系统其它的中断号起冲突.所以不好用了......

个人理解是这样.
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表