单片机C51 - 串行通信原理及串口编程实验
生活随笔
收集整理的這篇文章主要介紹了
单片机C51 - 串行通信原理及串口编程实验
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、兩種通信方式概念
1.并行通信
- 傳輸原理:并行通信時(shí)數(shù)據(jù)的各個(gè)位同時(shí)傳送,以字節(jié)為單位并行傳輸
- 優(yōu)點(diǎn):并行通信速度快,傳輸?shù)臄?shù)據(jù)寬度可以是1~128位,甚至更寬
- 缺點(diǎn):并口上導(dǎo)線之間數(shù)據(jù)同步難處理,占用引腳資源多
- 傳輸原理:串行通信的數(shù)據(jù)是一位一位地址進(jìn)行傳輸?shù)?#xff0c;在傳輸中每一位數(shù)據(jù)都占據(jù)一個(gè)固定的時(shí)間長(zhǎng)度。
- 優(yōu)點(diǎn):串行通信傳輸線少,占用引腳資源少,成本低,適合遠(yuǎn)距離傳送
- 缺點(diǎn):速度相對(duì)較慢
- 單工通信:數(shù)據(jù)僅能從一臺(tái)設(shè)備到另一臺(tái)設(shè)備進(jìn)行單一方向的傳輸。
- 半雙工通信:數(shù)據(jù)可以從一臺(tái)設(shè)備到另一臺(tái)設(shè)備進(jìn)行傳輸,也可以相反方向傳輸,但不能在同一時(shí)刻雙向傳輸數(shù)據(jù)。
- 全雙工通信:數(shù)據(jù)可以在同一時(shí)刻從一臺(tái)設(shè)備到另一臺(tái)設(shè)備進(jìn)行傳輸,也可以進(jìn)行相反方向的傳輸,即可以同時(shí)雙向傳輸數(shù)據(jù)。
? ? ? ?異步通信是指數(shù)據(jù)是以字符為單位i進(jìn)行傳送的,字符與字符間的傳送是完全異步的,位與位之間的傳送基本上是同步的。異步通信時(shí),數(shù)據(jù)是一幀一幀傳送的,每幀數(shù)據(jù)包含有起始位(“0”)、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位(“1”),每幀數(shù)據(jù)的傳送靠起始位來同步。
3.同步串行通信方式
? ? ? ?同步通信是指同步傳輸采用字符塊的方式,字符與字符之間、字符內(nèi)部的位之間都同步,減少了每個(gè)字符的控制和錯(cuò)誤檢測(cè)數(shù)據(jù)位,因而可以具有較高的傳輸速率。
三、串口編程實(shí)驗(yàn)
1、SCON寄存器工作方式
| 位 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
| 功能 | SM0 | SM1 | SM2 | REN | TB8 | RB8 | TI | RI |
- RI:接收中斷標(biāo)志位——接收結(jié)束時(shí),會(huì)由硬件置1,向CPU發(fā)出中斷請(qǐng)求。(要由軟件復(fù)位)
- TI:發(fā)送中斷標(biāo)志位——發(fā)送結(jié)束時(shí),會(huì)由硬件置1,向CPU發(fā)出中斷請(qǐng)求。要由軟件復(fù)位)
- TB8:用來存放發(fā)送的第9位。
- RB8:用來存放接收的第9位。
- REN:是串行接收允許位——0時(shí):允許串行接收;1時(shí):禁止串行接收
| SM0 | SM1 | 方式 | 說明 | 波特率 |
| 0 | 0 | 0 | 移位寄存器 | fosc/12 |
| 0 | 1 | 1 | 10位異步收發(fā)(8位數(shù)據(jù)) | 可變 |
| 1 | 0 | 2 | 11位異步收發(fā)(9位數(shù)據(jù)) | fosc/64或fosc/32 |
| 1 | 1 | 3 | 11位異步收發(fā)(9位數(shù)據(jù)) | 可變 |
| 位 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
| 功能 | SMOD | - | - | - | - | - | - | - |
- PCON是沒有位尋址的,也就是說不能直接操作SMOD要直接操作PCON寄存器。
- SMOD:是波特率是否加倍的選擇位。——0時(shí):波特率不加倍;1時(shí):波特率加倍。
總結(jié)
以上是生活随笔為你收集整理的单片机C51 - 串行通信原理及串口编程实验的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AV1 编码器研究之aomenc.exe
- 下一篇: 信息系统与管理完美结合