51单片机复位后,SBUF寄存器的初始值是多少,为什么我用串口通信的方式控制LED灯时,一上电,8个灯全亮。请问可以给SBUF赋初值吗,如SBUF=0xff正确吗?

最佳答案

  • chen0000009 发表于2017-07-20

    1、SBUF初始化之后的值未定,可以向其赋值,应为一个八位的二进制数

    这个寄存器里面储存的为串口需要发送的值,如果你将一个八位二进制数赋给了它,那么串口就会发送这串数据。

    因此这个值在初始化之后是未定的

    可以这样赋值。

    2、一上电八个灯全亮原因有很多,有可能你的灯本来就是阳极接电源,阴极接单片机IO,所以这个问题最好结合程序、电路图分析


    举报 评论 0

其他答案

  • 靳飞 发表于 2017-07-20 云汉达人

    应该是不确定值吧。
    全亮是由于你的GPIO没有设置成LED灭的电平状态。
    你一上电配置了GPIO后,将GPIO设置成统一的LED灭的电平。


    举报 评论 0

  • IMXin 发表于 2017-07-20

    51单片机正常复位或重新上电后会自动清零,不知道你是的电路时如何连接的,8个等都亮与管脚复位后的状态有关,和SBUF关系不大

    举报 评论 0

  • 王奕 发表于 2017-07-20 云汉达人

    SBUF是特殊功能寄存器,不是ram。 
    单片机复位时,SBUF被清零,这是书上说的,但是没有试验过。 

    举报 评论 0

  • Angel Cherry 发表于 2017-07-20 云汉达人

    參考datasheet說明,是未定義

    569.PNG

    以上

    举报 评论 0

  • 陈龙 发表于 2017-07-20 云汉达人 邀请回答

    SBUF寄存器的初始值是不定的

    举报 评论 0

  • @曲终人散@ 发表于 2017-10-28

    去官网下载个手册看看就晓得了

    举报 评论 0

我来回答

试用推荐

TL665x-EasyEVM

产品总数:3个  申请人数:16

距离结束时间:

推荐达人 更多>

  • 王奕 向ta提问

    Eagleson

    在学习FPGA的道路上 我们一起成长吧!

    在行: FPGA/CPLD

  • 靳飞 向ta提问

    汉云

    在路上的Linuxer

    在行: DSP技术 Linux 系统 STM32讨论区 PIC单片机 PCB技术/设计/定制

  • Angel Cherry 向ta提问

    MOP

    用愛和熱忱寫好每一行Code

    在行: FPGA/CPLD Linux 系统 热门单片机

  • 徐珂靖 向ta提问

    xukejing

    Linux系统 、热门开发板

    在行: Linux 系统

  • 袁建明 向ta提问

    河北博联科技有限公司 研发部经理

    日知其所亡

    在行: Linux 系统 灵动微MCU 电源技术

完成答题
赶快去开启您的宝箱吧
问答积分兑换板卡