WinCE串口设置

 

因为要用多串口扩展卡,需要更改注册表的设置,我目前的设置如下:

; @CESYSGEN IF CE_MODULES_SERIAL

IF BSP_NOSERIAL !

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial1]

 

   "SysIntr"=dword:13   10H+3

  "IoBase"=dword:320   ;串口空间首地址

 

   "IoLen"=dword:8    

   "DeviceArrayIndex"=dword:0  ;串口索引

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

; Turn on follows for Installable ISR (isr16550 supporting SOFTWARE FIFO

;   "Irq"=dword:3

;   "IsrDll"="isr16550.dll"

;   "IsrHandler"="ISRHandler"

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial1/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"=LOC_FRIENDLYNAME_SERIAL

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

ENDIF BSP_NOSERIAL !

 

IF BSP_SERIAL2

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial2]

   "SysIntr"=dword:14  

   "IoBase"=dword:330

 

   "IoLen"=dword:8

   "DeviceArrayIndex"=dword:1

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial2/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"=LOC_FRIENDLYNAME_SERIAL2

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

ENDIF BSP_SERIAL2

 

IF BSP_SERIAL3

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial3]

   "SysIntr"=dword:15

    "IoBase"=dword:340

 

   "IoLen"=dword:8

   "DeviceArrayIndex"=dword:2

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

 

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial3/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"=LOC_FRIENDLYNAME_SERIAL3

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

ENDIF BSP_SERIAL3

 

IF BSP_SERIAL4

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial4]

   "SysIntr"=dword:16

    "IoBase"=dword:280

 

   "IoLen"=dword:8

   "DeviceArrayIndex"=dword:3

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial4/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"="Serial Cable on COM4:"

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

ENDIF BSP_SERIAL4

 

IF BSP_SERIAL5

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial5]

   "SysIntr"=dword:17

    "IoBase"=dword:290

 

   "IoLen"=dword:8

   "DeviceArrayIndex"=dword:4

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

 

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial5/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"="Serial Cable on COM5:"

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

ENDIF BSP_SERIAL5

 

IF BSP_SERIAL6

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial6]

   "SysIntr"=dword:19

    "IoBase"=dword: 2A 0

 

   "IoLen"=dword:8

   "DeviceArrayIndex"=dword:5

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial6/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"="Serial Cable on COM6:"

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

ENDIF BSP_SERIAL6

 

IF BSP_SERIAL7

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial7]

   "SysIntr"=dword:1b

    "IoBase"=dword:238

 

   "IoLen"=dword:8

   "DeviceArrayIndex"=dword:6

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

 

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial7/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"="Serial Cable on COM7:"

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

ENDIF BSP_SERIAL7

 

IF BSP_SERIAL8

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial8]

   "SysIntr"=dword: 1c

    "IoBase"=dword:230

 

   "IoLen"=dword:8

   "DeviceArrayIndex"=dword:7

   "Prefix"="COM"

   "IClass"="{CC 5195AC -BA49 -48a 0-BE17-DF6D1B0173DD}"

   "Dll"="Com16550.Dll"

   "Order"=dword:0

   "Priority"=dword:0

 

[HKEY_LOCAL_MACHINE/Drivers/BuiltIn/Serial8/Unimodem]

   "Tsp"="Unimodem.dll"

   "DeviceType"=dword:0

   "FriendlyName"="Serial Cable on COM8:"

   "DevConfig"=hex: 10,00, 00,00, 05,00,00,00, 10,01,00,00, 00,4B,00,00, 00,00, 08, 00, 00, 00,00,00,00

 

ENDIF BSP_SERIAL8

 

; @CESYSGEN ENDIF CE_MODULES_SERIAL

 

另外在cepc.bat添加环境变量BSP_SERIAL4BSP_SERIAL5BSP_SERIAL6BSP_SERIAL7BSP_SERIAL8,前三个串口在catalog已经添加了。

目前存在的问题是上面的设置只有5个能用,其中用到5611这三个中断号的串口都不能收数据,想了几天也没有结果。还有一个问题就是我用中断号10的时候系统启动后发现注册表BuiltIn/active下跟中断10对应的串口没有加载,直接对应到下一个串口了,这个也一直没想明白,不知这个中断号是不是被其他设备占用了。希望哪位知道可以告诉我,谢谢!
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值