51串口网上参考程序

发布者:平安守护最新更新时间:2016-01-18 来源: eefocus关键字:51串口  参考程序 手机看文章 扫描二维码
随时随地手机看文章
学了几天,接收也没调通。原搬了网上程序,还是终于通了。贴人原程序吧!

 

 

 

 #include

 sbit WINT1=P3^3;        // 外部中断,接S4按键

 

 

void init() {

PCON=0x00;            //波特率不加倍

TMOD=0x20;            //定时器1用作波特率发生器(具有自动重装载初值的功能)

 SCON=0x50;            //8为异步收发,波特率可变(由定时器控制)选择串口方式1,接收允许

TH1=0x0fd;

TL1=0x0fd;            //设置波特率为9600bps,晶振11.0592MHz

RI=0;           //清标志位

 TI=0;

TR1=1;              //开启计数T1

ES=1;      //开串口中断

IT1=1;      //设置为跳变触发方式

EX1=1;      //开外部中断1

EA=1;      //开总中断       

}

 

 

void main(){

init();

while(1);             //延时等待中断

}

 

 

void uart_interrupt (void) interrupt 4{

char date;

ES=0;              //关闭串口中断

if(TI) {           //判断是发送中断

TI=0;          //清除发送中断标志

}

else {

date=SBUF;     //数据缓存到date中

RI=0;   //清除接收中断标志

date++;   //数据处理

SBUF=date;   //返回数据

}

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

}

 

 

void int1_interrupt(void) interrupt 2 {

while(!WINT1);      //按键松手检测

SBUF=0X41;          //发送字符数据A

}


关键字:51串口  参考程序 引用地址:51串口网上参考程序

上一篇:51学习之串口收发
下一篇:51学习之串口发送

推荐阅读最新更新时间:2024-03-16 14:44

基于AT89C2051串口的LED数码管显示电路
   AT89C2051 单片机内有一个串行I/O端口,通过引脚RXD 和TXD 可与外部电路进行全双工的串行异步通信,发送数据时由TXD端送出,接收时数据由RXD端输入。串口有四种工作方式,通过编程设置,可以使其工作在任一方式以满足不同的场合。其中,方式0是8位移位寄存器输入/输出方式,多用与外接移位寄存器以扩展I/O端口。串口的工作方式可以参看相关的书籍,此处不做详细介绍。方式 0的输出是8位串行数据,通过移位寄存器可将8位串行数据变成8位并行数据输出,也可以将外部的8位并行数据变成8位串行数据输入。因此外接一个移位寄存器就可扩展一个8位的并行输入/输出接口,如果想多扩展几个并口就需要在外部级连几个移位寄存器。但是这种扩展
[单片机]
基于AT89C20<font color='red'>51</font><font color='red'>串口</font>的LED数码管显示电路
51单片机普通定时器时钟参考程序
/* 1、按键可以调整当时时间 2、按键可以调节定时时间 *8位数码管显示 时间格式格式 12-08-00 标示12点08分00秒 S1 用于小时 加1操作 S2 用于小时减1操作 S3 用于分钟 加1操作 S4 用于分钟减1操作 */ #include reg52.h //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 sbit KEY1=P3^0; //定义端口参数 sbit KEY2=P3^1; sbit KEY3=P3^2; sbit KEY4=P3^3; co de unsigned char tab ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07
[单片机]
51单片机串口通讯设计
通信协议: 第1字节,MSB为1,为第1字节标志,第2字节,MSB为0,为非第一字节标志,其余类推……,最后一个字节为前几个字节后7位的异或校验和。 测试方法:可以将串口调试助手的发送框写上 95 10 20 25,并选上16进制发送,接收框选上16进制显示,如果每发送一次就接收到95 10 20 25,说明测试成功。 //这是一个单片机C51串口接收(中断)和发送例程,可以用来测试51单片机的中断接收 //和查询发送,另外我觉得发送没有必要用中断,因为程序的开销是一样的 #include reg51.h #include string.h #define INBUF_LEN 4 //数据长度 unsign
[单片机]
51单片机」RS232串口通信代码分析
想来想去不知道要怎么样把232串口通信说清楚,想想还是直接把代码分析一遍吧... 重点是“常用波特率与定时器1的参数关系”这张表格!波特率的设置很重要! 一、串口初始化 void usart_init() { SCON = 0x50; //REN=1允许串行接受状态,串口工作模式1 TMOD = 0x20; //定时器工作方式2 PCON = 0x00; TH1 = 0xFD; //波特率9600、数据位8、停止位1。效验位无 (11.0592M) TL1 = 0x
[单片机]
「<font color='red'>51</font>单片机」RS232<font color='red'>串口</font>通信代码分析
STC51单片机串口发送程序
#include reg52.h #define uchar unsigned char unsigned char rtemp,sflag; unsigned char code Buffer = Welcome To The MCU World. ;//所要发送的数据 unsigned char *p; unsigned char TestBuff ; unsigned char mode=0; unsigned char ArrayIndex=0; void SerialInit() //11.0592M晶振,波特率19200 { TMOD=0x20; //设置定时器1工作方式为方式2 TH1
[单片机]
51单片机串口中断功能的设置
51单片机的串口功能就是和外界进行通讯,所谓的“外界”也就是与单片机进行交互的媒介,最常用的就是我们经常使用的计算机、平板或者其他设备(比如另一个单片机配合显示模块使用)。 既然和外界需要“交互”,就必须使用“中断”功能,所以一般串口和中断是配合使用的。 在总结串口使用方法之前需要对一些基本概念进行理解 第一. 关于波特率(baud rate)的解释,网上有很多文章,以我个人的肤浅理解觉得说得是这样一回事儿: 西方某大国正在经历总统换届选举,选来选去没有选出个像样的,公民们有意见,非要到国会进行“抗议(0元购)”,一下子来了7680口,有的人还拿着枪,有长的有短的,还有扛炮的!眼看着要乱,警察和抗议者达成协议,进来
[单片机]
<font color='red'>51</font>单片机<font color='red'>串口</font>中断功能的设置
51系列单片机之串口通信
单片机的串口通信看起来是很复杂的,主要是因为他用到了更多的寄存器,与前面的知识相比他更具综合能力,写起来考虑的问题自然也变多了.而前面学习过的定时器与中断将是单片机通信的基础. 单片机的中断系统中第4个中断就是串口中断,要进行串口通信首先就要打开CPU总中断EA,还要打开串口通信中断ES,这是串口通信的前堤,而串口通信也跟计时器一样有很多的模式,因此我们还要设置SCON寄存器来指定采用哪一种方式进行通信,而在通信的过程中,我们还要设定通信的波特率,不然的话,单片机是没办法进行采样的,这样也不会得到正确的结果了.我在实验过程中用到的是1号定时器来设定的波特率,用到了计时器方式2,也就是8位自动重装,这样可以简化编程,她的实现思想
[单片机]
<font color='red'>51</font>系列单片机之<font color='red'>串口</font>通信
这是一个单片机C51串口接收中断和发送例程
//这是一个单片机C51串口接收(中断)和发送例程,可以用来测试51单片机的中断接收 //和查询发送,另外我觉得发送没有必要用中断,因为程序的开销是一样的 #include reg51.h #include string.h #define INBUF_LEN 4 //数据长度 unsigned char inbuf1 ; unsigned char checksum,count3; bit read_flag=0; void init_serialcomm(void) { SCON = 0x50; //SCON: serail mode 1, 8-bit UART, enable ucvr
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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