单片机串口收发程序分享

发布者:Joyful444Life最新更新时间:2020-12-29 来源: 51hei关键字:单片机  串口  收发程序 手机看文章 扫描二维码
随时随地手机看文章


/*

,把发送的数据接收后用P1口的LED灯以二进制的形式显示

并且蜂鸣器发出提示音,再把接收的数据加1并发出。

使用STC ISP软件界面上的串口助手,选择对应的串口号,

设置波特率为9600,选择HEX模式发送和接收

*/

#include


#define uchar unsigned char

#define uint  unsigned int


sbit beep = P2^3;//蜂鸣器接口

uchar num;//发送暂存变量


void delay(uint z)

{

        uint x,y;

        for(x = z; x > 0; x--)

                for(y = 114; y > 0 ; y--);

}        

void UART_init()

{

        TMOD = 0x20;          //T1工作模式2  8位自动重装

        TH1 = 0xfd;

        TL1 = 0xfd;         //比特率9600

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

        SM0 = 0;

        SM1 = 1;                 //串口工作方式1 10位异步

        REN = 1;                //串口允许接收

        EA  = 1;                //开总中断

        ES  = 1;                //串口中断打开

}

void main()

{

        UART_init(); //串口初始化

        while(1);        

}



void UART() interrupt 4

{

        if(RI)        //检测是否接收完成

        {

                num = SBUF;          //num 取出接收缓存器的值

                P1 = SBUF;

                beep = 0;

                delay(100);

                beep = 1;//蜂鸣器发出滴提示音

                num++;//把接收的数据加1并发送

                RI = 0;

                SBUF = num;        

                while(!TI);

                TI = 0;

        }

}


关键字:单片机  串口  收发程序 引用地址:单片机串口收发程序分享

上一篇:智能交通灯控制系统单片机课程设计
下一篇:新型的单片机按键扫描程序

推荐阅读最新更新时间:2024-11-12 16:24

STM32F4开发板----串口(002)
串口 1 相关串口库函数 /* Exported macro ------------------------------------------------------------*/ /* Exported functions --------------------------------------------------------*/ /* Function used to set the USART configuration to the default reset state ***/ void USART_DeInit(USART_TypeDef* USARTx); /* Initializati
[单片机]
基于MAX232的单片机双机通信技术
   单片机 间通信的方式通常有并行通信和串行通信两种。并行通信优点是传送的速度快,缺点是占用的数据传输线多,长距离传输成本高。单片机间通信通常采用串行通信方式。本例实现在单片机甲与单片机乙之间传送数据。      通信双方约定发送方为甲机,接收方为乙机。首先甲机向乙机发送一联络数据(0xAA),乙机接收到后响应应答信号(0xDD),然后接收甲机发送的数据。如果乙机接收到的数据不正确,就向甲机发送0xFF,甲收方收到OxFF后重传数据。   在串行通信中,如果两单片机系统之间的距离很短(lm以内),可利用单片机的串口直接相连的方法实现双机通信,连接时注意一方的TXD与另一方的RXD引脚相连接。如下图所示。      如果通
[单片机]
基于MAX232的<font color='red'>单片机</font>双机通信技术
51单片机:定时器
定时器:单条指令时间(us) = 1/单片机频率*单条指令时钟周期 TH0和TL0共16位,最多只能表示65535,所以要设定一个Base值,再利用循环多计数几次 比如0.002s:0.02 = (1/11.0592M * 12)*指令个数,指令个数 = 0.02(1/11.0592M * 12) = 0.018432 因为频率用的是M,所以结果0.018432*1000000 = 18432 使用16位寄存器的情况下,TH0和TL初始值:65536 - 18432 = 47104 = 0xB8 00 编写定时器延时函数: #include sbit LED = P0^0; void Delay(un
[单片机]
51单片机两路温度控制器设计方案
  本文提出了基于51单片机两路温度控制器的设计方案,该设计方案采用两个DS18B20温度传感器,采集两个不同地方的温度,通过AT89C51处理进行,由四位LED数码管显示所测量温度,前两位为第一个温度传感器的温度,后两位为第二个温度传感器的温度。采用3个按键实现温度最高和最低的设定,采用蜂鸣器和电动机实现温度过高或过低报警。   1.引言   目前,温度控制器存在的问题是如何缩减成本,减少功耗,温度测量的准确性和多路温度的同时显示。本方案设计的实现基于C51单片机的两路温度控制器,做到成本最低化,精确度高,两路温度的显示和控制,能在温度超出设定的最高温度时启动电风扇进行降温,在温度低于设定的最低温度时启动蜂鸣器报警,能够用户设定
[单片机]
51<font color='red'>单片机</font>两路温度控制器设计方案
单片机成长之路(51基础篇) - 015 关于sdcc的多文件编译范例
本文是续 单片机成长之路(51基础篇) - 009 关于sdcc的多文件编译范例(一)编写的。 在实际的工作中,单片机的头文件和功能函数不可能同全部放在同一个文件夹下面,我们把单片机成长之路(51基础篇) - 009 关于sdcc的多文件编译范例的代码进行重新拆分,然后把头文件归类到一个文件夹(include/)下面,便于管理。 拆分前文件目录结构: ├── delay.c ├── delay.h ├── main.c └── makefile 拆分侯生成以下文件: ├── include      //头文件文件夹 │ ├── delay.c    //延时文件的头文件 │ ├── delay.h │ ├─
[单片机]
PIC单片机CCP模块
CCP是Capture(捕捉)、Compare(比较)、PWM(脉宽调制)缩写。
[单片机]
PIC<font color='red'>单片机</font>CCP模块
单片机二进制编码对照
二进制编码 在计飞鹤营养好算机中,是采用二进制飞鹤乳业数。因而,要在计算机飞鹤奶粉中表示的数、字母、符黑龙江飞鹤乳业制码来表示,这就是二飞鹤吸收好码来表示,这就是二进制编码。一、二进制编码的十进制数: BCD 码( Binary-Coded Decimal ) 字母与字符的编码 字母和各种字符( $ 、 # )也必须按特    二进制编码 在计算机中,是采用二进制数。因而,要在计算机中表示的数、字母、符号等都要以特定的二进制码来表示,这就是二进制编码。 一、二进制编码的十进制数:BCD码(Binary-Coded Decimal) 字母与字符的编码 字母和各种字符($、# )也必须按特定的规则用二进制编码才能在机中表示。普通的是采用
[单片机]
单片机 实时时钟电路(AT89C51、LCD1602、PCF8563)
一、简介 此电路主要有51单片机、LCD1602模块、PCF8563芯片和按键组成组成,通过LCD1062显示当前时间,按键可设置时间。 二、运行效果 三、部分代码 /*想要更多项目私wo!!!*/ #include reg52.h #include intrins.h #define uchar unsigned char #define uint unsigned int void init() { uchar num; lcden=0; write_com(0x38); //0011 1000B,功能模式设置,设置为8为数据口,两行显示,5*7点阵 write_com(0x0c);
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved