吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

51單片機(jī)串口配置方法

CHANBAEK ? 來(lái)源:電子應(yīng)用學(xué)習(xí)館 ? 作者:一只會(huì)飛的大魚(yú)兒 ? 2023-04-14 14:58 ? 次閱讀

串口,作為單片機(jī)程序開(kāi)發(fā)中最常用、最方便,也是應(yīng)用最廣泛的程序調(diào)試方法;無(wú)論是作為調(diào)試工具,打印出調(diào)試信息,還是對(duì)功能模塊進(jìn)行通信,串口是每個(gè)單片機(jī)開(kāi)發(fā)人員最常用的單片機(jī)外設(shè)。

由于大部分51單片機(jī)不支持在線調(diào)試功能,所以串口作為一種有效的調(diào)試功能,所以在51單片機(jī)程序開(kāi)發(fā)時(shí),無(wú)法進(jìn)行在線調(diào)試,不妨可以多采用串口來(lái)進(jìn)行調(diào)試。

1. 串口配置

51單片機(jī)配置除了需要配置2個(gè)8位寄存器SCON、PCON外,還要配置定時(shí)器1的控制寄存器TMOD,因?yàn)榇谠谶M(jìn)行收發(fā)需要使用定時(shí)器來(lái)采樣。

(1) 狀態(tài)控制寄存器 SCON

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

SM0 和 SM1 是串口的工作方式選擇位,2 個(gè)選擇位對(duì)應(yīng) 4 種工作方式,如下表,其中 Fosc 是振蕩器的頻率。

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

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

圖片

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

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

TMOD是定時(shí)器、計(jì)數(shù)器模式控制寄存器,它是一個(gè)逐位定義的8位寄存器,但只能使用字節(jié)尋址

圖片

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

2. 串口通用程序

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

(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;    //定時(shí)器T1使用工作方式2
  TH1 = 253;        // 設(shè)置初值
  TL1 = 253;
  TR1 = 1;          // 開(kāi)始計(jì)時(shí)
  SCON = 0x50;    //工作方式1,波特率9600bps,允許接收   
  ES = 1;
  EA = 1;           // 打開(kāi)所以中斷   
  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++);
  }  
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6043

    文章

    44621

    瀏覽量

    638566
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5363

    瀏覽量

    121166
  • 51單片機(jī)
    +關(guān)注

    關(guān)注

    274

    文章

    5705

    瀏覽量

    124301
  • 調(diào)試
    +關(guān)注

    關(guān)注

    7

    文章

    589

    瀏覽量

    34064
  • 串口
    +關(guān)注

    關(guān)注

    14

    文章

    1557

    瀏覽量

    77043
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    51單片機(jī)串口檢測(cè)程序

    本內(nèi)容提供了51單片機(jī)串口檢測(cè)程序,詳解列出了本程序
    發(fā)表于 05-09 11:43 ?6967次閱讀

    51單片機(jī)串口通信代碼

    51單片機(jī)串口通信的代碼設(shè)計(jì)
    發(fā)表于 11-09 17:47 ?180次下載

    51單片機(jī)串口通信程序

    51單片機(jī)串口通信程序,帶有詳細(xì)例程,希望可以給你幫助。
    發(fā)表于 05-16 11:56 ?124次下載

    基于51單片機(jī)的UART串口通信

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

    如何使用51單片機(jī)實(shí)現(xiàn)串口通信

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

    如何配置minicom與51單片機(jī)進(jìn)行串口通信詳細(xì)實(shí)例說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何配置minicom與51單片機(jī)進(jìn)行串口通信詳細(xì)實(shí)例說(shuō)明。
    發(fā)表于 07-10 17:40 ?0次下載
    如何<b class='flag-5'>配置</b>minicom與<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>進(jìn)行<b class='flag-5'>串口</b>通信詳細(xì)實(shí)例說(shuō)明

    51單片機(jī)串口通訊詳解

    串口,作為單片機(jī)程序開(kāi)發(fā)中最常用、最方便,也是應(yīng)用最廣泛的程序調(diào)試方法;無(wú)論是作為調(diào)試工具,打印出調(diào)試信息,還是對(duì)功能模塊進(jìn)行通信,串口是每個(gè)單片機(jī)
    發(fā)表于 11-11 17:06 ?15次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b>通訊詳解

    51單片機(jī)串口通信

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

    51單片機(jī)串口通信

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

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

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

    單片機(jī)學(xué)習(xí)筆記————51單片機(jī)實(shí)現(xiàn)從機(jī)串口收發(fā)

    單片機(jī)學(xué)習(xí)筆記————51單片機(jī)實(shí)現(xiàn)從機(jī)串口收發(fā)
    發(fā)表于 11-23 17:06 ?42次下載
    <b class='flag-5'>單片機(jī)</b>學(xué)習(xí)筆記————<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b>實(shí)現(xiàn)從<b class='flag-5'>機(jī)</b>的<b class='flag-5'>串口</b>收發(fā)

    51單片機(jī)——串口通信

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

    51 單片機(jī)串口燒錄程序方法

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

    基于51單片機(jī)單片機(jī)串口通信仿真設(shè)計(jì)

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

    ?51單片機(jī)串口通信詳細(xì)介紹-小白必看

    51單片機(jī)串口通信是單片機(jī)與外部設(shè)備通信的重要方式,它基于串行通信的原理,以字節(jié)為單位進(jìn)行數(shù)據(jù)傳輸。在51
    的頭像 發(fā)表于 04-17 09:33 ?2154次閱讀
    ?<b class='flag-5'>51</b><b class='flag-5'>單片機(jī)</b><b class='flag-5'>串口</b>通信詳細(xì)介紹-小白必看
    利博娱乐城开户| 威尼斯人娱乐城注册送彩金| 唐朝百家乐官网的玩法技巧和规则 | 百家乐优博娱乐城| 订做百家乐官网桌子| 缅甸黄金赌场| 水果机规律| 百家乐2棋牌作弊软件| 百家乐官网娱乐平台网| 百家乐官网游戏类型| 大发888网址是多少| 免费玩百家乐的玩法技巧和规则 | 恒丰百家乐官网的玩法技巧和规则| 海立方百家乐官网客户端| 大发888 大发娱乐城| 百家乐打印机破解| 深圳百家乐官网的玩法技巧和规则 | 百家乐三宝| 免费百家乐官网统计工具| 澳门百家乐官网洗码提成查询 | 威尼斯人娱乐城演唱会| 澳门百家乐玩法与游戏规则| 帝王百家乐官网的玩法技巧和规则| 百家乐官网三号的赢法| 娱乐博彩| 二八杠生死门口诀| 百家乐网站平台| 太阳百家乐官网管理网| 百家乐官网六合彩| 博坊百家乐官网游戏| 爱赢娱乐城| 威尼斯人娱乐城平台打不开| 百家乐打鱼秘籍| 百家乐开发公司| 无锡百家乐官网的玩法技巧和规则| 澳门百家乐官网送彩金| 菠菜百家乐官网娱乐城| 芷江| 钻石国际| 娱乐城免费送体验金| 大发888娱乐城怎么玩|