找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2089|回复: 0
打印 上一主题 下一主题
收起左侧

8051波特率设计(原创)

[复制链接]
跳转到指定楼层
楼主
ID:85764 发表于 2015-7-17 00:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  在8051串行口编程的4种工作方式。方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1溢出率来决定的。所以,串行口的四种工作方式对应着三种波特率。各种方式的波特率计算公式是不同的。


1.方式0的波特率
   方式0时,波特率固定为振荡频率的十二分之一。
波特率=fosc/12
2.方式2的波特率
   方式2波特率的产生与方式0不同,即输入的时钟源不同,方式2波特率取决于PCON中SMOD位的值。当SMOD=0时,波特率为fosc的六十四分之一;若SMOD=1,则波特率为fosc的三十二分之一,即:
波特率=2SMOD* fosc/64
3.方式1和方式3的波特率
   8051串行口方式1和方式3的波特率由定时器T1的溢出率与SMOD值同时决定。
   方式1、方式3波特率=T1溢出率/n。
   当SMOD=0时,n=32;SMOD=1时,n=16。所以,可用下式确定方式1和方式3的波特率:
波特率*T1溢出率=2SMOD * T1溢出率/32
   其中,T1溢出率取决于T1的计数率(计数率=fosc/12)和T1预置的初值。若定时器T1采用模式1时,波特率公式如下:
   例如:8051单片机时钟振荡频率为12MHz,选用定时器T1工作方式2作波特率发生器,初值为FFH,波特率控制位(SMOD)=1,求波特率。
解:波特率=(2/32)*(12*106/12)*(1/(256-255))=62500波特

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表