在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

51單片機串口配置方法

CHANBAEK ? 來源:電子應用學習館 ? 作者:一只會飛的大魚兒 ? 2023-04-14 14:58 ? 次閱讀

串口,作為單片機程序開發中最常用、最方便,也是應用最廣泛的程序調試方法;無論是作為調試工具,打印出調試信息,還是對功能模塊進行通信,串口是每個單片機開發人員最常用的單片機外設。

由于大部分51單片機不支持在線調試功能,所以串口作為一種有效的調試功能,所以在51單片機程序開發時,無法進行在線調試,不妨可以多采用串口來進行調試。

1. 串口配置

51單片機配置除了需要配置2個8位寄存器SCON、PCON外,還要配置定時器1的控制寄存器TMOD,因為串口在進行收發需要使用定時器來采樣。

(1) 狀態控制寄存器 SCON

SCON 是一個逐位定義的 8 位寄存器,用于控制串行通信的方式選擇、接收和發送,指 示串口的狀態,SCON 即可以字節尋址也可以位尋址,字節地址 98H,地址位為 98H~9FH。它的各個位定義如下:

SM0 和 SM1 是串口的工作方式選擇位,2 個選擇位對應 4 種工作方式,如下表,其中 Fosc 是振蕩器的頻率。

(2) 電源與波特率控制寄存器

控制寄存器 PCON 也是一個逐位定義的 8 位寄存器,目前僅僅有幾位有定義,如下所示:

圖片

僅最高位 SMOD 與串口的控制有關,其他位與掉電方式有關。PCON 的地址為 87H 只能按 字節尋址,SMOD 是串行通信波特率系數控制位,當串口工作在工作方式 1、2 時,若使用 T1 作為波特率發生器其 SMOD=1 則波特率加倍。

(3) 定時器控制模式寄存器

TMOD是定時器、計數器模式控制寄存器,它是一個逐位定義的8位寄存器,但只能使用字節尋址

圖片

當串口工作在工作方式0和2時,波特率固定,方式0時fosc/12;方式2時fosc/32或fosc/64(根據SMOD判斷)。當串口工作在方式1時,波特率=(2^SMOD/32)*(單片機時鐘頻率/(256-X)),X是初值;C/T#為定時器和計數器選擇位,0為定時器,1為計數器。

2. 串口通用程序

為了有較好的通用性,將串口程序配置為一個H文件和C文件,往后只要開發51單片機程序,都可以將該兩個文件復制在工程中直接使用,無須修改。

(1)uart.h

#ifndef _UART_H_
#define _UART_H_


#include "reg52.h"


void UartInit(void);
void Send_string(unsigned char *c);
void Send_Data(unsigned char DAT);


#endif

(2)uart.c

#include "uart.h"


//串口初始化
void UartInit(void)
{
  /*串口初始化 */
  TMOD = 0x20;    //定時器T1使用工作方式2
  TH1 = 253;        // 設置初值
  TL1 = 253;
  TR1 = 1;          // 開始計時
  SCON = 0x50;    //工作方式1,波特率9600bps,允許接收   
  ES = 1;
  EA = 1;           // 打開所以中斷   
  TI = 0;
  RI = 0;
}


void Send_Data(unsigned char DAT)
{
  ES = 0;
  TI=0;
  SBUF = DAT ;
  while(TI==0);
  TI=0;
  ES = 1;
}


void Send_string(unsigned char  *c)
{
  while(*c != '\\0')
  {
    Send_Data(*c++);
  }  
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6056

    文章

    44800

    瀏覽量

    643652
  • 寄存器
    +關注

    關注

    31

    文章

    5396

    瀏覽量

    122480
  • 51單片機
    +關注

    關注

    275

    文章

    5707

    瀏覽量

    125665
  • 調試
    +關注

    關注

    7

    文章

    600

    瀏覽量

    34368
  • 串口
    +關注

    關注

    14

    文章

    1578

    瀏覽量

    78213
收藏 人收藏

    評論

    相關推薦

    51單片機串口檢測程序

    本內容提供了51單片機串口檢測程序,詳解列出了本程序
    發表于 05-09 11:43 ?7018次閱讀

    51單片機串口通信代碼

    51單片機串口通信的代碼設計
    發表于 11-09 17:47 ?180次下載

    51單片機串口通信程序

    51單片機串口通信程序,帶有詳細例程,希望可以給你幫助。
    發表于 05-16 11:56 ?125次下載

    基于51單片機的UART串口通信

    基于51單片機的UART串口通信詳解。
    發表于 11-21 10:14 ?6.4w次閱讀
    基于<b class='flag-5'>51</b><b class='flag-5'>單片機</b>的UART<b class='flag-5'>串口</b>通信

    如何使用51單片機實現串口通信

    51單片機串口引腳為P3.0引腳與P3.1引腳,分別是RXD和TXD引腳。串口通信可以用于單片機和其它芯片通信或者
    發表于 11-21 15:47 ?3.1w次閱讀
    如何使用<b class='flag-5'>51</b><b class='flag-5'>單片機</b>實現<b class='flag-5'>串口</b>通信

    如何配置minicom與51單片機進行串口通信詳細實例說明

    本文檔的主要內容詳細介紹的是如何配置minicom與51單片機進行串口通信詳細實例說明。
    發表于 07-10 17:40 ?0次下載
    如何<b class='flag-5'>配置</b>minicom與<b class='flag-5'>51</b><b class='flag-5'>單片機</b>進行<b class='flag-5'>串口</b>通信詳細實例說明

    51單片機串口通訊詳解

    串口,作為單片機程序開發中最常用、最方便,也是應用最廣泛的程序調試方法;無論是作為調試工具,打印出調試信息,還是對功能模塊進行通信,串口是每個單片機
    發表于 11-11 17:06 ?15次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>串口</b>通訊詳解

    51單片機串口通信

    51單片機串口通信文章目錄51單片機串口通信串口介紹
    發表于 11-18 14:06 ?22次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>串口</b>通信

    51單片機串口通信

    51單片機串口通信文章目錄51單片機串口通信串口介紹
    發表于 11-21 20:36 ?64次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>串口</b>通信

    串口 單片機 文件_51單片機(四)燒錄程序

    串口 單片機 文件_51單片機(四)燒錄程序
    發表于 11-23 17:06 ?18次下載
    <b class='flag-5'>串口</b> <b class='flag-5'>單片機</b>  文件_<b class='flag-5'>51</b><b class='flag-5'>單片機</b>(四)燒錄程序

    單片機學習筆記————51單片機實現從串口收發

    單片機學習筆記————51單片機實現從串口收發
    發表于 11-23 17:06 ?43次下載
    <b class='flag-5'>單片機</b>學習筆記————<b class='flag-5'>51</b><b class='flag-5'>單片機</b>實現從<b class='flag-5'>機</b>的<b class='flag-5'>串口</b>收發

    51單片機——串口通信

    51單片機——串口通信串口通信?串口通信的原理?串口配置
    發表于 11-23 17:36 ?33次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>——<b class='flag-5'>串口</b>通信

    51 單片機串口燒錄程序方法

    51單片機串口燒錄程序方法51 單片機串口燒錄程序
    發表于 11-25 18:21 ?120次下載
    <b class='flag-5'>51</b> <b class='flag-5'>單片機</b><b class='flag-5'>串口</b>燒錄程序<b class='flag-5'>方法</b>

    基于51單片機單片機串口通信仿真設計

    基于51單片機單片機串口通信仿真設計,資料包含仿真及源程序
    發表于 04-20 16:15 ?4次下載

    ?51單片機串口通信詳細介紹-小白必看

    51單片機串口通信是單片機與外部設備通信的重要方式,它基于串行通信的原理,以字節為單位進行數據傳輸。在51
    的頭像 發表于 04-17 09:33 ?2414次閱讀
    ?<b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>串口</b>通信詳細介紹-小白必看
    主站蜘蛛池模板: 男女吃奶一进一出动态图 | 视频一区在线观看 | 高清一级| 亚洲国产精品综合久久2007 | 四虎4444hu4影视最新地址 | 黄h视频| 欧美日韩国产一区 | 色爱区综合 | 亚洲精品久久久久久久蜜桃 | 美女免费视频色在线观看 | 五月婷婷一区二区 | 高清成年美女xx免费网站黄 | 色网站在线看 | 久久伊人网站 | 性色xxx| 色综合久久综合欧美综合网 | 青草青草视频2免费观看 | 美女全黄网站免费观看 | 免费看污黄视频软件 | 免费看黄色的网站 | 亚洲你懂的 | 免费观看黄a一级视频 | 狠狠激情五月综合婷婷俺 | 国产真实灌醉美女疯狂弄 | 热久久这里只有精品 | 操片免费 | 免费手机黄色网址 | 五月婷婷一区 | 日本aaaa级毛片在线看 | 国产精品三级a三级三级午夜 | 国产成人综合一区人人 | 四虎影视地址 | 色综合久久久久久久久久久 | 国模私拍福利一区二区 | 亚洲色图综合图片 | 久久久久国产精品 | 免费人成网ww44kk44 | 欧美一卡二卡3卡4卡无卡六卡七卡科普 | 丁香花在线电影小说观看 | 五月天婷婷综合网 | 黄黄视频在线观看 |