CH376S打印機枚舉類型已成功,發(fā)送數(shù)據(jù)無法完成打印

CH376S打印機枚舉類型已成功,通過BUS Hound捕獲到打印數(shù)據(jù),通過例程發(fā)送數(shù)據(jù),打印機一點反應(yīng)沒有,哪位大蝦知道可能是什么原因嗎?


另外對例程的發(fā)送數(shù)據(jù)語句的理解有點迷糊,求解答:

unsigned char xdata data_to_send[200]; ?/* 緩沖區(qū) */

unsigned char str_to_print[]={捕獲到的數(shù)據(jù)};


send_data( strlen(str_to_print), str_to_print );?/* 輸出數(shù)據(jù)給打印機,與通過并口方式輸出一樣 */

send_data( sizeof(data_to_send), data_to_send ); ?/* 輸出的數(shù)據(jù)必須按照打印機的格式要求或者遵循打印描述語言 */

/* 可以再次繼續(xù)發(fā)送數(shù)據(jù)或者接收數(shù)據(jù) */


以下是部分捕獲數(shù)據(jù):

blob.png

希望有做過CH376控制打印機的朋友可以一起交流,我QQ:1187987705


bushound捕捉到的數(shù)據(jù)保存為txt,和代碼一起發(fā)到 gj@wch.cn?,我看下。


昨天晚上剛發(fā)現(xiàn)可以打印,現(xiàn)在存在的問題是打印數(shù)據(jù)亂碼,還有就是打印部分程序必須多次循環(huán)執(zhí)行才能實現(xiàn)打印


while ( 1 ){

s = get_port_status( );

if ( s!=0xFF ) {

/*if ( s&0x20 ) printf("No paper!\n");

if ( (s&0x08) == 0 ) printf("Print ERROR!\n");*/

}

send_data( strlen(str_to_print), str_to_print ); ?/* 輸出數(shù)據(jù)給打印機,與通過并口方式輸出一樣 */

send_data( sizeof(data_to_send), data_to_send ); ?/* 輸出的數(shù)據(jù)必須按照打印機的格式要求或者遵循打印描述語言 */

/* 可以再次繼續(xù)發(fā)送數(shù)據(jù)或者接收數(shù)據(jù) */

}


能解釋一下參考例程中的兩個send_data的作用分別是什么嗎?是分別用來發(fā)送字符串命令和數(shù)據(jù)的嗎?還有為何打印段程序必須在while(1)里面循環(huán)執(zhí)行,只執(zhí)行一次確不能完成打印呢?


已經(jīng)解決了,能夠打印。之前是因為bus hound設(shè)置的顯示位數(shù)過小,導致數(shù)據(jù)沒有全部顯示,所以才出現(xiàn)了打印異常的問題。


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

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