日本高清不卡中文字幕-一起草草视频在线观看-亚洲精品一区二区三区色-国产亚洲精品免费视频

你好!歡迎來(lái)到深圳市穎特新科技有限公司!
語(yǔ)言
當(dāng)前位置:首頁(yè) >> 技術(shù)中心 >> 單片機(jī)入門(mén) >> 從零開(kāi)始學(xué)單片機(jī)(九)串口通信

從零開(kāi)始學(xué)單片機(jī)(九)串口通信

關(guān)鍵字:單片機(jī) 串口通信 作者:admin 來(lái)源:不詳 發(fā)布時(shí)間:2018-05-19  瀏覽:8

串口通信是單片機(jī)一個(gè)重要的部分,單片機(jī)和PC,單片機(jī)和單片機(jī)之間的通信大都用串口。單片機(jī)的串口是全雙工異步串口通信方式。通過(guò)TXD(P3.1)發(fā)送,RXD(P3.0)引腳接收輸入。串口傳送數(shù)據(jù)是一幀一幀發(fā)送的,它有四種工作方式,同時(shí)也可以做并行I/O的擴(kuò)展。

圖上是串口的結(jié)構(gòu)圖。

SBUF是數(shù)據(jù)緩沖寄存器,發(fā)送和接收用的是一個(gè)地址,但是不用擔(dān)心沖突,讀只能從接收緩沖區(qū),寫(xiě)只能在發(fā)送緩沖區(qū)里。

寄存器SCON(SM0 SM1 SM2 REN TB8 RB8 TI RI)

SM0和SM1: 工作方式選擇(0-3),方式1和方式3使用T1產(chǎn)生波特率,方式0和方式2是固定速率。

SM2 :在方式2和方式3的多級(jí)通信控制位

REN:允許串行接收控制位,0禁止接收

TB8:對(duì)于方式2和方式3,是發(fā)送的第9位

RB8:對(duì)于方式2和方式3,是接收的第9位;對(duì)于方式1,是接收到的停止位

TI:發(fā)送中斷標(biāo)志,發(fā)送完一幀后置位,必須由軟件清零

RI:發(fā)送中斷標(biāo)志,接收完一幀后置位,必須由軟件清零

寄存器PCON(最高位SMOD)

SMOD=1時(shí),波特率加倍

程序:PC與單片機(jī)通信,PC發(fā)送字符,單片機(jī)接收后返回給PC

PC端程序,VB編寫(xiě),使用MSCOMM控件

Private Sub Command1_Click()

MSComm1.Output = Text1.Text '發(fā)送數(shù)據(jù)

End Sub

Private Sub Form_Load()

MSComm1.CommPort = 4 '設(shè)置串口的端口號(hào)

MSComm1.Settings = "9600,n,8,1" '設(shè)置串口的波特率等參數(shù)

MSComm1.RThreshold = 1 '設(shè)置最小接收的字節(jié)數(shù)

MSComm1.PortOpen = True '打開(kāi)串口

End Sub

Private Sub MSComm1_OnComm()

Select Case MSComm1.CommEvent

Case comEvReceive

Text2.Text = Text2.Text & MSComm1.Input '接收數(shù)據(jù)

End Select

End Sub

單片機(jī)程序:

#include

void UartInit();

void UartSendChar(unsigned char ch);

void main(void)

{

UartInit();

while(1);

}

void UartInit()

{

SCON = 0x50; // SCON: 模式1

TMOD = 0x20; // TMOD: 定時(shí)器1 模式2

PCON = 0x00; // SMOD=0;

TH1 = 0xFD; // Baud:9600 波特率=2SMOD×fosc/(32×12×(256-TH1))

TL1 = 0xFD;

IE = 0x90;

TR1 = 1;

EA = 1;

}

void UartSendChar(unsigned char ch)

{

SBUF = ch;

while(TI==0);

TI=0;

}

void UartRec() interrupt 4

{

unsigned char ch;

ch = SBUF;

if(RI)

{

RI = 0;

UartSendChar(ch);

}

}

編輯:admin  最后修改時(shí)間:2018-05-19

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號(hào)-4

墨玉县| 陕西省| 察哈| 鄢陵县| 苗栗市| 锡林郭勒盟| 福海县| 澜沧| 呼图壁县| 家居| 商南县| 三原县| 周宁县| 崇文区| 宝鸡市| 平和县| 观塘区| 茌平县| 沈阳市| 思南县| 阿合奇县| 临沂市| 福贡县| 靖安县| 沈丘县| 延长县| 洛浦县| 元氏县| 昌黎县| 安吉县| 文成县| 德州市| 商都县| 太谷县| 中卫市| 嘉峪关市| 治多县| 伊宁市| 扶风县| 靖安县| 新和县|