请问WinCe下如何设置串口的IoBase地址?

lssbw   2008-11-28 10:23 楼主
在winCe的注册表中添加了一个串口。但IoBase的值应该设置为多少呢?这个值是如何确定的呢?

回复评论 (7)

就是虚拟内存映射表中的 串口对应的虚拟地址。
点赞  2008-11-28 10:44
楼上的富农,在哪里可以看到虚拟内存映射表呀?
点赞  2008-11-28 11:19
;------------------------------------------------------------------------------
;
;  File:  memory_cfg.inc
;
;  This file is used to define g_oalAddressTable. This table is passed to
;  KernelStart to estabilish physical to virtual memory mapping. This table
;  is used also in IOMEM OAL module to map between physical and virtual
;  memory addresses via OALPAtoVA/OALVAtoPA functions.
;
;------------------------------------------------------------------------------

; Export Definition

        EXPORT  g_oalAddressTable[DATA]

;------------------------------------------------------------------------------
;
; TABLE FORMAT
;       cached address, physical address, size
;------------------------------------------------------------------------------

g_oalAddressTable

        DCD     0x80000000, 0x32000000, 32      ; 32 MB DRAM BANK 6
        DCD     0x82000000, 0x08000000, 32      ; 32 MB SROM(SRAM/ROM) BANK 1
        DCD     0x84000000, 0x10000000, 32      ; nGCS2: PCMCIA/PCCARD
        DCD     0x86000000, 0x18000000, 32      ; 32 MB SROM(SRAM/ROM) BANK 3
        DCD     0x88000000, 0x20000000, 32      ; 32 MB SROM(SRAM/ROM) BANK 4
        DCD     0x8A000000, 0x28000000, 32      ; 32 MB SROM(SRAM/ROM) BANK 5
        DCD     0x8C000000, 0x30000000, 32      ; 32 MB DRAM BANK 6
        DCD     0x90800000, 0x48000000,  1      ; Memory control register
        DCD     0x90900000, 0x49000000,  1      ; USB Host register
        DCD     0x90A00000, 0x4A000000,  1      ; Interrupt Control register
        DCD     0x90B00000, 0x4B000000,  1      ; DMA control register
        DCD     0x90C00000, 0x4C000000,  1      ; Clock & Power register
        DCD     0x90D00000, 0x4D000000,  1      ; LCD control register
        DCD     0x90E00000, 0x4E000000,  1      ; NAND flash control register
        DCD     0x90F00000, 0x4F000000,  1      ; Camera control register
                DCD     0x91000000, 0x50000000,  1      ; UART control register
        DCD     0x91100000, 0x51000000,  1      ; PWM timer register
        DCD     0x91200000, 0x52000000,  1      ; USB device register
        DCD     0x91300000, 0x53000000,  1      ; Watchdog Timer register
        DCD     0x91400000, 0x54000000,  1      ; IIC control register
        DCD     0x91500000, 0x55000000,  1      ; IIS control register
        DCD     0x91600000, 0x56000000,  1      ; I/O Port register
        DCD     0x91700000, 0x57000000,  1      ; RTC control register
        DCD     0x91800000, 0x58000000,  1      ; A/D convert register
        DCD     0x91900000, 0x59000000,  1      ; SPI register
        DCD     0x91A00000, 0x5A000000,  1      ; SD Interface register
        DCD     0x92000000, 0x00000000, 32      ; 32 MB SROM(SRAM/ROM) BANK 0
        DCD     0x00000000, 0x00000000,  0      ; end of table

;------------------------------------------------------------------------------

        END
\SMDK2440A_CE5\PLATFORM\SMDK2440A\Src\Inc
点赞  2008-11-28 11:23
DCD    0x91000000, 0x50000000,  1      ; UART control register 是串口0吧,如果是串口1就按理递增。

这个要看什么BSP的,有些BSP并不是这么设置,有可能会不同。
点赞  2008-11-28 11:29
富农同学,谢谢你的答复。可是我在wince里找不到这个配置文件呀。只找到了个ceconfig.h. EVC提供的工具也看不到虚拟内存映射表。是不是还要借助其他工具呀?
点赞  2008-11-28 13:41
引用: 引用 5 楼 Tulipme 的回复:
富农同学,谢谢你的答复。可是我在wince里找不到这个配置文件呀。只找到了个ceconfig.h. EVC提供的工具也看不到虚拟内存映射表。是不是还要借助其他工具呀?


EVC?我是在BSP下面的。

看来我们不是一路人啊
我是驱动的。
点赞  2008-11-28 13:45
呵呵,原来是开发驱动的大牛。
点赞  2008-11-28 14:32
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复