_acRegWrite(REG_CFG1_RW,0x8f80); //0x8f80
4 CPLD逻辑部分
在该系统中,PCI9052采用的是ISA模式。对于ISA模式,首先必须确保硬件按照Datasheet上所说的进行配置,其次是EPROM内容的编写。EPROM内容最重要的就是LAS0RR、LAS1RR、LAS0BA、LAS1BA、CS0BASE和CS1BASE。它们分别对应于LOCal Configuration Registers偏移值为00h、04h、14h和18h。LAS0RR定义了内存地址空间大小,如0x1fff,那么它的值应为0xFFFE000;LAS1RR定义了IO地址空间大小,如0x3f,那么它的值应为0xFFFFFC1;LAS0BA为内存地址的基地址,也就是访问外部设备用的基地址,如0xD0001,表示外部设备内存基地址为0xD0000;LAS1BA为IO地址的基地址,也就是访问外部设备用的IO基地址,如0x201,表示外部设备内存基地址为0x200。CS0BASE和CS1BASE根据基地址和地址范围来定义。具体请参考PCI9052数据手册。
要访问外部设备(如基地址为0x200),PCI9052与外部设备之间就必须有相应的逻辑控制以使能够访问到外部设备。在PC机端只需要访问PCI配置寄存器读取的局部地址空间0、1即可。因为ISA->PCI之间的转换是PCI9052自动完成的。对于DDC61580,需要控制的信号有:/SELECT、/STRBD、MEM//REG、RD//WR、/MSTCLR、/READY;而对于PCI9052则需要/MEMRD、/MEMWR、/IORD、/IOWR、LRESET、CHRDY以及需要的地址信号,至于所需要的地址信号,我们可以和ISA总线进行地址译码一样。
懂得了上述PCI9052和DDC61580之间的逻辑关系,要表达出来就很容易了。具体的代码在此就不写了。
5 注意
在硬件设计上,必须严格按照DDC61580和PCI9052说明书上进行相关引脚的处理。比如对于DDC61580工作有几种模式,必须正确设置;而PCI9052 EEPROM内容的编写也一定要正确。
本文关键字:嵌入式 嵌入式系统-技术,单片机-工控设备 - 嵌入式系统-技术