串口通信实验

时间:2024.5.14

《串口通信实验》实验报告

学号:201212235027 姓名: 曹勇发 第 4 次

串口通信实验

串口通信实验

串口通信实验

串口通信实验

串口通信实验


第二篇:实验8 串口通信实验


实验八 串口通信实验

一、实验目的

1.  理解串行通信的基本概念和51系列单片机的串行通信接口结构。

2.         熟悉串口的4种工作方式、通信连线和应用编程。

二、实验内容

1.  使用串口实现单片机1与单片机2的数据通信,实现互相控制。要求按下单片机1系统板上的S3—S4键,单片机2系统板上LED4—LED5分别点亮。按下单片机2系统板上的S3—S4键,单片机1系统板上LED4—LED5也分别点亮。

2.         使用串口实现单片机与PC机的数据通信。要求按下单片机系统板上中断INT0时,单片机向PC机发送0-9这十个数字,并用“串口调试助手”接收显示。在“串口调试助手”上发送0-9中任何一个数字时,单片机用8个发光二极管显示对应的ASCII码值。

三、实验环境

l  软件资源:编程软件keil,程序烧写软件STC_ISP_V3.1,串口调试工具。

l  硬件资源:两块mini80E开发板,板上资源用到发光二极管LED3,小按键S3,插针J11。

      带串口的PC机一台以及串口下载线一根(如果PC机没有串口,请用USB转串口下载线)。

四、实验原理

MAX232芯片用于电平转换,实现RS232电平与TTL电平(单片机)的互相转换。本次实验单片机之间通信不使用握手信号,只需3根信号线:TXD(发送线),RXD(接收线),GND(地线)。单片机之间通信的原理图如图1所示,当单片机1(主机) 查询外接控制开关S3按下时,单片机1发送一个自定义信号给单片机2(从机),单片机2收到信号后点亮指示灯LED4。

图1 单片机之间通信的原理图

单片机与PC机之间通信原理图如图2所示。S3键接P3.2,作为外部中断INT0输入端,当S3按下,产生中断,执行中断程序发送0-9这十个数字,在PC机上用“串口调试助手”接收并显示。

图2 单片机与PC机之间通信

五、实验步骤

1.  进行单片机1与单片机2的通信实验。

硬件连接:将J11的左边两个引脚针(1和2)用跳冒连接,用三根导线分别连接两个串口的RX、TX、GND。

编写软件:首先设置单片机1和单片机2的TMOD寄存器,使定时器T1为工作方式2,作为波特率时钟。设定波特率为1200,根据公式计算出定时器1的定时初值并启动T1。设置SCON寄存器,使串口工作在方式1(波特率可变10位异步通信方式)。单片机1串口负责发送数据,程序中查询P3.2-- P3.3的电平,其中有一个为低电平表示S3—S4有一个按下,串口发送自定义信号。单片机2串口负责接收数据,收到信号并点亮相对应的灯LED4—LED5。当单片机2这边S3—S4有键按下时,单片机板1上也点亮相对应的灯LED4—LED5。

2.  进行单片机与PC机的通信实验。

硬件连接:将J11左边两个引脚针(1和2)用跳冒连接,用串口下载线将PC机与单片机连接。

编写软件:单片机1串口负责发送0-9十个数据,按照上个实验的设置来配置串口的工作方式。设置中断寄存器IE、IP和TCON,打开中断,当S3按下时出发中断开始发送数据。“串口调试助手”是在电脑上运行的程序,它可以接收并显示电脑串口上的数据,设置如图3所示。

图3 串口调试助手界面

六、实验程序(选用12M晶振)

实验A、单片机1与单片机2的通信实验:

ORG 0000H

AJMP MAIN

ORG 0023H

AJMP INTRT

ORG 0030H

MAIN:MOV TMOD,#20H           ;设置定时器1的工作方式

     MOV TH1,#0E6H              ;设置波特率1200

     MOV TL1,#0E6H

     SETB TR1               ;启动定时器1

     MOV SCON,#50H          ;设置串口工作方式

     CLR RI                 ;清除标志位

     CLR TI                 ;清除标志位

        SETB ES                ;开串口中断

     SETB EA                ;开总中断

LOOP:JNB P3.2,S3OK          ;检测按键是否按下

     JNB P3.3,S4OK

        AJMP LOOP

S3OK:MOV A,#0FBH              ;点亮LED4

     MOV SBUF,A

        JNB TI,$               ;等待发送完

        SJMP LOOP2

S4OK:MOV A,#0F7H              ;点亮LED5

     MOV SBUF,A

        JNB TI,$               ;等待发送完  

LOOP2:ACALL DELAY

        AJMP LOOP

INTRT:PUSH ACC

      JNB TI,NEXT     

         CLR TI

         AJMP OUT

NEXT: CLR RI                        ;清标志     

         MOV A,SBUF                  ;读取接收的数据

         MOV P1,A                      ;送P1口

OUT:  POP ACC

         RETI

DELAY:MOV R3,#60     ;   延时0.6秒

D1:   MOV R4,#20

D2:   MOV R5,#248

      DJNZ R5,$

      DJNZ R4,D2

      DJNZ R3,D1

      RET

END

实验B、单片机与PC机的通信实验:

ORG 0000H

AJMP MAIN

ORG 0003H

AJMP IN0

ORG 0030H

MAIN:  MOV TMOD,#20H         ;设置定时器1的工作方式

MOV TH1,#0E6H           ;设置波特率1200

MOV TL1,#0E6H

SETB TR1               ;启动定时器1

MOV SCON,#50H          ;设置串口工作方式

CLR TI                 ;清除标志位

SETB EX0               ;开外部中断

SETB EA                ;开总中断

SETB IT0

GO_ON: CLR RI

JNB RI,$

MOV A,SBUF

CPL A

MOV P1,A

SJMP GO_ON                 ;等待

IN0:  PUSH ACC

      CLR EX0           ;关外部中断     

      JB P3.2, OUT      

         CALL DELAY_10     ;延时10ms去抖动

         JNB P3.2,$

         CALL DELAY_10     ;延时10ms去抖动

         JNB P3.2,$

      MOV R0,#30H

LOOP:MOV A,R0          ;向PC机发送P2口采集到的信号

      MOV SBUF,A            

      JNB TI,$          ;等待发送完

      CLR TI            ;清除标志位

      INC R0

      CJNE R0,#3AH,LOOP

OUT: SETB EX0           ;开外部中断

      POP ACC

RETI

DELAY_10: MOV R7,#20

D4: MOV  R6,#250

         DJNZ  R6,$

         DJNZ  R7,D4

         RET

END

七、实验结果记录

1.请记录实验A的实验现象。

2.在实验A中,若要求按下S3键时LED6点亮,应该如何修改程序?

3. 在实验B中,如果要在“串口调试助手”上显示A,B,C,D,E,F,G,H,I,J这10个字母,程序应该如何修改?

4.请画出实验A和实验B的程序流程图。

更多相关推荐:
串口通信实验报告

基于Labview的串行通信接口实验报告一实验目的通过软件Labview编写前面板和程序框图通过该面板实现计算机与外围设备的串口通信设置好通信端口波特率等参数后在输入控件中输入数据字符当点击发送按钮时下位机发生...

单片机串口通讯实验报告

实验十单片机串行口与PC机通讯实验报告实验目的1掌握串行口工作方式的程序设计掌握单片机通讯的编制2了解实现串行通讯的硬环境数据格式的协议数据交换的协议3了解PC机通讯的基本要求实验器材1G6W仿真器2MCS51...

基于VC++ 6.0的串口通信实验报告

网络与通信实验报告网络与通信实验报告题目串口通行实验班级0309103学号030910338姓名田静指导老师付大丰日期20xx1021网络与通信实验报告一实验要求把两台计算机的串口通过串口线连在一起通过串口实现...

串口通信实验报告

基于Labwindows/CVI的串行通信接口实验报告一、实验目的通过软件Labwindows/CVI编写仪器面板,通过该面板实现计算机与外围设备的串口通信。设置好通信端口,波特率等参数后,在TextBox控件…

rs232串口通信实验报告

计算机网络实验实现RS232串口通信程序及MODBUS协议的编程一实验目的1熟悉并掌握RS232串口标准及原理2实现PC机通过RS232串口进行数据的收发3掌握MODBUS协议4掌握MODBUS协议编程的编写二...

嵌入式ARM串口实验报告

实验五串口通信实验1实验目的1掌握ARM的串行口工作原理2编程实现ARM的UART通讯3掌握S3C2410寄存器配置方法2实验设备1S3C2410嵌入式开发板JTAG仿真器2软件PC机操作系统WindowsXP...

串口通信实验报告

华南农业大学实验报告目录1实验任务和目的12实验准备13实验步骤14实验分析与总结11分析12总结31实验任务和目的了解串行通信的背景知识后通过三线制制作一条串口通信线PCPC并编程实现两台PC间通过RS232...

串行通信实验,南京理工大学紫金学院单片机实验报告

单片机实验报告实验名称姓名学号班级时间串行通信实验通信20xx11南京理工大学紫金学院电光系一实验目的1理解单片机串行口的工作原理2学习使用单片机的TXDRXD口3了解MAX232芯片的作用二实验原理MCS51...

串口通信电平转换实验报告

课程实验报告一实验名称串口232电平转换电路设计与软件实现课程名称现场总线技术一实验目的及要求实现两台电脑的RS232通过RS485接口协议的通信1熟悉串口结构及参数指标2熟悉芯片的内部结构工作机制3完成电路原...

RS232串口通信控制器实验报告

摘要本实验报告为RS232串口通信控制器实验设计了基于VHDL描述的RS232串口通信控制器通过串口调试工具实现PC和CPLD互发和接收数据完成的功能包括实现收发一帧10个bit波特率为9600的串口通信控制器...

串口通信实验

单片机原理及应用实验报告实验序号7实验项目名称串口通信

单片机课程设计实验---单片机间串行通信

单片机原理及应用课程设计报告课程设计题目单片机间串行通信原理专业班级20xx级电子信息科学与技术学生姓名罗滨志学号120xx20xx051成绩20xx年12月27日目录摘要11设计任务111功能要求212总体方...

串口通信实验报告(34篇)