使用U盤讀寫模塊程序的若干問題 匯編版CH375HMP.ASM 1:編譯過不了 它的頭文件是這樣定義的 ;$include (REG51.INC) $include (CH375HM.INC)
這樣聲明說明REG51.INC沒有包含進去,剛好我的電腦里也沒有reg51.inc,不知道從哪能搞到,所以編譯器不認識INT0,只能手動換成 P3^2 CH375HM.INC是包含進去了,可是編譯說重復定義CY,可是在這兩個文件中都找不到CY,不知道為什么,望指教,如果不包含CH375HM.INC,出來一大堆未定義的符號,一個一個按CH375HM.INC中改過來實在是太麻煩了,程序也更難看懂了。
2:文件中有這樣的定義
mCmdParam DATA 20H ;默認情況下該結構將占用64字節(jié)的RAM,可以修改MAX_PATH_LEN常量,當修改為32時,只占用32字節(jié)的RAM,并口最大值62 SECTOR_COUNT DATA 1DH ;文件占用扇區(qū)數 NEW_SIZE_HIGH DATA 1EH ;文件長度的高字節(jié) NEW_SIZE_LOW DATA 1FH ;文件長度的低字節(jié)
mCmdparam 是做什么的啊,看不太懂,希望解釋詳細點
3:有如下定義 CH375HM_INDEX XDATA 0BCF0H ;CH375模塊的索引端口的I/O地址 CH375HM_DATA XDATA 0BDF1H ;CH375模塊的數據端口的I/O地址 可是在后面的ExecCommand程序中卻有多次這樣的注釋
MOV R6,DPH ;對于讀寫文件數據命令,保存外部RAM緩沖區(qū)起始地址 MOV R4,DPL MOV DPTR,#CH375HM_INDEX CLR A MOVX @DPTR,A ;索引地址為0 MOV DPTR,#CH375HM_DATA MOV A,R7 MOVX @DPTR,A ;向索引地址0寫入命令碼 ; MOV DPTR,#CH375HM_DATA MOV A,R5 MOVX @DPTR,A ;向索引地址1寫入后續(xù)參數的長度 JZ ExecCommand_W0 ;沒有參數 MOV R0,#mCmdParam; ;指向輸入參數的起始地址 ; MOV DPTR,#CH375HM_DATA
在執(zhí)行 MOV DPTR,#CH375HM_DATA MOV A,R7 MOVX @DPTR,A ;向索引地址0寫入命令碼 以后,地址應該是數據的I/O了啊,為什么注釋一直是索引地址,還有為什么會連著兩次對數據指針去數據I/O地址?有區(qū)別嗎??
昨天剛拿到U盤讀寫模塊,上面是我剛看了一會程序所遇到的問題,ExecCommand程序太長,倒來倒去看的我頭都大了,所以跑這里來搗亂。因為我是初學者,可能問的問題有點弱智,但真心希望得到大家的幫助。
我只想用U盤讀寫模塊加一個單片機實現往U盤里寫程序的功能,讀都不要,可是示例程序卻過不了,我也還沒到自己寫的程序。如果哪為沁恒的好心大哥大姐在的話,幫忙提供一個。不勝感激,我會繼續(xù)購買你們的產品的。用并口通知,查詢都行,外部單片機已經擴了一個62256,RAM是夠的。
另外,真心希望哪為老鳥可以幫我看看,調試一下程序。就是CH375HMP.ASM,好象有下載,如果沒有我可以傳上來。我像瞎子走夜路,周圍連個可以求教的都沒有,