跪求幫助!ch375測(cè)試程序,那為大哥幫我看一下,不勝感激!

電路土如下

未命名.bmp 這是我的測(cè)試程序,請(qǐng)幫忙看一下, 我測(cè)試過(guò)好象不是以反碼輸回來(lái)的,好想都上一0xFF返回來(lái)的! LJMP MAIN ORG 0200H MAIN: MOV DPTR , #0001H //命令輸入的端口 MOV A , #05H // 復(fù)位 MOVX @DPTR, A

LCALL DELAY MOV DPTR,#0001H CLR A MOV A , #06H //測(cè)試命令輸入 MOVX @DPTR ,A NOP CLR A MOV A , #055H MOV DPTR,#0000H //數(shù)據(jù)輸出端口 MOVX @DPTR ,A NOP NOP CLR A LOOP:MOV A ,P0 //請(qǐng)幫我看一下上面的匯編有錯(cuò)誤嗎?下面的顯示就不用了

MOV P1 ,A //我的P1是接七段數(shù)碼管的,顯示返回來(lái)的值,好象顯示全部是1 。 MOV P3 ,#0 //我的P3是接七段數(shù)碼管的位碼的 NOP MOV P3 , #1 NOP MOV P3 , #2 NOP LJMP LOOP

DELAY: MOV R5,#255 D1: MOV R6,#255 DJNZ R6,$ DJNZ R5,D1 RET

END

首先,對(duì)你的命令和數(shù)據(jù)端口很是懷疑,0001H和0000H這樣的端口你在硬件上是怎么實(shí)現(xiàn)的(請(qǐng)教)? 另外,對(duì)于“MOV A , #055H”命令中,55H前面有必要加個(gè)0么??? 最后說(shuō)一下主題,前半部分沒(méi)看出其他問(wèn)題來(lái),但是在后面讀數(shù)據(jù)的時(shí)候,不是像你用“MOV A ,P0 ”這么簡(jiǎn)單的一條指令就可以讀出來(lái)的,你要先輸入讀命令,然后才可以讀數(shù)據(jù)端口的數(shù)據(jù),這樣才是它返回的數(shù)據(jù)。


謝謝回答!我的0001H命令端口和0000H數(shù)據(jù)端口是通過(guò)74ls373數(shù)據(jù)鎖存器把A0分別置1和置0,CS就直接置0來(lái)實(shí)現(xiàn)的,不知道這樣對(duì)嗎?您能跟我寫(xiě)一個(gè)測(cè)試程序嗎?謝謝


我把MOV A , P0 改為MOV A, @DPTR,但是輸入的數(shù)據(jù)和輸出的是一樣的!不知道為什么? 能解釋一下嗎?謝謝


ch375上電之后要先延時(shí)50ms,測(cè)試一下25,26腳電平,正常的話25腳為低,26腳為高


我的25腳是低啊,26腳是高啊!但是返回值沒(méi)有反向?。「斎霐?shù)據(jù)是一樣的!不知道為什么?那位大哥能幫忙一下呢?


CH375_CMD_PORT EQU 0001H ;CH375命令口的地址,地址譯碼后自動(dòng)片選 CH375_DAT_PORT EQU 0000H ;CH375命令口的地址,地址譯碼后自動(dòng)片選

ORG 0000H ;復(fù)位后單片機(jī)入口 LJMP START

START: LCALL DELAY MOV DPTR,#CH375_CMD_PORT //寫(xiě)測(cè)試命令 MOV A,#06H MOVX @DPTR,A NOP NOP MOV DPTR,#CH375_DAT_PORT //寫(xiě)55數(shù)據(jù) MOV A,#55H MOVX @DPTR,A NOP NOP

MOVX A,@DPTR //讀取返回?cái)?shù)據(jù) SJMP $

DELAY: MOV R5,#255 D1: MOV R6,#255 DJNZ R6,$ DJNZ R5,D1 RET

END

如果還不通過(guò),檢查你的硬件


謝謝你們的回答! 弄了很久!測(cè)試成功了!原來(lái)是我用的52單片機(jī)MOVX 命令訪問(wèn)的地址要在某一個(gè)地址以上才行,我把地址改為0FFF1和0FFF0就行了!


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

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