首页 > 更多文库 > 1号文库 > 详情页

单片机,双机通信实验报告(合集)

2022-11-26 21:46:15

千文网小编为你整理了多篇相关的《单片机,双机通信实验报告(合集)》,但愿对你工作学习有帮助,当然你在千文网还可以找到更多《单片机,双机通信实验报告(合集)》。

第一篇:单片机实验

实验三 单片机I/O口控制程序实验

一、实验目的和要求:

掌握单片机串行传输输入输出的应用方法。

二、实验设备:

安装了THGY51的计算机,单片机实验箱。

三、实验内容和步骤:

1、编辑一个程序,实现以下功能:

A程序(编程下载到A实验箱):

初始化为打开外部0中断,同时设置串口为方式1,波特率为1200bps(用T1溢出率来实现),同时禁止串行中断,用单脉冲信号连接到INT0(P3.2)上,当按下单脉冲按钮时,引发外部0中断,A实验箱从串口用查询方式发送01H到B实验箱,按一次发一次,内容从01H开始加1发送。(如: 第一次按,发01H,第二次按,发02H……)

B程序(编程下载到B实验箱):

初始化为允许串行接收中断,波特率与A实验箱相同。当接收到A实验箱发送来的数据后(使用查询方式或中断方式皆可),将其从P1口输出,P1连接到LED灯上显示。

2、在A实验箱上,将P3。2接到单脉冲发生器上,在 B实验箱上将P1口接到LED上。用两个实验箱A和 B,它们的RXD、TXD交叉连接,GND(地线)相连。

3、打开实验箱调试程序(图标为THGY51字样,与上学期8088实验图标类似),在里面输入调试成功的程序,下载程序到实验箱,运行程序,按单脉冲发生器3次,观察LED灯。

四、实验报告要求:

1、写出:确定串口工作于方式1,波特率为1200bps时,T1采用的工作方式;计算定时计数初值的过程及结果。(系统晶振为11.0592MHz)

2、记录调试通过的实验程序源文件。

3、总结叙述一下单片机串行工作时,应该怎么设置?

4、考虑如果让A也具有B的功能,B也具有A的功能,(即双方都可以发数,让对方显示)该怎么做?

第二篇:单片机实验

实验一清0、移数

将片内20H~2FH及片外0010H~001FH单元清0;

然后将片内30H~3FH的数据移到片外0000H~000FH中;判断:

若(30H)≤10,则求其平方存到31H中,并将位00H置1(其它位清0)若(30H)=10,则将AA存到31H中,并位01H置1(其它位清0)若(30H)≥10,则减10存到31H中,并位02H置1(其它位清0)

实验二加法、排序

有两个长度为10的无符号数分别放在片内20H和30H为首的存储单元中(低位),求其对应项之和(带进位位),结果放在40H为首的单元中(若最高位有进位则存在后续单元中),然后按升序排列放在50H为首的单元中

实验三查表、散转

设有一表格,表中数为:00H、11H、22H、33H、44H、55H、66H、77H、88H、99H、AAH、BBH、CCH、DDH、EEH、FFH。根据片外0001H单元的低4位的数,取出表中相应的值存到片内30H中;根据片外0001H单元的高4位的数,将片内RAM区中可位寻址的相应的位置1(从位00H~位0FH,只可有一个位地址为1)

实验四外中断

P1.0~P1.7接8个发光二极管,管脚INT0、INT1接两个按键,分别定义为“L”和“R”。

要求:上电全灭,按 “L”(或R)键,最右(左)侧灯亮,每按一次“L” ”(或R)键,则亮的灯向左(右)移一位,当移到最左(右)端时,灯全灭

实验五定时器

P1.0、P1.1分别接两个发光二极管,INT0脚接

一按键做开关,按一次开关,则启动,两个发

光管一亮一灭,亮灭时间均为1秒;再按一次

开关,则关闭,即两个发光管都灭。

实验六定时器、计数器

P3.2口输出周期为2S的方波,T1口为脉冲输入端,记录输入的脉冲个数,脉冲个数由P1口所接的8个数码管显示(二进制),设一按键作为开关控制系统运行,关闭时数码管全灭,P3.2无输出。

第三篇:单片机实验三双机通信实验程序

实验三 双机通信实验

一、实验目的

UART 串行通信接口技术应用

二、实验实现的功能

用两片核心板之间实现串行通信,将按键信息互发到对方数码管显示。

三、系统硬件设计

实验所需硬件:电脑一台;

开发板一块;

串口通信线一根; USB线一根;

四、系统软件设计

实验所需软件:编译软件:keil uvision3;

程序下载软件:STC_ISP_V480; 试验程序:

#include sbit W1=P0^0;sbit W2=P0^1;sbit W3=P0^2;sbit W4=P0^3;sbit D9=P3^2;sbit D10=P3^3;sbit D11=P3^4;sbit D12=P3^5;sbit DP=P1^7;code unsigned char table[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71};sfr P1M1=0x91;sfr P1M0=0x92;sbit H1=P3^6;sbit H2=P3^7;sbit L1=P0^5;sbit L2=P0^6;sbit L3=P0^7;unsigned char dat;unsigned char keynum;unsigned char keyscan();void display();void delay(void);

L1=1;L2=1;L3=1;

H1=0;if(L1==0)

return 1;else if(L2==0)

return 2;else if(L3==0)

return 3;

H1=1;H2=0;if(L1==0)

return 4;else if(L2==0)

return 5;else if(L3==0)

return 6;H2=1;return 0;

} unsigned char keyscan(){ static unsigned int ct=0;static unsigned char lastkey=0;unsigned char key;key=getkey();

if(key==lastkey){

ct++;

if(ct==900)

{

ct=0;

lastkey=0;

return key;

} } else {

第四篇:单片机,双机通信实验报告

洛阳理工学院实验报告

系别 计算机系 班级 B140504 学号 B14050414 姓名 史锦峰 课程名称 单片机原理及组成 实验日期 2016.04.28 实验名称 双机通信及 PCB 设计过程 成绩

实验目的:掌握串行口通信工作原理,熟悉单片机电路的 PCB 设计过程 实验条件:计算机、Keil uVision4、ISIS 7 Professional、实验箱 实验内容:

1.掌握串行通信原理和中断法通信软件编程; 2.完成实验的 C51 语言编程;

3.学习使用 ARES 软件,完成实验 61#机电路;

实验电路图

仿真运行效果

图一:

图二:

源程序:

#include #define uchar unsigned char void delay(unsigned int time){

unsigned int j=0;

for(;time>0;time--)

for(j=0;j

}

void main(void){

uchar counter=0;

P2=0x3f;

TMOD=0x20;

TH1=TL1=0xf4;

PCON=0;

SCON=0x50;

TR1=1;

while(1){

SBUF=counter;

while(TI==0);

TI=0;

while(RI==0);

RI=0;

if(SBUF==counter){

P2=counter;

if(++counter>15)counter=0;

delay(500);

}

} }

#include #define uchar unsigned char void main(void){ uchar receiv;P2=0x3f;TMOD=0x20;TH1=TL1=0xf4;PCON=0;SCON=0x50;TR1=1;while(1){

while(RI==1){

RI=0;

receiv=SBUF;

SBUF= receiv;

while(TI==0)

TI=0;

P2=receiv;

}

}

}

实验总结:一直不能正确显示同步的信号,询问老师后才知道是实验箱烧写程序时用了两台电脑,但是进行通讯时不在一台机子上。这是一个很重要的店。

第五篇:单片机实验三双机通信实验程序

实验三 双机通信实验

一、实验目的

UART 串行通信接口技术应用

二、实验实现的功能

用两片核心板之间实现串行通信,将按键信息互发到对方数码管显示。

三、系统硬件设计

实验所需硬件:电脑一台;

开发板一块;

串口通信线一根; USB线一根;

四、系统软件设计

实验所需软件:编译软件:keil uvision3;

程序下载软件:STC_ISP_V480; 试验程序:

#include sbit W1=P0^0;sbit W2=P0^1;sbit W3=P0^2;sbit W4=P0^3;sbit D9=P3^2;sbit D10=P3^3;sbit D11=P3^4;sbit D12=P3^5;sbit DP=P1^7;code unsigned char table[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71};sfr P1M1=0x91;sfr P1M0=0x92;sbit H1=P3^6;sbit H2=P3^7;sbit L1=P0^5;sbit L2=P0^6;sbit L3=P0^7;unsigned char dat;unsigned char keynum;unsigned char keyscan();void display();void delay(void);

L1=1;L2=1;L3=1;

H1=0;if(L1==0)

return 1;else if(L2==0)

return 2;else if(L3==0)

return 3;

H1=1;H2=0;if(L1==0)

return 4;else if(L2==0)

return 5;else if(L3==0)

return 6;H2=1;return 0;

} unsigned char keyscan(){ static unsigned int ct=0;static unsigned char lastkey=0;unsigned char key;key=getkey();

if(key==lastkey){

ct++;

if(ct==900)

{

ct=0;

lastkey=0;

return key;

} } else {

推荐专题: 单片机实习报告 单片机 双机通信实验报告

相关推荐
本站文档由会员上传,版权归作者所有,如有侵权请发送邮件至89702570@qq.com联系本站删除。
Copyright © 2010 - 千文网移动版
冀ICP备2020027182号