1.問題:RD-EH32-SN發(fā)送字符到打印機時,一次可以連續(xù)發(fā)送多少個字符?這些字符包括命令嗎?
回答:打印機的緩沖區(qū)很大可以一次接受24K的數(shù)據(jù),包含命令和字符。
2.問題:微打內存為32K,少量數(shù)據(jù)是不是不判忙,可直接送數(shù)就可以?
回答:可以,當一次發(fā)送的數(shù)據(jù)少于緩沖區(qū)時,可以不判忙。
3.問題:RD-EH32-V2緩存不大,如何解決?
回答:除非大量連續(xù)的打印幾十k上百k的圖形,緩存大有優(yōu)勢,在不極其特殊的情況下緩存都是夠用的
跟緩存的大小沒有關系,和處理器對命令的處理能力有關系,處理器的速度快,打印完一行的時間小于接受打印數(shù)據(jù)一行的時間,所以占用的緩沖區(qū)比較小。
51處理數(shù)據(jù)的速度很慢,打印的速度小于命令傳送的速度,這樣,為了不耽誤主機對其他數(shù)據(jù)的處理,基本上都是把緩沖區(qū)做得大一些,這樣,主機發(fā)送完打印數(shù)據(jù)后就可以處理別的任務。
4.問題:256像素*256像素的位圖,大概發(fā)送給打印機的數(shù)據(jù)超過8192個字節(jié)。經(jīng)常出現(xiàn)打印死機?
回答:超出打印機緩沖區(qū)了,需要分段來發(fā)送。
5.問題:我在串口助手上發(fā)1b3800cdf5為什么不打印出王字呢
回答:加0d,沒有打印出來,因為字符沒有滿一行。
6.問題:我從我的大程序上截下關于打印機的程序,單獨運行,打印正常,但一嵌入到整個大程序中,就會打出來亂碼,是何緣故?(大程序中有關打印機的程序我放在程序的起始部分,也就是我把大程序起始部分復制出來形成一個小程序運行,打印正常,但如果運行大程序為何就不正常了 ?
回答:用的C語言吧,軟件模擬一下,看看程序是否在正常執(zhí)行
7.問題:在VB下,我能打印出字符集的20H--80H的字符,從81H開始的字符不能打印出來(空白),請問是何原因?
回答:VB中打印可見字符與不可見字符的方法是不一樣的,打印不可見字符的方法:Dim AA(0) As Byte
AA(0) = 200 pirnt(aa(0))
8.問題:你好,我正在用你公司的的款熱敏微打。RD-E型。連續(xù)打印A~T這20個字母,沒問題。如果換成20個字母A,就打出了20個""。請問是什么原因?
回答:程序上在STB后加長延時,硬件上1。換個好一點的電源.
9.問題2:客戶反應無法打印出數(shù)據(jù)的”數(shù)”字?
回答: 此類故障是由于客戶所使用的編輯器(KELL)的BUG引起的,KELL有個0XFD的BUG,解決方法(1)可以讓客戶下載KEEL的這個補丁來解決(2)可讓客戶直接發(fā)該漢字的內碼。
濟寧客戶問:
10.問題1:E32-SN出現(xiàn)打印亂碼?
回答:經(jīng)測試程序代碼無問題,后經(jīng)了解客戶用的是12M的晶振,讓改為11.0592晶振故障解快,些類故障是由于12M的晶振算出的波特率誤差太大造成的.。
11.問題:我用程序控制你們公司的熱敏打印機打印圖形的時候 有的時候打印過程中 突然sel燈滅了停止了打印然后一閃一閃的,有時不知道什么時候 突然就滅了 然后就不動了這個是怎么回事呢?
回答:打印的過程中出現(xiàn)燈閃的是因為接收數(shù)據(jù)緩沖區(qū)滿了,打印機給出忙信號,并且滅燈,在打印緩沖不滿的時候打印機給出空閑信號燈亮,在這種動態(tài)的情況下,打印機的s
el燈就會出現(xiàn)閃爍。可能的問題:缺紙,沒有判忙。
12.問題:打印機初始化語句有時好用有時不好用
回答:客戶發(fā)來一段程序,如下:經(jīng)分析,該程序是可以正常打印的。分析此問題是有時可以打印有時不可以打印。讓客戶在程序前增加延時,不要上電就打印,給打印機足夠的復位時間。經(jīng)過今天的回訪客戶說已經(jīng)可以打印。
13.問題:榮達微型打印機的條碼號為RDTH32SC-8R-940A478,要打印條碼是不是得升級程序?
回答:首先與開發(fā)部確認TH的打印機可不可以改成條碼打印。得到回復是可以打CODE39及EAN13碼。于是,問客戶打印什么條碼,客戶說打印EAN13與CODE39碼,于是回答客戶可以,具體更換讓客戶與相關商務聯(lián)系。
客戶又要條碼指令格式,將“條碼指令表.pdf”文件發(fā)給客戶
客戶問條碼生成的是唯一的嗎?回答是唯一的,只要發(fā)的數(shù)據(jù)不重復。
14.問題:打印機的命令或數(shù)據(jù)是面向 ASC碼的還是 十六進制 十進制的?
回答:命令用什么方式發(fā)送都行.如要發(fā)送字符數(shù)據(jù)的話,必須按ASCII碼方式發(fā)送,例:如想打印”1”這個字符,不能發(fā)送數(shù)字1給打印機,要發(fā)送”1”的ASCII碼才行,通過查ASCII碼表,可知”1”的ASCII碼為十六進制的31H.所以發(fā)送一個31再發(fā)送一個0D就才可以打印的.
15.問題:你好,這個打印機的控制流程是不是這樣的,比如打印漢字的話,先向打印機發(fā)送命令ESC 8 N然后再發(fā)送打印內容呢??
回答:是的,485是有協(xié)議格式的,幀頭+數(shù)據(jù)包+幀尾。打漢字是先發(fā)送1B 38 00 再發(fā)送漢字的內碼,最后加個0D.客戶問0D起什么作用。例如,打印一行半的內容,如不發(fā)送0D則只會打印出1行內容。另半行不會打出。
16.問題:客戶反映說用串口打印機能打印出字母,打印不出來漢字?
回答:經(jīng)與客戶聊天,客戶用的是C#編程,在C#中用串發(fā)式發(fā)送字母可以打印,漢字打印是亂碼,如下:PRINT_CHS(“中國/n”);不會打印出“中國”兩字,而會打出亂碼。
我懷疑是因為C#的漢字編碼方式是按UNICODE碼編碼的,所以打印不出來,于是讓客戶試以下數(shù)據(jù),PRINT(0X1C);PRINT(0X26);PRINT(0XBA);PRINT(0XBA);PRINT(0X0D);
客戶試了一下數(shù)據(jù),說可以打印出一個“漢”字,說明我們的打印機的漢字庫是好用的,C#的漢字編碼方式不是內碼方式,于是讓客戶查一下C#的相關轉換函數(shù),將字串發(fā)送轉成內碼方式發(fā)送。
17.問題:RD-T16微打能用PC來打印嗎?
回答:可以,經(jīng)與客戶了解,客戶用的是并口打印機,于是,告訴客戶買個并口的延長線就可以用電腦來打印了。軟件上得需做一個打印機驅動軟件。客戶說有說明書上有驅動,我與客戶說驅動不適用于這個打印機,此打印機由于分辨率低,用驅動打印效果很差。客戶問如何打印,由于客戶以前用單片機打印,于是告訴客戶在PC上與在單片機上用法是一樣的,寫程序。
18.問題:串口工具里怎么發(fā)送命令?
回答:連好打印機,將串口助手的參數(shù)設置成與打印機一樣的參數(shù),按照說明書輸入你想測試的指令,選中十六進制,點擊發(fā)送就可以了。
19.問題:EH32-SN的打印機用串口助手發(fā)送還是不打印?
回答:先前已教過客戶串口助手的使用,已排除串口助手不會用的問題,懷疑是缺紙引起不打印,讓客戶看一下打印機的指示燈是否處理長亮狀態(tài),客戶說不是長亮的。于是讓客戶將紙上好,打印正常。
20.問題:客戶問485如何控制打印機?
回答:首先,問客戶用的是否為485接口的打印機,客戶說不是.問他那如何連接的,他說是用485-232轉換器進行連接的,于是告訴客戶,這樣連接的話,與232的方式驅動打印機是一樣的,只是電平為485了.
21.問題:客戶問10進制的數(shù)據(jù)如何發(fā)送給打印機?
回答:首先,發(fā)送的方法為(1)將一個十進制數(shù)據(jù)通用數(shù)學方法(整除,取余)分別取為位數(shù)來,如123,分別取出1,2,3.(2)將取出的位數(shù)分別加上0X30即得到相應的ASCII碼.(3)將加上0X30后的數(shù)據(jù)發(fā)送給打印機.
回答:打印機的緩沖區(qū)很大可以一次接受24K的數(shù)據(jù),包含命令和字符。
2.問題:微打內存為32K,少量數(shù)據(jù)是不是不判忙,可直接送數(shù)就可以?
回答:可以,當一次發(fā)送的數(shù)據(jù)少于緩沖區(qū)時,可以不判忙。
3.問題:RD-EH32-V2緩存不大,如何解決?
回答:除非大量連續(xù)的打印幾十k上百k的圖形,緩存大有優(yōu)勢,在不極其特殊的情況下緩存都是夠用的
跟緩存的大小沒有關系,和處理器對命令的處理能力有關系,處理器的速度快,打印完一行的時間小于接受打印數(shù)據(jù)一行的時間,所以占用的緩沖區(qū)比較小。
51處理數(shù)據(jù)的速度很慢,打印的速度小于命令傳送的速度,這樣,為了不耽誤主機對其他數(shù)據(jù)的處理,基本上都是把緩沖區(qū)做得大一些,這樣,主機發(fā)送完打印數(shù)據(jù)后就可以處理別的任務。
4.問題:256像素*256像素的位圖,大概發(fā)送給打印機的數(shù)據(jù)超過8192個字節(jié)。經(jīng)常出現(xiàn)打印死機?
回答:超出打印機緩沖區(qū)了,需要分段來發(fā)送。
5.問題:我在串口助手上發(fā)1b3800cdf5為什么不打印出王字呢
回答:加0d,沒有打印出來,因為字符沒有滿一行。
6.問題:我從我的大程序上截下關于打印機的程序,單獨運行,打印正常,但一嵌入到整個大程序中,就會打出來亂碼,是何緣故?(大程序中有關打印機的程序我放在程序的起始部分,也就是我把大程序起始部分復制出來形成一個小程序運行,打印正常,但如果運行大程序為何就不正常了 ?
回答:用的C語言吧,軟件模擬一下,看看程序是否在正常執(zhí)行
7.問題:在VB下,我能打印出字符集的20H--80H的字符,從81H開始的字符不能打印出來(空白),請問是何原因?
回答:VB中打印可見字符與不可見字符的方法是不一樣的,打印不可見字符的方法:Dim AA(0) As Byte
AA(0) = 200 pirnt(aa(0))
8.問題:你好,我正在用你公司的的款熱敏微打。RD-E型。連續(xù)打印A~T這20個字母,沒問題。如果換成20個字母A,就打出了20個""。請問是什么原因?
回答:程序上在STB后加長延時,硬件上1。換個好一點的電源.
9.問題2:客戶反應無法打印出數(shù)據(jù)的”數(shù)”字?
回答: 此類故障是由于客戶所使用的編輯器(KELL)的BUG引起的,KELL有個0XFD的BUG,解決方法(1)可以讓客戶下載KEEL的這個補丁來解決(2)可讓客戶直接發(fā)該漢字的內碼。
濟寧客戶問:
10.問題1:E32-SN出現(xiàn)打印亂碼?
回答:經(jīng)測試程序代碼無問題,后經(jīng)了解客戶用的是12M的晶振,讓改為11.0592晶振故障解快,些類故障是由于12M的晶振算出的波特率誤差太大造成的.。
11.問題:我用程序控制你們公司的熱敏打印機打印圖形的時候 有的時候打印過程中 突然sel燈滅了停止了打印然后一閃一閃的,有時不知道什么時候 突然就滅了 然后就不動了這個是怎么回事呢?
回答:打印的過程中出現(xiàn)燈閃的是因為接收數(shù)據(jù)緩沖區(qū)滿了,打印機給出忙信號,并且滅燈,在打印緩沖不滿的時候打印機給出空閑信號燈亮,在這種動態(tài)的情況下,打印機的s
el燈就會出現(xiàn)閃爍。可能的問題:缺紙,沒有判忙。
12.問題:打印機初始化語句有時好用有時不好用
回答:客戶發(fā)來一段程序,如下:經(jīng)分析,該程序是可以正常打印的。分析此問題是有時可以打印有時不可以打印。讓客戶在程序前增加延時,不要上電就打印,給打印機足夠的復位時間。經(jīng)過今天的回訪客戶說已經(jīng)可以打印。
13.問題:榮達微型打印機的條碼號為RDTH32SC-8R-940A478,要打印條碼是不是得升級程序?
回答:首先與開發(fā)部確認TH的打印機可不可以改成條碼打印。得到回復是可以打CODE39及EAN13碼。于是,問客戶打印什么條碼,客戶說打印EAN13與CODE39碼,于是回答客戶可以,具體更換讓客戶與相關商務聯(lián)系。
客戶又要條碼指令格式,將“條碼指令表.pdf”文件發(fā)給客戶
客戶問條碼生成的是唯一的嗎?回答是唯一的,只要發(fā)的數(shù)據(jù)不重復。
14.問題:打印機的命令或數(shù)據(jù)是面向 ASC碼的還是 十六進制 十進制的?
回答:命令用什么方式發(fā)送都行.如要發(fā)送字符數(shù)據(jù)的話,必須按ASCII碼方式發(fā)送,例:如想打印”1”這個字符,不能發(fā)送數(shù)字1給打印機,要發(fā)送”1”的ASCII碼才行,通過查ASCII碼表,可知”1”的ASCII碼為十六進制的31H.所以發(fā)送一個31再發(fā)送一個0D就才可以打印的.
15.問題:你好,這個打印機的控制流程是不是這樣的,比如打印漢字的話,先向打印機發(fā)送命令ESC 8 N然后再發(fā)送打印內容呢??
回答:是的,485是有協(xié)議格式的,幀頭+數(shù)據(jù)包+幀尾。打漢字是先發(fā)送1B 38 00 再發(fā)送漢字的內碼,最后加個0D.客戶問0D起什么作用。例如,打印一行半的內容,如不發(fā)送0D則只會打印出1行內容。另半行不會打出。
16.問題:客戶反映說用串口打印機能打印出字母,打印不出來漢字?
回答:經(jīng)與客戶聊天,客戶用的是C#編程,在C#中用串發(fā)式發(fā)送字母可以打印,漢字打印是亂碼,如下:PRINT_CHS(“中國/n”);不會打印出“中國”兩字,而會打出亂碼。
我懷疑是因為C#的漢字編碼方式是按UNICODE碼編碼的,所以打印不出來,于是讓客戶試以下數(shù)據(jù),PRINT(0X1C);PRINT(0X26);PRINT(0XBA);PRINT(0XBA);PRINT(0X0D);
客戶試了一下數(shù)據(jù),說可以打印出一個“漢”字,說明我們的打印機的漢字庫是好用的,C#的漢字編碼方式不是內碼方式,于是讓客戶查一下C#的相關轉換函數(shù),將字串發(fā)送轉成內碼方式發(fā)送。
17.問題:RD-T16微打能用PC來打印嗎?
回答:可以,經(jīng)與客戶了解,客戶用的是并口打印機,于是,告訴客戶買個并口的延長線就可以用電腦來打印了。軟件上得需做一個打印機驅動軟件。客戶說有說明書上有驅動,我與客戶說驅動不適用于這個打印機,此打印機由于分辨率低,用驅動打印效果很差。客戶問如何打印,由于客戶以前用單片機打印,于是告訴客戶在PC上與在單片機上用法是一樣的,寫程序。
18.問題:串口工具里怎么發(fā)送命令?
回答:連好打印機,將串口助手的參數(shù)設置成與打印機一樣的參數(shù),按照說明書輸入你想測試的指令,選中十六進制,點擊發(fā)送就可以了。
19.問題:EH32-SN的打印機用串口助手發(fā)送還是不打印?
回答:先前已教過客戶串口助手的使用,已排除串口助手不會用的問題,懷疑是缺紙引起不打印,讓客戶看一下打印機的指示燈是否處理長亮狀態(tài),客戶說不是長亮的。于是讓客戶將紙上好,打印正常。
20.問題:客戶問485如何控制打印機?
回答:首先,問客戶用的是否為485接口的打印機,客戶說不是.問他那如何連接的,他說是用485-232轉換器進行連接的,于是告訴客戶,這樣連接的話,與232的方式驅動打印機是一樣的,只是電平為485了.
21.問題:客戶問10進制的數(shù)據(jù)如何發(fā)送給打印機?
回答:首先,發(fā)送的方法為(1)將一個十進制數(shù)據(jù)通用數(shù)學方法(整除,取余)分別取為位數(shù)來,如123,分別取出1,2,3.(2)將取出的位數(shù)分別加上0X30即得到相應的ASCII碼.(3)將加上0X30后的數(shù)據(jù)發(fā)送給打印機.