[求助]命令端口和數(shù)據(jù)端口的I/O地址怎么確定?

請問提供的例子程序中,MCU的這兩句:

unsigned char volatile xdata CH375_CMD_PORT _at_ 0xBDF1; /* CH375命令端口的I/O地址 */ unsigned char volatile xdata CH375_DAT_PORT _at_ 0xBCF0; /* CH375數(shù)據(jù)端口的I/O地址 */

命令端口的I/O地址和數(shù)據(jù)端口的I/O地址 是怎么確定的?因為我不太了解51,用其他MCU的,其他MCU都用例子中的數(shù)值就可以了嗎?另外就是在寫命令和讀寫數(shù)據(jù)的時候,為什么都要將內(nèi)容在上面的兩個地址寫一次,作用是什么?

單片機操作375的時候需要通過這兩個地址來進行。這兩個地址其實決定于CS和A0這兩跟線,也就是在片選線CS為0時選中CH375,在A0=1時,作為操作的命令端口;在A0=0時,作為操作的數(shù)據(jù)端口。 用其他MCU的話,只要CS和A0線的連接正確,用這兩個數(shù)值就可以。當然可以根據(jù)自己的連線來決定新的命令端口的I/O地址和數(shù)據(jù)端口的I/O地址。


引用含笑的回復:

按測試電路的接法,P2.1(A9)接CH372片選引腳,P2.0(A8)接CH375的A0腳,因此: 51地址引腳: A15 A14 A13 A12 A11 A10 A09 A08 A07 A06 A05 A04 A03 A02 A01 A00 命令端口可以是: x x x x x x 0 1 x x x x x x x x (Bin) 數(shù)據(jù)端口: x x x x x x 0 0 x x x x x x x x (Bin) 滿足上述組合的端口地址有N種之多,但是命令端口只能是 X1XX,X5XX,X9XX,XDXX (Hex) 數(shù)據(jù)端口只能是:X0XX,X4XX,X8XX,XCXX (Hex)。

片選決定地址!

你其它地方要使用A00(?)—DFFF地址空間,則應想法使CH375的端口地址處于這些地址之外,例如可以使用譯碼芯片138,A、B、C、E3分別接51的P2.7、P2.6、P2.5、P2.4,138的Y7接CH375的CS腳;51的P2.3接CH375的A0腳。這樣,CH375的命令口地址就是:1111 1xxx xxxx xxxx (Bin),數(shù)據(jù)口地址就是:1111 0xxx xxxx xxxx (Bin),F(xiàn)800(命令)、F700(數(shù)據(jù))就滿足 ↓簡單引用


o ~!講得非常的清楚啊~知道了!謝謝兩位~共同進步啊


只有登錄才能回復,可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频