串行通信以波特率來表示其傳輸速率,波特率指信號(hào)每秒傳輸?shù)奈粩?shù)。
串行通信包括異步通信和同步通信兩種通信方式。
異步通信以一個(gè)起始位表示一個(gè)字符的開始,以停止位表示其結(jié)束。其傳輸格式如圖1所示。
圖1 異步通信的格式
從圖中可以看出,起始位占用1位,數(shù)據(jù)為5~8位,其長度取決于傳輸數(shù)據(jù)的類型,先傳輸?shù)臀唬髠鬏敻呶?。?shù)據(jù)后面為校驗(yàn)位,如設(shè)置為偶校驗(yàn),則數(shù)據(jù)及校驗(yàn)位的1的個(gè)數(shù)為偶數(shù)。如設(shè)置為奇校驗(yàn),則數(shù)據(jù)及校驗(yàn)位的1的個(gè)數(shù)為奇數(shù)。最后是停止位,停止位可根據(jù)需要設(shè)置為1位、1 位或2位。在異步通信中,每一位占用的時(shí)間是數(shù)據(jù)傳輸速率(波特率)的倒數(shù)。如果傳輸波特率為 2400,則每一位的時(shí)間為1/2400S,即0.416 ms。如果傳輸一個(gè)ASCII碼,數(shù)據(jù)占7位,起始位、校驗(yàn)位、停止位各占1位,則傳送一個(gè)ASCII碼占用10位。用2400的波特率,每秒能傳輸240個(gè)ASCII碼。異步通信常用的傳輸波特率為150~38400。
異步通信在發(fā)送時(shí),以起始位表示字符的開始,以停止位表示字符的結(jié)束。接收端則利用這些分隔符把一個(gè)串行數(shù)據(jù)變換為并行數(shù)據(jù)。這種通信方式易于實(shí)現(xiàn),即使在傳輸過程中不連續(xù)發(fā)送,也不會(huì)產(chǎn)生不同步的問題。但由于每傳送一個(gè)字符都要加上2~3位用于同步,使其傳輸效率降低。
與異步通信不同,同步通信一次發(fā)送一個(gè)完整的數(shù)據(jù)組,在發(fā)送前,雙方要發(fā)出專門的同步符號(hào)。同步通信的傳輸效率較高,其通信協(xié)調(diào)較復(fù)雜,而且需要同步時(shí)鐘。