通信方式
并行
適合短距離通信,并行通信控制簡單、相對傳輸速度快(8位一起傳輸)。
串行
只能一位一位的傳送。
同步(了解)
建立發送方時鐘對接收方時鐘的直接控制,使雙方達到完全同步。此時,傳輸數據的位之間的距離均為“位間隔”的整數倍,同時傳送的字符間不留間隙。
發送方對接收方的同步可以通過外同步和自同步
異步(常)
以字符(構成的幀)為單位進行傳輸。數據位從低到高傳送。
格式:
這里的空閑時間是任意的。
串行通信的制式(傳輸方向)
單工(僅能沿一個方向)
半雙工(可進行雙向,但需分時)
全雙工
串行通信的錯誤校驗
奇偶校驗
在發送數據時,數據位尾隨的1位為奇偶校驗位(1/0)。奇校驗時,數據中1的個數與檢驗位1的個數之和應為奇數;偶校驗時,數據中1的個數與校驗位1的個數之和應為偶數。接收字符時,對1的個數進行校驗,若字符不一致,則說明傳輸數據過程中出現錯誤。
代碼和校驗
發送方將所發數據塊求和(或各字節異或),產生一個字節的校驗字符(校驗和)附加到數據塊末尾。接收方接收數據時,同時對數據塊(除校驗字節外)求和(或各字節異或),將所得的結果與發送方的“校驗和”進行比較,一致則無差。
循環冗余校驗
通過某種數學預算實現有效信息與校驗位之間的循環校驗,常用語對磁盤信息的傳輸、存儲區的完整性校驗。
串口的基本結構
SBUF:51單片機中的特殊寄存器,串行數據緩沖器(一個接收一個發送),兩個其實是共用的一個地址99H,但是兩個在物理上面是分開的。
當發送使用時,就采用SBUF=XXX; (XXX為需要傳送的數據)
當接收使用時,采用XXX=SBUF;
記得因為是串行的所以傳輸都是一位一位進行的。
T1溢出率:T1計時器的溢出頻率(就是計時器每次低位計滿向高位進位時間的倒數)
用處:用于計算波特率(每秒傳輸二進制代碼的位數)
工具:STC-ISP
代碼:
#include
#include
#define uc unsigned char
#define uint unsigned int
uc flag,i,flag_t,s[50]="",j=0,flag_n=0;
uc code table[]="I get ";
void init()
{
TMOD=0x20; //定時器工作方式,選擇了定時器1,工作方式2 八位初值自動重裝的8位定時器。
TH1=0xfd; //定時器1初值 ,設置波特率為9600 晶振11.0529MHZ?
TL1=0xfd;
TR1=1; //開啟定時器1
SM0=0;
SM1=1; //10位異步接收,(8位數據)波特率可變
REN=1; //允許串行口接收位
EA=1; //允許中斷(總閘)
ES=1; //允許串口中斷
}
void main()
{
init();
while(1)
{
if(flag==1)
{ if(flag_n!=0) //使第二個及以后I get xx 換行,不與You transfer在一行(單純為了格式好看)
{TI=1;
printf(" ");
while(!TI);
TI=0;
}
for(i=0;i<6;i++)
{
SBUF=table[i];
while(!TI);
TI=0;
}
for(i=0;s[i]!='#'&&i<50;i++)
{
SBUF=s[i];
while(!TI);
TI=0;
}
flag=0;
}
if(flag_t==1) //發送完畢之后,在電腦端輸出。
{
TI=1; //printf之前必須將T1置為1才行。
printf (" You transfer %s",s);
while(!TI);
TI=0;
flag_t=0;
}
}
}
void ser() interrupt 4
{
if(RI) //接收數據,手動將RI清0
{
RI=0;
if(flag==0&&j!=0)//1.循環賦值為' 主站蜘蛛池模板: 免费欧美大片| 国产免费不卡| 俄罗斯摘花| 久久婷婷电影网| 无码观看AAAAAAAA片| 精品国产国偷自产在线观看| 国产亚洲精品V在线观看一| 老头操美女| 欧美18在线| 欧美尤物射精集锦| 亚洲一区精品伊人久久伊人| 一个人在线观看视频| 成人五级毛片免费播放| 久久强奷乱码老熟女| 我不卡影院手机在线观看| cntv官网| 美女张开让男生桶| 搡女人免费免费视频观看| 伊人电院网| 国产私拍福利精品视频| 日本边添边摸边做边爱边| 天美传媒在线观看免费完整版 | 在线观看国产区| 45分钟做受片免费观看| 国产亚洲精品久久7777777| 日日干夜夜爽| 啊灬啊别停灬用力啊在线观看视频 | 国产片MV在线观看| 色www精品视频在线观看| aaa在线观看视频高清视频| 第一怡春院| 久草在线草a免费线看| 女警被黑人20厘米强交| 坠落的丝袜美人妻| 国产成人精品视频播放| 久久午夜夜伦痒痒想咳嗽P | 辣文肉高h粗暴| 中国农村真实bbwbbwbbw| 第一次玩老妇真实经历| 人人超碰97caoporen国产| 成人免费在线视频|