如上图所示,计算出来的8253A(上片那片芯片)个端口地址为:0x7FFFC-0x7FFF,请问下面这样给它写控制字和初值,以及最后读取计数器的数据对吗?
XBYTE[0x7FFF]=0x32; //对计数器1写入控制字并赋初值
XBYTE[0x7FFC]=65535;
XBYTE[0x7FFF]=0x72; //对计数器2写入控制字并赋初值
XBYTE[0x7FFD]=65535;
假设计数一段时间后要读取计数器里面的数据并运算,下面的操作对不对?
data1=65535-XBYTE[0x7FFC];
data2=65535-XBYTE[0x7FFD];
0x7FFC //对应计数器1
0x7FFD //对应计数器2
0x7FFE //对应计数器3
0x7FFF //对应控制字
比如要向计数器1里写初值65535
XBYTE[0x7FFF]=0xxx;//写控制字选择低8位
XBYTE[0x7FFC]=0xFF;//写低8位数据
XBYTE[0x7FFF]=0xxx;//写控制字选择高8位
XBYTE[0x7FFC]=0xFF;//写高8位数据
你自己看看8253A的数据手册就明白了