小票打印機亂碼問題


--------------------------------------

editor:YeungChi

date:2016/3/29

describe:小票打印機亂碼問題

文章內容:
一、參數解釋

二、串口連接打印機設置案例

--------------------------------------

串口是一種非常通用的設備通信的協議;

一、參數解釋

波特率

這是一個衡量符號傳輸速率的參數。它表示每秒鍾傳送的符號的個數。例如300波特表示每秒鍾發送300個符號。當我們提到 時鍾周期時,我們就是指波特率,例如如果協議需要4800波特率,那么時鍾是4800Hz。這意味着 串口通信在數據線上的采樣率為4800Hz。通常電話線的波特率為14400,28800和36600。波特率可以遠遠大於這些值,但是波特率和距離成反比。高波特率常常用於放置的很近的儀器間的通信,典型的例子就是GPIB設備的通信。
 
波特率指數據信號對載波的調制速率,它用單位時間內載波調制狀態改變次數來表示,其單位為波特(Baud)。 波特率與比特率的關系為:比特率=波特率X單個調制狀態對應的二進制位數。
顯然,兩相調制(單個調制狀態對應1個二進制位)的 比特率等於波特率;四相調制(單個調制狀態對應2個二進制位)的比特率為波特率的兩倍;八相調制(單個調制狀態對應3個二進制位)的比特率為波特率的三倍;依次類推。
RS232是要用在近距離傳輸上最大距離為30M
RS485用在長距離傳輸最大距離1200M

數據位

這是衡量通信中實際數據位的參數。當計算機發送一個信息包,實際的數據不會是8位的,標准的值是5、6、7和8位。如何設置取決於你想傳送的信息。比如,標准的ASCII碼是0~127(7位)。擴展的ASCII碼是0~255(8位)。如果數據使用簡單的文本(標准 ASCII碼),那么每個 數據包使用7位數據。每個包是指一個字節,包括開始/停止位,數據位和 奇偶校驗位。由於實際數據位取決於 通信協議的選取,術語“包”指任何通信的情況。

停止位

用於表示單個包的最后一位。典型的值為1,1.5和2位。由於數據是在傳輸線上定時的,並且每一個設備有其自己的時鍾,很可能在通信中兩台 設備間出現了小小的不同步。因此停止位不僅僅是表示傳輸的結束,並且提供計算機校正 時鍾同步的機會。適用於停止位的位數越多,不同時鍾同步的容忍程度越大,但是數據傳輸率同時也越慢。

奇偶校驗位

串口通信中一種簡單的檢錯方式。有四種檢錯方式:偶、奇、高和低。當然沒有校驗位也是可以的。對於偶和 奇校驗的情況,串口會設置校驗位( 數據位后面的一位),用一個值確保傳輸的數據有偶個或者奇個邏輯高位。例如,如果數據是011,那么對於偶校驗,校驗位為0,保證邏輯高的位數是偶數個。如果是奇校驗,校驗位為1,這樣就有3個邏輯高位。高位和低位不是真正的檢查數據,簡單置位邏輯高或者邏輯低校驗。這樣使得接收設備能夠知道一個位的狀態,有機會判斷是否有噪聲干擾了通信或者是否傳輸和接收數據是否不同步。
 
 
二、串口連接打印機設置案例
 
問題:小票打印機打印亂碼
分析:1.數據線接觸不良;
         2.端口設置的波特率與小票打印機波特率不同步的問題;
解決方案:
         問題1容易解決,更換數據線以及重現接好數據線即可。
         針對問題2,通過查看小票打印機的說明書可以設置小票打印機的波特率;
        
最后通過說明書的幫助,將DIP開關中的SW-7打開(出廠設置是關閉,缺省19200)解決了打印亂碼的問題;
 
 
 
 
補充:以下為度娘回答


典型表現:打印機突然打印幾行亂碼,然后就不工作了。  
解決方法: 針對於普通的使用者來說,有時重啟系統(電腦、打印機)是最簡單的解決問題的方法。

然而我們有時會發現,重新啟動打印機后,打印機會奇怪地馬上接着打印亂碼。而這時在打印管理器中打印作業已經消失。
其實,打印作業依然存在,只不過電腦的CPU把它處理完成后就存放在了硬盤上,由硬盤直接經由內存發送到打印機。
也就是說,作業還在硬盤上。 
這時候就需要我們多做一些工作了:請點擊“控制面板”--“管理工具”--“服務”。
接着打開服務列表,在Windows服務列表中選擇“Print Spooler”服務,並且中止此項服務。

2、數據傳輸問題。 
並口電纜由於虛焊或者接口電路、芯片發生故障,會使數據在傳輸中發生丟失,造成打印亂碼,漢字打印錯誤等故障現象。
並口線纜切記不要帶電插拔,否則管腳容易短路,接口芯片容易被浪涌電流燒毀。千萬不要存在僥幸心理。 
典型現象:有時我們會覺得奇怪,發送的打印作業后一切正常,打印機開始工作呼呼啦啦從頭打印到尾,看起來也很正常。
但是打印出來的東西卻亂七八糟,亂碼、錯位、缺失等現象紛紛呈現。 
解決方法:首先讓打印機做一下自檢(產品請參見操作手冊),如果自檢頁完全正常,
而您確認您的電腦沒有問題(沒有病毒,用其他軟件打印都是同樣的現象,
甚至在“開始”-“設置”-“打印機”-選擇型號-右擊鼠標-常規下“打印測試頁”也是如此),
我們就要考慮數據傳輸問題了。也就是兩個端口(電腦和打印機的接口電路)一根線(並口、串口、USB線纜)。
找一根可靠的替換線纜是最簡單有效的了。如果是端口問題就比較麻煩.
3、打印機硬件故障造成處理數據錯誤。 
打印機的字庫rom,芯片等部件損壞。除去使用年頭長,機器自然老化之外,造成打印機硬件損壞的原因最主要是工作環境不好。 
在Epson打印機的說明書上有明確的對使用環境的說明,但是使用者真正認真閱讀並且遵從的很少。經常有用戶表示自己的打印機工作環境非常好,
但是維修人員打開打印機后卻發現里面的東西簡直可以開個雜貨鋪。 在溫差變化大,濕度大,電壓不穩定,電源沒有良好接地的工作場合,
尤其會造成打印機的損壞。 典型故障:打印亂碼或者其他故障現象出現之后,我們可以嘗試做打印機的自檢。
如果出現自檢頁也是亂碼,或者西文、數字正常,單單中文沒有,再或者根本不工作的情況,都屬於打印機本身硬件故障。 
解決方法:請盡快聯系Epson的維修站。維修人員會認真具體地檢測您的打印機。
4、軟件仿真模式和打印機驅動程序不匹配。Epson的針式打印機一般還可以模擬一些其他廠家的打印機來工作。
比如模擬OKI的和IBM的。此時就相當於一台OKI的或者IBM的打印機在工作,這時我們當然要安裝相應的OKI或者IBM的打印機驅動程序。 
經常有使用者在打印機Firmware中選擇的當前仿真為OKI或者IBM,但是在電腦上安裝的是Epson打印機的驅動程序。結果理所當然打印會出現亂碼等現象。
5、串口連接時,波特率設置與所連接設備的波特率設備不匹配。  
安裝有串口卡的打印機(產品請參見操作手冊),出廠時一般都把波特率設置為9600,這和電腦串口的默認波特率值相同。
但是很多用串口連接打印機的工控設備,計量儀器,由於強調穩定性而不要求傳輸速度,串口波特率基本都默認設置為1200等低值。
這樣如果不做調整就開始聯機打印,打印會出現亂碼。  
另外:有時即便打印機和電腦的串口設置的波特率相同,
仍然可能因為處理速度不匹配(當然是電腦快打印機慢),使得打印機緩沖區溢出,打印機CPU響應不及時,也會造成打印亂碼或者其他問題。
這時也需要我們手動地把打印機和電腦的串口波特率都同時降低。比如同時從9600降低到4800。
但電腦和打印機的波特率必須相同,這一點無論何時都要遵守。  
請注意:在有的把串口卡作為選件的打印機產品中,串口卡安裝之前,缺省設置列表中是沒有波特率這一項的。
安裝串口卡后會自動生成出該項。另有一些打印機的串口卡上有設置波特率的硬跳線。就可以直接用跳線更改波特率了。  
解決方法:打印機的缺省設置表中或者跳線的位置顯示了當前串口設置的波特率值。  
對於那些需要在缺省設置中用打印機面板的按鍵來更改波特率的串口卡,需要我們打印出缺省設置頁,按照上面的提示改變串口波特率,
可以按照提示步驟一步步改變打印機的波特率至和設備串口波特率值相同。 
對於那些使用硬跳線來更改波特率的串口卡,可以請參閱串口卡的使用手冊上的波特率對照表來修改。

      
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM