求助CH375通信

在程序中這兩句怎么也不能理解. 請各位指教. 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地址 */

是指單片機(jī)與375相連,它的數(shù)據(jù)端口地址和命令端口地址 當(dāng)WR#為高電平并且CS#和RD#及A0 都為低電平時(shí),CH375 中的數(shù)據(jù)通過D7~D0輸出;當(dāng)RD#為 高電平并且CS#和WR#及A0 都為低電平時(shí),D7~D0上的數(shù)據(jù)被寫入CH375 芯片中;當(dāng)RD#為高電平并 且CS#和WR#都為低電平而A0 為高電平時(shí),D7~D0 上的數(shù)據(jù)被作為命令碼寫入CH375 芯片中,所以端口地址與你的硬件連接是相對(duì)應(yīng)的,是通過你的硬件連接計(jì)算得出的。


這個(gè)地址是根據(jù)樓上的說的進(jìn)行定義的 數(shù)據(jù)端口時(shí)A0為0,CS為0,命令端口時(shí)A0為1,CS為0.


我的是單片機(jī)直接和CH375連接。 P0口接數(shù)據(jù)口。 WR接MCU的WR,RD接MCU的RD, A0接P2.0口。 不知道這樣設(shè)計(jì)可行? MCU用的是STC89LE52AD 一直都沒有調(diào)通, 請高手指教這個(gè)端口的IO地址是怎么寫的。


搞了很久了,搞得沒有一點(diǎn)信心了。


可以的,如果P2.0接A0,P2.1接CS#時(shí),數(shù)據(jù)端口地址是BCF0,命令端口地址是BDF1


撥打電話:52638370技術(shù)支持


好好看一下375的資料,上面寫的很詳細(xì),看懂了也就覺得不難 要有信心!


如果總線上沒有其他器件,如RAM,那么這種硬件連接是可以的,此時(shí)CH375的地址有多種組合,數(shù)據(jù)端口地址(BCF0)和命令端口地址(BDF1)是其中之一。否則要考慮總線地址沖突


總線上沒有其他器件。 我的CS是直接接地的。 謝謝大家。


試過了,輸出是F9 但是,寫入命令是正確的,讀數(shù)據(jù)就不正確了。 不管 寫入的是多少,讀出的總是F9.


在讀寫數(shù)據(jù)時(shí),用示波器測量測不出變化的信號(hào)。


 做一下測試命令,可能還是你的硬件有問題,檢查一下有沒有管腳虛焊


拿這小段程序去測試一下你的CH375是否正常工作了: #ifdef TEST_CH375_PORT/* 這一段程序用來測試CH375是否正常工作*/ unsigned char c; CH375_WR_CMD_PORT( CMD_CHECK_EXIST ); /* 測試工作狀態(tài) */ CH375_WR_DAT_PORT( 0x55 ); /* 測試數(shù)據(jù) */ c = CH375_RD_DAT_PORT( ); /* 返回?cái)?shù)據(jù)應(yīng)該是測試數(shù)據(jù)取反 */ if ( c != 0xaa ) { /* CH375出錯(cuò) */ for ( i = 100; i != 0; i -- ) { /* 強(qiáng)制數(shù)據(jù)同步 */ CH375_WR_CMD_PORT( CMD_RESET_ALL ); /* CH375執(zhí)行硬件復(fù)位 */ c = CH375_RD_DAT_PORT( ); } mDelaymS( 50 ); /* 延時(shí)至少30mS */ } #endif


硬件的可能性大些,但是,我檢查了好幾遍了。 因?yàn)槲沂怯靡_引到單片機(jī)上的。 原來做那塊板子設(shè)計(jì)有問題。


早起的鳥有蟲吃 我一直就是用這個(gè)很簡單的小程序測的。 結(jié)果就是這樣。 現(xiàn)在用示波器測量各引腳起碼是跳動(dòng)的了。


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

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