单片机实验报告串行口

合集下载

单片机汇编 串口通信实验

单片机汇编  串口通信实验

一、实验项目名称串口通信实验二、实验内容现有两台单片机应用系统。

甲机发送内存中以TR_BUF为首地址的10个数据串,乙机把接收到的数据存入以RC_BUF为首地址的内存单元中。

设甲、乙两机的振荡频率为12MHz,串行口均工作在方式1下。

要求甲机用查询方式编程,乙机用中断方式编程。

三、实验原理图(纯软件部分实验报告可不要本部分)四、编程思路及算法分析流程图:五、程序清单甲机发送内存中以TR_BUF为首地址的10个数据串.org 0000hmov r2,#10mov r1,#tr_bufmov a,#0fehlp1: mov @r1,arl ainc r1djnz r2,lp1mov TMOD,#20Hmov th1,#0fdhmov tl1,#0fdhsetb tr1mov scon,#40hmov r0,#tr_bufmov r7,#100acall dy1slp: mov sbuf,@r0jnb ti,$clr tiinc r0djnz r7,lpsjmp $dy1s: mov r6,#200m1: mov r5,#0fahdjnz r5,$djnz R6,m1retEnd乙机把接收到的数据存入以RC_BUF为首地址的内存单元中org 0000hajmp mainorg 0023hajmp s20fworg 0030hmain: mov TMOD,#20Hmov th1,#0fdhmov tl1,#0fdhsetb tr1setb essetb eamov scon,#50hmov r0,#rc_bufmov r2,#10sjmp $s20fw: clr rimov @r0,sbufinc r0djnz r2,fanmov r3,#10mov r1,#rc_buflp1: mov a,@r1mov p1,aacall dy1sinc r1djnz r3,lp1fan: retidy1s: mov r6,#200m1: mov r5,#0fahdjnz r5,$djnz R6,m1retend六、实验仿真结果要有适当的图文解释。

串行通讯实验报告

串行通讯实验报告

一、实验目的1. 理解串行通讯的基本原理及通信方式。

2. 掌握串行通讯的硬件设备和软件实现方法。

3. 学会使用串行通讯进行数据传输。

4. 通过实验,加深对单片机串行口工作原理和程序设计的理解。

二、实验原理串行通讯是指将数据一位一位地按顺序传送的通信方式。

与并行通讯相比,串行通讯的通信线路简单,成本低,适用于远距离通信。

串行通讯主要有两种通信方式:异步通信和同步通信。

1. 异步通信异步通信中,每个字符之间没有固定的时钟同步,而是通过起始位和停止位来标识字符的开始和结束。

每个字符由起始位、数据位、奇偶校验位和停止位组成。

2. 同步通信同步通信中,数据传输过程中有固定的时钟同步信号,发送方和接收方通过同步时钟来保证数据传输的准确性。

三、实验设备1. 单片机最小系统教学实验模块2. 数码管显示模块3. 串行数据线4. 电脑四、实验内容1. 单片机串行口初始化首先,我们需要对单片机串行口进行初始化,包括设置波特率、通信方式、数据位、停止位等。

2. 数据发送在单片机程序中,编写数据发送函数,将数据通过串行口发送出去。

3. 数据接收编写数据接收函数,从串行口接收数据。

4. 数据显示将接收到的数据通过数码管显示出来。

5. 双机通信通过两套单片机实验模块,实现双机通信。

一台单片机作为发送方,另一台单片机作为接收方。

五、实验步骤1. 将单片机最小系统教学实验模块和数码管显示模块连接到电脑上。

2. 编写单片机程序,初始化串行口,并设置波特率、通信方式、数据位、停止位等。

3. 编写数据发送函数,将数据通过串行口发送出去。

4. 编写数据接收函数,从串行口接收数据。

5. 编写数据显示函数,将接收到的数据通过数码管显示出来。

6. 编写双机通信程序,实现两台单片机之间的通信。

7. 将程序下载到单片机中,进行实验。

六、实验结果与分析1. 通过实验,成功实现了单片机串行口的初始化、数据发送、数据接收和数据显示。

2. 成功实现了双机通信,两台单片机之间可以相互发送和接收数据。

单片机串行通信实验报告(实验要求、原理、仿真图及例程)

单片机串行通信实验报告(实验要求、原理、仿真图及例程)

《嵌入式系统原理与实验》实验指导实验三调度器设计基础一、实验目的和要求1.熟练使用Keil C51 IDE集成开发环境,熟练使用Proteus软件。

2.掌握Keil与Proteus的联调技巧。

3.掌握串行通信在单片机系统中的使用。

4.掌握调度器设计的基础知识:函数指针。

二、实验设备1.PC机一套2.Keil C51开发系统一套3.Proteus 仿真系统一套三、实验容1.甲机通过串口控制乙机LED闪烁(1)要求a.甲单片机的K1按键可通过串口分别控制乙单片机的LED1闪烁,LED2闪烁,LED1和LED2同时闪烁,关闭所有的LED。

b.两片8051的串口都工作在模式1,甲机对乙机完成以下4项控制。

i.甲机发送“A”,控制乙机LED1闪烁。

ii.甲机发送“B”,控制乙机LED2闪烁。

iii.甲机发送“C”,控制乙机LED1,LED2闪烁。

iv.甲机发送“C”,控制乙机LED1,LED2停止闪烁。

c.甲机负责发送和停止控制命令,乙机负责接收控制命令并完成控制LED的动作。

两机的程序要分别编写。

d.两个单片机都工作在串口模式1下,程序要先进行初始化,具体步骤如下:i.设置串口模式(SCON)ii.设置定时器1的工作模式(TMOD)iii.计算定时器1的初值iv.启动定时器v.如果串口工作在中断方式,还必须设置IE和ES,并编写中断服务程序。

(2)电路原理图Figure 1 甲机通过串口控制乙机LED闪烁的原理图(3)程序设计提示a.模式1下波特率由定时器控制,波特率计算公式参考:b.可以不用使用中断方式,使用查询方式实现发送与接收,通过查询TI和RI标志位完成。

2.单片机与PC串口通讯及函数指针的使用(1)要求:a.编写用单片机求取整数平方的函数。

b.单片机把计算结果向PC机发送字符串。

c.PC机接收计算结果并显示出来。

d.可以调用Keil C51 stdio.h 中的printf来实现字符串的发送。

单片机双机串行实验报告

单片机双机串行实验报告

单片机双机串行实验报告实验报告:单片机双机串行通信实验一、实验目的本实验旨在通过单片机实现双机间的串行通信,包括数据的发送和接收,并利用这种通信方式完成一定的任务。

二、实验原理1.串行通信:串行通信是将数据一个个位发送或接收的方式。

数据通过一个线路逐位发送或接收,可以减少通信所需的线路数目。

2. UART串口通信:UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的简称,是一种最常用的串口通信方式,通常用于单片机与计算机、单片机与单片机之间的通信。

3.串口模块:串口模块是负责将数据转变为串行传输的硬件模块,包括发送端和接收端。

通过设置波特率、数据位、校验位和停止位等参数,可以实现数据的可靠传输。

4.单片机串口通信:单片机内部集成了UART串口通信接口,只需要通过相应的寄存器配置,可以实现串口通信功能。

5.双机串行通信:双机串行通信是通过串口将两台单片机进行连接,一台单片机作为发送端,负责将数据发送出去;另一台单片机作为接收端,负责接收并处理发送的数据。

三、实验器材与软件1.实验器材:两台单片机、USB转TTL模块、杜邦线若干。

2. 实验软件:Keil C51集成开发环境。

四、实验内容与步骤1.配置发送端单片机(1)连接单片机和USB转TTL模块,将USB转TTL模块的TXD端连接到单片机的P3口,将GND端连接到单片机的地线。

(2)在Keil C51环境下创建新工程,编写发送端程序。

(3)配置串口通信的波特率、数据位、校验位和停止位,并打开串口发送中断。

(4)循环发送指定的数据。

2.配置接收端单片机(1)连接单片机和USB转TTL模块,将USB转TTL模块的RXD端连接到单片机的P3口,将GND端连接到单片机的地线。

(2)在Keil C51环境下创建新工程,编写接收端程序。

(3)配置串口通信的波特率、数据位、校验位和停止位,并打开串口接收中断。

单片机键盘显示实验报告

单片机键盘显示实验报告

单片机的键盘和显示实验报告㈠实验目的1.掌握单片机I/O的工作方式;2.掌握单片机以串行口方式0工作的LED显示;3.掌握键盘和LED显示的编程方法。

㈡实验器材1.G6W仿真器一台2.MCS—51实验板一台3.PC机一台4.电源一台㈢实验内容及要求实验硬件线路图见附图从线路图可见,8051单片机的P1口作为8个按键的输入端,构成独立式键盘。

四个LED显示器通过四个串/并移位寄存器74LS164接口至8051的串行口,该串行口应工作在方式0发送状态下,RXD端送出要显示的段码数据,TXD则作为发送时钟来对显示数据进行移位操作。

编写一个计算器程序,当某一键按下时可执行相应的加、减、乘、除运算方式,在四个显示器上显示数学算式和最终计算结果。

注:①通过按键来选择加、减、乘、除四种运算方式。

②输入两个数字均为一位十进制数,可预先放在内存中。

㈣实验框图(见下页)㈤思考题1.当键盘采用中断方式时,硬件电路应怎样连接?P1.4~P1.7是键输出线,P1.0~P1.3是扫描输入线。

输入与门用于产生按键中断,其输入端与各列线相连,再通过上拉电阻接至+5 V电源,输出端接至8051的外部中断输入端。

2.74LS164移位寄存器的移位速率是多少?实验中要求计算的式子和结果之间相差一秒,移位寄存器的移位速率应该是每秒一位吧。

其实这个问题确实不知道怎么回答。

LED 显示用的段码与教科书所提供的不同,本实验采用如下段码:显示数符段码显示数符段码0BBH A DBH109H B F1H2EAH C B2H36BH D E9H459H E F2H573H F D2H否有否P1口置输入读P1口开 始显示“0000”是否有键按下?延迟消抖是否有键按下?是读键码加法运算减法运算除运算6F3H—40H70BH.04H8FBH┗┛A1H97BH┗┛1AH灭00H P DAH实验代码:ORG 0000HAJMP MAINORG 0030HMAIN:MOV 41H,#0BBH ;对几个存放地址进行初始化MOV 42H,#0BBHMOV 43H,#0BBHMOV 44H,#0BBHMOV SCON,#00H ;初始化串行口控制寄存器,设置其为方式0 LCALL DISPLAY ;初始化显示KEY:MOV R3,#08H;用来存放两个数据MOV R4,#02HMOV P1,#0FFH ;初始化P1口MOV A,P1 ;读取按键状态CPL A ;取正逻辑,高电平表示有键按下JZ KEY ;A=0时无键按下,重新扫描键盘LCALL DELAY1;消抖MOV A,P1 ;再次读取按键状态CPL AJZ KEY ;再次判别是否有键按下PUSH AKEY1:MOV A,P1CPL AANL A,#0FH ;判别按键释放JNZ KEY1 ;按键未释放,等待LCALL DELAY1;释放,延时去抖动POP AJB ACC.0,ADD1 ;K1按下转去ADD1JB ACC.1,SUB1 ;K1按下转去SUB1JB ACC.2,MUL1 ;K1按下转去MUL1JB ACC.3,DIV1 ;K1按下转去DIV1LJMP KEYADD1:LCALL BUFFER ;显示加数和被加数MOV 43H,#049HLCALL DISPLAY ;显示加号MOV A,R3ADD A,R4DA AMOV R3,A ;相加结果放入R6ANL A,#0FHMOV R4,A ;结果个位放入R7MOV A,R3SWAP A ;半字节交换,高四位放入低四位ANL A,#0FHMOV R3,A ;结果的高位放入R6LCALL L;显示缓存区设置LCALL DELAY2;延时一秒后显示LCALL DISPLAYLJMP KEYSUB1:LCALL BUFFER ;显示减数和被减数MOV 43H,#40HLCALL DISPLAY ;显示减号MOV A,R3CLR CY ;CY清零SUBB A,R4 ;做减法PUSH ARLC A ;带进位循环左移,最高位放入CYJC F ;判断最高位,若为1则跳转到负数ZHENG: POP AMOV R4,AMOV R3,#00H ;高位清零SJMP OUTFU:POP ACPL A ;取绝对值INC AMOV R4,AMOV R3,#11H ;显示负号OUT: LCALL L ;显示缓存区设置LCALL DELAY2 ;延时1s后显示LCALL DISPLAYLJMP KEYMUL1:LCALL BUFFER ;显示两位乘数MOV 43H,#99HLCALL DISPLAY ;显示乘号MOV A,R3MOV B,R4MUL AB ;结果放入AB,A中是低8位,B中是高8位MOV B,#0AHDIV AB ;十进制转换MOV R4,B ;结果个位放入R7MOV R3,A ;结果的十位放入R6LCALL LLCALL DELAY2LCALL DISPLAY ;延时1s后显示LJMP KEYDIV1:LCALL BUFFER ;显示除数和被除数MOV 43H,#62HLCALL DISPLAY ;显示除号MOV A,R3MOV B,R4DIV AB ;A除以BMOV R4,B ;余数放在R4中MOV R3,A ;商放在R3中MOV A,R4MOVC A,@A+DPTR ;调用段选号MOV 41H,A ;显示余数MOV A,R3MOVC A,@A+DPTRMOV 43H,A ;显示商MOV 42H,#00HMOV 44H,#00HLCALL DELAY2 ;延时1S后显示LCALL DISPLAYLJMP KEYBUFFER: MOV 41H,#22H ;显示初始化,在做计算之前显示两个操作数,显示等号MOV DPTR,#TABLMOV A,R4MOVC A,@A+DPTRMOV 42H,AMOV A,R3MOVC A,@A+DPTRMOV 44H,ARETDISPLAY:MOV R5,#04H;共四位需要显示MOV R0,#41HDISPLAY1:MOV A,@R0MOV SBUF,ADISPLAY2:JNB TI,DISPLAY2;是否传完了CLR TIINC R0DJNZ R5,DISPLAY1RETL:MOV A,R4MOVC A,@A+DPTRMOV 41H,A ;R4对应的段码MOV A,R3MOVC A,@A+DPTRMOV 42H,A ;R3对应的段码MOV 43H,#00HMOV 44H,#00HRETDELAY1: ;普通延时MOV R1,#20HDS1:MOV R2,#0FFHDS2:DJNZ R2,DS2DJNZ R1,DS1RETDELAY2:MOV R6,#14H ;定时1SMOV TMOD,#01HDS3:MOV TH0,#3CHMOV TL0,#0B0H ;50msSETB TR0LOOP:JNB TF0,LOOPCLR TF0CLR TR0DJNZ R6,DS3 ;1s到,中断返回RETTABL:DB 0BBH 09H 0EAH 6BH ;段码表DB 59H 73H 0F3H 0BHDB 0FBH 7BH 00H 0DBHDB 0F1H 0B2H 0E9H 0F2HDB 0D2H 40H实验结果及分析按键1:8+2= 结果:10按键2:8-2= 结果: 6按键3:8*2= 结果:16按键4:8/2= 结果:4从上面的结果可以看出,本次实验基本完成了实验要求。

实验四(一) 串并转换实验(2学时)

实验四(一)  串并转换实验(2学时)
ZW=table2[0]; //再送字位
delay(10); //延时一小段时间
ZX=0xff; //
数码管消影
ZX=table[buffer[1]]; //显示ASCII的十位
ZW=table2[1];
delay(10);
ZX=0xff;
ZX=table[buffer[2]]; //显示ASCII值的个位
num++;
if(num==10) //定时1S时间到
{Hale Waihona Puke num=0;i++;
if(i==10) i=0; //数码管反复扫描
SBUF=~Table[i]; //取反,送数码管显示数字
}
}
实验四(二) 单片机与PC机串行通信实验(2学时)
一、实验目的
⑴掌握串行口工作方式的程序设计,掌握单片机通信程序编制方法。
0x49,0x41,0x1F,0x01,0x09}; //共阳数码管字段
void main()
{ TMOD=0x01; //定时器T0方式1
TH0=(65536-50000)/256;//定时器赋初值,定时100ms,(12MHz晶振)
TL0=(65536-50000)%256;
EA=1; //总中断打开
湖北民族学院科技学院
信息工程学院
单片机原理实验报告
实验名称:单片机串口应用
专业班级
学号
姓名
指导教师
实验四(一) 串并转换实验(2学时)
一、实验目的
⑴掌握8031串行口方式0工作方式及编程方法。
⑵掌握利用串行口扩展并行I/O通道的方法。
二、实验内容
(1)在实验箱上完成:

单片机双机串行实验报告

单片机双机串行实验报告

单片机双机串行实验报告实验目的:通过单片机实现双机串行通信功能,掌握串行通信的原理、方法和程序设计技巧。

实验原理:双机串行通信是指通过串行口将两台单片机连接起来,实现数据的传输和互动。

常用的串行通信方式有同步串行通信和异步串行通信。

异步串行通信是指通过发送和接收数据时的起始位、停止位和校验位进行数据的传输。

而同步串行通信是指通过外部时钟信号进行数据的同步传输。

实验器材:1.两台单片机开发板(MCU7516)2.两个串口线3.两台计算机实验步骤:1.将两台单片机开发板连接起来,通过串口线连接它们的串行口。

2.在两台计算机上分别打开串口调试助手软件,将波特率设置为相同的数值(例如9600)。

3.在编程软件中,编写两个程序分别用于发送数据和接收数据。

4.在发送数据的程序中,首先要设置串口的波特率、数据位、停止位和校验位,并将数据存储在缓冲区中。

然后利用串口发送数据的指令将数据发送出去。

5.在接收数据的程序中,同样要设置串口的参数。

然后使用串口接收数据的指令将接收到的数据存储在缓冲区中,并将其打印出来。

实验结果与分析:经过实验,我们成功地实现了单片机之间的双机串行通信。

发送数据的单片机将数据发送出去后,接收数据的单片机能够正确地接收到数据,并将其打印出来。

实验中需要注意的是,串口的波特率、数据位、停止位和校验位必须设置为相同的数值。

否则,发送数据的单片机和接收数据的单片机无法正常进行通信。

同时,在实验之前,需要了解单片机开发板支持的串口通信相关的指令和函数。

实验总结:通过本次实验,我们深入了解了单片机之间的双机串行通信原理和方法。

掌握了串口的设置和使用方法,以及相关的指令和函数。

在实验中,我们学会了如何通过串行口实现数据的传输和互动,为今后的单片机应用和开发打下了基础。

同时,我们还发现,双机串行通信在实际应用中有着广泛的用途。

例如,可以通过串行通信实现两台计算机之间的数据传输,或者实现单片机与计算机之间的数据收发。

单片机串口应用实验报告(一)

单片机串口应用实验报告(一)

单片机串口应用实验报告(一)单片机串口应用实验报告引言•介绍单片机串口应用实验的背景和意义•提出实验的目的和重要性实验原理•串口的工作原理和基本概念•单片机与串口通信的原理和方法实验步骤1.准备实验所需材料和工具2.配置单片机与串口的连接3.编写单片机程序,完成串口通信的初始化设置4.设计并实现发送和接收数据的功能5.调试程序,验证通信是否正常实验结果与分析•描述实验过程中的观察和测量结果•对实验结果进行分析和解释实验总结•总结实验的目标、方法和结果•分析实验中可能存在的问题和改进的空间•强调实验对于学习和应用单片机串口的重要性参考资料•列出参考过的相关教材、论文或网络资源以上是关于“单片机串口应用实验报告”的相关文章,希望对您有所帮助。

抱歉,以上是一份简要的实验报告的大纲,以下是对每个部分的详细描述:引言在引言部分,可以简要介绍单片机串口应用实验的背景和意义。

可以提到单片机串口通信在电子产品中的广泛应用,以及为什么学习和掌握串口通信对于创作者和工程师来说非常重要。

实验原理在实验原理部分,可以详细介绍串口的工作原理和基本概念。

可以解释串口是如何通过串行传输数据的,以及常见的串口通信协议。

还可以介绍单片机与串口通信的原理和方法,包括如何将单片机与电脑或其他设备连接进行通信。

实验步骤在实验步骤部分,可以按照以下方式列出实验步骤: 1. 准备实验所需材料和工具:列出实验所需的单片机模块、串口模块、电脑等设备。

2. 配置单片机与串口的连接:描述如何将单片机与串口模块连接起来。

3. 编写单片机程序:详细介绍如何编写单片机程序,并完成串口通信的初始化设置,包括波特率、数据位、校验位等。

4. 设计并实现发送和接收数据的功能:介绍如何设计程序使单片机能够发送和接收数据,可以包括简单的数据收发、数据加工处理等。

5. 调试程序:描述如何进行程序调试,验证通信是否正常,可以介绍使用示波器、串口调试助手等工具。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机实验报告
实验名称:串行通信实验
*名:**
学号:*********
班级:光电一班
实验时间:2011-11-29
南京理工大学紫金学院电光系
一、实验目的
1、理解单片机串行口的工作原理;
2、学习使用单片机的TXD、RXD口;
3、了解MAX232芯片的使用。

二、实验原理
MCS-51单片机内部集成有一个UART,用于全双工方式的串行通信,可以发送、接收数据。

它有两个相互独立的接收、发送缓冲器,这两个缓冲器同名(SBUF),共用一个地址号(99H),发送缓冲器只能写入,不能读出,接收缓冲器只能读出,不能写入。

要发送的字节数据直接写入发送缓冲器,SBUF=a;当UART接收到数据后,CPU从接收缓冲器中读取数据,a=SBUF;串行接口内部有两个移位寄存器,一个用于串行发送,一个用于串行接收。

定时器T1作为波特率发生器,波特率发生器的溢出信号做接收或发送移位寄存器的移位时钟。

TI和RI分别发送完数据和接收完数据的中断标志,用来向CPU发中断请求。

三、实验内容
1、学会DPFlash软件的操作与使用,以及内部内嵌的一个串口调试软件的使用。

2、用串口连接PC机和DP-51PROC单片机综合仿真实验仪。

3、编写一个程序,利用单片机的串行口发送0x55,波特率为9600。

程序设计流程图
4、程序下载运行后,可在PC机上的串口调试软件上(内嵌在DPFlash软件的串口调
试器,设置通信口为COM1口,波特率为9600,数据位8,停止位1)看到接收到“UUUUUU……”,出现这样的结果就基本达到要求。

(1)代码:
#include<reg51.h>
void main()
{
long int i;
SCON=0x40;
PCON=0;
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TI=1;
TR1=1;
star:for(i=0;i<5000;i++);
SBUF=0x55;
goto star;
}
(2)电路图;
5、在单片机接收到0x55时返回一个0x41,在PC机一端,以接收到0x41完成,波特率2400。

程序设计流程图 (1)代码
#include<reg51.h> void main() {
SCON=0x40; REN=1; TMOD=0x20; TH1=0xf4; TL1=0xf4;
TR1=1; while(1) {
start:while(!RI); RI=0;
if(SBUF!=0x55) goto start; else SBUF=0x41;
}}
(3)电路图
XTAL2
18
XTAL1
19
ALE 30EA
31
PSEN 29RST
9
P0.0/AD0
39P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78
P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD
17
P3.6/WR 16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1
AT89C51
ERROR
TXD 3RXD 2CTS 8RTS 7DSR 6DTR 4DCD 1RI
9
P1
COMPIM
7、 单片机与单片机之间进行串口通信,实现基于方式1的单工通信,发送方以一定波特率发一串有效数据,接收方接收后送P1口通过LED 灯显示。

(1)单片机发送代码:
#include<reg51.h>
Code unsigned char temp[9]={0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f,0xff}; long int i;
void delay()
{
int i,j;
for(i=0;i<200;i++)
for(j=0;j<210;j++);
}
void main()
{
SCON=0x40;
TMOD=0x20;
TH1=0xf4;
TL1=0xf4;
TR1=1;
P1=0xff;
while(1){for(i=0;i<9;i++)
{
SBUF=temp[i];
while(!TI);
TI=0;
delay();
}
i=0;
}
}
(3)单片机接受代码
#include<reg51.h>
void main()
{
SCON=0x40;
REN=1;
TMOD=0x20;
TH1=0xf4;
TL1=0xf4;
TR1=1;
while(!RI)
{
RI=0;
P1=SBUF;}}
(4)电路图
四、小结与体会
通过上课听老师讲解,和自己的操作,理解了单片机串行口的工作原理,学会了使用单片机的TXD、RXD口、MAX232芯片的使用,学会了DPFlash下载。

更好的了解单片机的发送和接受。

相关文档
最新文档