我是用匯編語言寫的,一直重復(fù)以下3條命令: 57H ABH 3CH XX XX(告訴寫的個(gè)數(shù))? ? ? 57H ABH 2DH 3x??3x?3x?3x.....(發(fā)送要寫的數(shù)據(jù))? ? ? ? ?57H ABH 3DH? ? ? ? ?然后再重復(fù)第一條,寫一定數(shù)量后就出現(xiàn)亂碼了。
有人能回答嗎?
操作過程中,中斷狀態(tài)返回值是否都正常;檢查下控制器緩沖區(qū)數(shù)據(jù)的數(shù)據(jù),有可能傳給 CH37x 芯片的數(shù)據(jù)就是錯(cuò)誤的,例如緩沖區(qū)對(duì)齊問題,多個(gè)地方寫入修改;
中斷返回值正常。送每條記錄的程序都是一樣的,而且送的數(shù)也是對(duì)的,但它總是在固定的位置出現(xiàn)亂碼。
怎么檢查控制器緩沖區(qū)數(shù)據(jù)的數(shù)據(jù)?
緩沖區(qū)的數(shù)據(jù)就是你單片機(jī)需要寫入U(xiǎn)盤的數(shù)據(jù),固定位置出亂碼,是寫入多少字節(jié)出現(xiàn)的,建議可以嘗試在寫入一定長(zhǎng)度數(shù)據(jù)后,關(guān)閉文件再打開移動(dòng)指針再繼續(xù)寫,看是否還有問題
打開移動(dòng)指針是用哪個(gè)代碼?39H?
重新打開文件,指針會(huì)回到文件頭部,CMD4H_BYTE_LOCATE? ? 39H
我要在原來文件末尾繼續(xù)寫該怎么辦?39H 是指定移多少個(gè)指針位置,太我不知道以前寫到哪里了,從文件末添加用哪個(gè)命令呢?
在關(guān)閉文件前,寫了多少字節(jié)您自己應(yīng)該清楚,移動(dòng)多少指針取決于您已寫入的數(shù)據(jù),或者直接移動(dòng)最大指針到文件末尾繼續(xù)寫