68精品久久久久久欧美,最近中文字幕完整在线看一,久久亚洲男人天堂,最近中文字幕完整视频高清1

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當(dāng)前位置:首頁 >> 技術(shù)中心 >> 單片機(jī)入門 >> 單片機(jī)串口通信

單片機(jī)串口通信

作者:admin 來源:不詳 發(fā)布時間:2018-05-08  瀏覽:4

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

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

    SBUF是數(shù)據(jù)緩沖寄存器,發(fā)送和接收用的是一個地址,但是不用擔(dān)心沖突,讀只能從接收緩沖區(qū),寫只能在發(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的多級通信控制位

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

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

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

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

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

    寄存器PCON(最高位SMOD)

    SMOD=1時,波特率加倍

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

    PC端程序,VB編寫,使用MSCOMM控件

    Private Sub Command1_Click()

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

    End Sub

    Private Sub Form_Load()

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

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

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

    MSComm1.PortOpen = True '打開串口

    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: 定時器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  最后修改時間:2018-05-08

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

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

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

贺兰县| 类乌齐县| 镇远县| 梅河口市| 栾川县| 浪卡子县| 加查县| 微博| 万源市| 荆州市| 瑞金市| 缙云县| 乾安县| 子洲县| 上栗县| 航空| 札达县| 文登市| 大冶市| 剑河县| 迁安市| 光山县| 桐梓县| 两当县| 临夏县| 阳原县| 乐东| 五台县| 孝昌县| 三门县| 清河县| 鲜城| 贡山| 罗定市| 民权县| 黄浦区| 盐城市| 清苑县| 沙湾县| 且末县| 安福县|