历史上的今天
返回首页

历史上的今天

今天是:2025年03月03日(星期一)

正在发生

2020年03月03日 | 51单片机串口发送字符事例

2020-03-03 来源:eefocus

#include

#define jingzhen     11059200UL             /*使用22.1184M晶体*/     

#define botelv   9600UL             /*波特率定义为9600*/

unsigned char zifuchuan[]="您好!n";            //待显示字符。

volatile unsigned char sending;

sbit S4=P3^2;


void delay(unsigned char i)

{

    unsigned char j,k;

    for(j=i;j>0;j--)

        for(k=90;k>0;k--);

}

void init(void)                //串口初始化

{

EA=0; //暂时关闭中断

TMOD&=0x0F;  //定时器1模式控制在高4位

TMOD|=0x20;    //定时器1工作在模式2,自动重装模式

SCON=0x50;     //串口工作在模式1

TH1=256-jingzhen/(botelv*12*16);  //计算定时器重装值

TL1=256-jingzhen/(botelv*12*16);

PCON|=0x80;    //串口波特率加倍

ES=1;         //串行中断允许

TR1=1;        //启动定时器1

REN=1;        //允许接收 

EA=1;         //允许中断

}


void send(unsigned char d)          //发送一个字节的数据,形参d即为待发送数据。

{


SBUF=d; //将数据写入到串口缓冲

sending=1;     //设置发送标志

while(sending); //等待发送完毕

}


void sendc(unsigned char * pd)

{

while((*pd)!='') //发送字符串,直到遇到0才结束

{

  send(*pd); //发送一个字符

  pd++;  //移动到下一个字符

}

}


void main()

{

    init();

    while(1)

    {

        if(S4==0)

        {

            delay(20);

            if(!S4)

            {

                while(!S4);           

                sendc(zifuchuan);

            }

        }

    }

}


void uart(void) interrupt 4         //串口发送中断

{

if(RI)    //收到数据

{

  RI=0;   //清中断请求

}

else      //发送完一字节数据

{

  TI=0;

  sending=0;  //清正在发送标志

}

}


推荐阅读

史海拾趣

上海晶丰明源(BPS)公司的发展小趣事

上海晶丰明源半导体股份有限公司的创立,标志着中国在半导体领域的又一重要布局。公司自成立之初,就专注于电源管理芯片的研发与销售,凭借对技术的深入理解和市场需求的敏锐洞察,迅速在行业中崭露头角。初步发展阶段,晶丰明源通过不断优化产品设计、提升生产工艺,逐步赢得了客户的信任,并在市场上占据了一席之地。

FUJITSU(富士通)公司的发展小趣事

近年来,晶丰明源在电源管理芯片领域取得了多项技术突破。公司成功研发出多款高性能、低功耗的芯片产品,广泛应用于智能手机、平板电脑、智能家居等领域。同时,公司还积极拓展海外市场,与多家国际知名厂商建立了合作关系,产品出口至全球多个国家和地区。这些技术突破和市场拓展的成果,进一步巩固了晶丰明源在行业内的领先地位。

DART(英国达特)公司的发展小趣事

DART公司成立于英国的一个小城市,最初只有几名工程师和少量的资金。然而,他们凭借着对电子技术的热爱和对创新的不懈追求,逐渐在行业中崭露头角。公司的创始人是一位资深的电子工程师,他带领团队开发了一款具有革命性的新型传感器,这款传感器在精度和稳定性上远超当时的同类产品。这一技术突破为DART公司赢得了第一个重要的客户,也为公司的未来发展奠定了坚实的基础。

德尔创(Dersonic)公司的发展小趣事

在激烈的市场竞争中,德尔创始终保持着对技术创新的追求。公司不断加大研发投入,引进高端人才和先进设备,积极探索新的技术路线和产品应用。通过多年的积累和创新,德尔创在电子元器件领域已经拥有了一批具有自主知识产权的核心技术,并在市场上取得了显著的优势。这些技术优势不仅提升了公司的竞争力,还为公司的未来发展奠定了坚实的基础。

D+H Mechatronic AG公司的发展小趣事

在全球环保意识日益增强的背景下,D+H Mechatronic AG积极响应绿色制造的号召。公司投入大量资金和资源研发出了一系列节能环保的机械设备,这些设备在生产过程中能够显著降低能耗和排放。同时,公司还积极参与各种环保活动,倡导绿色生产理念。这些举措不仅使公司赢得了客户的信赖和支持,也为其在行业内树立了良好的环保形象。

Altitude Technology公司的发展小趣事

随着产品的不断升级和市场的不断扩大,Altitude Technology开始将目光投向海外市场。公司制定了详细的市场拓展计划,通过参加国际电子展会、建立海外销售渠道等方式,积极推广自己的产品。经过一番努力,Altitude Technology的产品逐渐在国际市场上获得了认可,公司的知名度也得到了提升。

问答坊 | AI 解惑

用FPGA技术实现模拟雷达信号

前言 FPGA(现场可编程门阵列)是由掩膜可编程门阵列和PLD(可编程逻辑器件)演变而来的,并将二者的特性结合在一起,使FPGA既有掩膜可编程门阵列的高逻辑密度和通用性,又有PLD的可编程特性。FPAG技术的发展使得单个芯片上集成的逻辑门数越来越多 ...…

查看全部问答>

关于射频卡的操作

最近想看看关于射频卡部分,我有个读卡器,可是目前还是不太清楚对卡内存储区的数据操作,能读卡的ID号!大家 可以讲一下具体的操作过程 吗,有相关的资料也可以!比如读mifare的操作! [ 本帖最后由 daicheng 于 2010-3-15 10:23 编辑 ]…

查看全部问答>

Atmaga16学习板上有自带的东西(是二级管吗)来做流水灯吗

Atmaga16学习板上有自带的东西(是二级管吗)来做流水灯吗…

查看全部问答>

能用电阻、电容等来模拟电池的充放电吗?

想用电阻、电容等来模拟充电电池、比如锂电池,不知道应该如何模拟,电阻串电容、还是电阻并电容,容值如何选择?希望得到大家的指点。…

查看全部问答>

2015电子大赛控制类题目预测

欢迎大家一起讨论一下控制类题目的预测 …

查看全部问答>

我的SD传感器数据怎么来的?

今天不经意间在手机SD卡里面看到保存的.CSV格式的传感器数据,打开一看,确认就是SensorTile开发板数据,于是今天再看了看程序。记录如下 SD保存文件如下,每个传感器一个文件 打开气压传感器,数据如下 其中时间戳值变化感觉和手机界面的曲线的 ...…

查看全部问答>

从网上找了一个51开发板PCB 感觉并不怎么样 求高手指点一下它的优点

画板子也有半年了   经常画低频的板子    基本不需要ic元件    想要进一步的学习   所以就想从51开发板画起     从网上找了一个   据说可以直接打板子    & ...…

查看全部问答>

LM334+PT100恒流测温电压输出不变

使用LM334恒流源输出2mA的电流,流过PT100,然后放大,为什么我把PT100放在热水中, 在PT100的上端测电压,电阻在变,电压一直不变是怎么回事? 电流的计算是根据数据手册,2mA=0.134V/67Ω …

查看全部问答>

从三个方面入手对付开关电源的噪音

噪音来源于PCB设计/电路振荡/磁元件三方面: 1)电路振荡,电源输出有很大的低频稳波。多是电路稳定余度不够引起。理论上可以用系统控制理论中的频域法/时域法或劳斯判据做理论分析。现在;可以用计算机仿真方法方便的验证电路稳定性,以避免 ...…

查看全部问答>