基于单片机的双机通信实训报告

基于单片机的双机通信实训报告
基于单片机的双机通信实训报告

一. 设计方案

根据题目分析可知硬件电分为主机模块和从机模块。主机模块中包含单片机子模块、lcd1602显示子模块和矩阵键盘模块,从机模块则包括单片机子模块、LED 显示模块。在主模块中由AT89C51单片机担任主机,LCD1602担任显示设备和由4位独立按键做矩阵键盘。在整个系统中有一个从机模块,有一片AT89C51单片机担任从机模块的控制模块,串口采用单工及异步通信方式。整个硬件结构原下图所示。

二.硬件分析 (1)控制模块

控制模块采用AT89C51作为主控芯片,11.0592MHZ 的晶振频率作为时

钟震荡电路。基本电路图如下所示。

矩阵键盘

显示模块

制模块

AT89C51

控制模块

AT89C51

LED 显示

主机 从机

仿真图

由于在protues里面,单片机内部默认自带晶振,所以不需要再连接振荡电路。

控制模块原理图

(2)显示模块

采用LCD1602作为显示模块,LCD1602用来显示当前从机LED的状态。仿真图如下所示:

仿真图

在画原理图时,由于没有LCD1602的封装。所以,本人直接用16跟引脚的排针代替。然后在给相应的引脚表上网络位口。但是再画PCB,必须控制好原件之间的距离,以免导致制版时,元件位置冲突。原理图如下所示:

原理图

(3)矩阵键盘模块

矩阵键盘用来给单片机输入一个电平值,然后再通过主机CPU发送给从机,最后从机CPU接收,并通过LED显示出结果。当按键按下,相当于给主机CPU 送入一个低电平,主机再把这个电平值发送给从机。因为LED是采用共阳连接的方式,所以可以点亮LED。

矩阵键盘仿真图,以及原理图如下所示:

仿真图

原理图

(4)LED显示模块

LED显示模块,主要用来显示主机送给从机的电平值是高电平还是低电平,同时也可以用来检测,整个通信系统是否能够正常工作。

为了整个电路简化,以及效果更明显,所以决定采用共阳连接的方式。

LED显示模块的仿真图,以及原理图如下所示:

仿真图

原理图

三.软件分析

根据题目分析可知硬件电分为主机模块和从机模块。AT89C51单片机担任主机模块和从机模块的控制模块,串口采用单工及异步通信方式。设置波特率位9600,定时器T1为方式2.主机和从机均采用11.0592MHz的晶振频率。( )主机程序

#include

#define uchar unsigned char

#define uint unsigned int

sbit key1=P2^0;

sbit RS=P2^5;

sbit RW=P2^6;

sbit EN=P2^7;

uint temp=1,i=0;

uchar flag=0; //状态标志位

uchar code s1[]={"led zhuang tai:"}; uchar code s2[]={" on "};

uchar code s3[]={" off"};

void delay(uint xms)

{

uint i,j;

for(i=xms;i>0;i--)

for(j=110;j>0;j--);

}

void delay1ms(uint ms)//延时1毫秒( {unsigned int i,j;

for(i=0;i

for(j=0;j<100;j++);

}

void wr_com(uchar com)//写指令

{ delay1ms(1);

RS=0;

RW=0;

EN=0;

P0=com;

delay1ms(1);

EN=1;

delay1ms(1);

EN=0;

}

void wr_dat(uchar dat)//写数据

{ delay1ms(1);;

RS=1;

RW=0;

EN=0;

P0=dat;

delay1ms(1);

EN=1;

delay1ms(1);

EN=0;

}

void lcd_init()//初始化设置

{

delay1ms(15);

wr_com(0x38);

delay1ms(5);

wr_com(0x08);

delay1ms(5);

wr_com(0x01);

delay1ms(5);

wr_com(0x06);

delay1ms(5);

wr_com(0x0c);

delay1ms(5);

}

void xianshi() //LCD1602显示函数(显示第一行的固定文字){

uint i;

for(i=0;i<14;i++)

{

wr_com(0x80+i);

wr_dat(s1[i]);

}

}

void flag_xianshi()//显示当前LED的状态(跟按键是否按下有关){

uint j;

if(flag==1)

{

for(j=0;j<8;j++)

{

wr_com(0xc0+j);

wr_dat(s2[j]);

}

}

else if(flag==0)

{

for(j=0;j<8;j++)

{

wr_com(0xc0+j);

wr_dat(s3[j]);

}

}

}

void key() //键盘扫描函数

{

if(key1==0) //按键按下

{

delay(5);

while(key1!=1);//检测按键是否放开

i++; //用来计算按的次数

if(i%2==1) //当按的是奇数下,点亮LED

{

temp=0;

flag=1;

}

Else //偶数下,LED熄灭

{

temp=1;

i=0; //清零I(可有可无)

flag=0;

}

}

}

void init() //中断初始化

{

TMOD=0x20;

TH1=0xfd; //设置波特率为9600

TL1=0xfd;

SCON=0x40; //设置串口方式1,只发送不接收

PCON=0x00; //SMOD=0

ES=1; //允许串口中断

EA=1; //开总中断

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

}

void main()

{

lcd_init(); //先初始化1602显示函数

init(); //中断初始化

xianshi(); //在这里调用显示函数的原因是因为1602第一行为固定显示,所以可以

不用参与循环

while(1)

{

key(); //检测是否有按键按下

flag_xianshi();//显示LED状态

SBUF=temp; //temp的数据送给串行口发送

while(TI==0);//等待数据,也可以说是检测数据是否发送完

TI=0; //已发送完,就清零T1

}

}

( )从机程序

#include

#define uchar unsigned char

#define uint unsigned int

sbit led=P2^0;

void init() //中断初始化

{

TMOD=0x20;

TH1=0xfd; //设置波特率为9600

TL1=0xfd;

SCON=0x40; //设置串口方式1,只发送不接收

PCON=0x00; //SMOD=0

ES=1; //允许串口中断

EA=1; //开总中断

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

}

void main()

{

init();

while(1)

{

while(RI==0);//等待数据,也可以用来判断数据是否接收完毕

RI=0; //数据接收完毕,清零RI

led=SBUF; //数据直接送给IO口,控制LED的亮灭

}

}

四.实物展示

实物图

PCB 五.元件汇总

元件名数量单位

AT89C51 2 片103蓝白电位器 1 个40脚芯片底座 2 个

20脚排针 5 条

轻触开关 6 个

220Ω电阻10 个

2K电阻 2 个

红色LED 8 个11.0592MHz晶振 2 个

LCD1602 1 个22PF瓷片电容 4 个10uf电解电容 2 个103排阻 2 条

杜邦线 2 条

单面覆铜板 1 片

六.心得体会

这次单片机实训收获还是有的!本来没打算做双机通信的,但是其他的题目都已经有接触了,所以后来还是选了一个以前没接触过的东西玩玩,毕竟能学到东西才是王道!没想到,瞎猫碰到死耗子了,以为双机通信很难,结果却是所有实训题目里面最简单的。真是有够意外的。很顺利的在第一天就把仿真和程序给搞定了,这个跟有扎实的程序思维是密不可分的。然后接下来解释调试了。。本打算直接用实验室的单片机学习板进行调试的。后来发现,太麻烦了,还是自己做块板吧,反正时间多着呢。

周二搞定原理图,周二晚上搞定PCB,整个过程有条不紊的进行的。好了,本以为本次实训能完美收场的,结果是我想太多了。周三整天都是在帮同学,指导程序啊,知道原理图,别人的完成了自己的到是落下了。制版过程浪费太多时间了,终于在周四做好了板。因为实训只剩最后一天了,我还没开始焊元器件,以及调试。我开始有些着急了。人越急,就越容易出错。就因为这个小小的错误,我让我调试付出了太多时间。所以,做事千万要沉得住气,别急慢慢来。

下面,讲讲我调试遇到的麻烦吧。

第一次调试,当板接上电源,整个板完全没反应,LCD1602没亮。用万用表检测了所有的线路,没有出现断路现象,均连接正常,LCD1602就是不亮,在继续查资料,后来终于发现问题所在,原来是背光没连接电源。所以直接用跳线将LCD1602最后两个引脚A,K脸上VCC和GND。

LCD1602搞定,终于可以亮了,本以为成功了一半,但是后来才知道,还远远没有结束。

第二次调试,接好LCD1602的A,K。分别给主机,和从机烧入程序。1602没有显示字符,按键,按下,LED没有反应。问题出现,继续找原因。刚开始以为是程序问题,原理图的连接,和程序的IO口声明出现了错误,后来经过检测,程序没问题,IO口声明也没问题。那最有可能是单片机的系统没工作。

用万用表检测了单片机引脚与排针的连接,均是正常的,检查复位电路,振荡电路,终于找到了问题所在,原来我把振荡电路的两个瓷片电容的数值焊错了。本来要22PF的瓷片电容,我换成了103瓷片电容,好吧,问题发现,从新换上22PF的电容。

第三次调试,整个系统还是不能工作,把前两次的工作从新做了一遍,还是没发现问题。当时时间已经过了1礼拜,差点跪了。。太折磨人了。后来在看PCB时,无意间让我看到了一目,下面附图:

可能这样看不是很明显,好我们放大看看:

这下看清楚了吧!!坑爹啊~~!!我竟然没有还有一条线没连到GND,我靠还有一条线躲在那里啊!!这就是我辛辛苦苦排查的原因的,竟然是忘了连一天GND。

所以说:画板需谨慎,注意看看那些线没连的,电路板的每条线都是关键!!元器件参数要认真看,本来都是不必要的问题,却因为我的粗心大意,浪费了那么多时间,可惜啊~!!

以上就是我这次实训的体会了,说多了都是泪和累啊!

七.参考文献

【1】单片机原理及应用—C51编程+Proteus仿真主编:张毅刚出版社:高等教育出版社

【2】Altium Designer 电子设计应用教程主编:高歌出版社:清华大学出版社

单片机实训报告

单片机原理及应用 实训报告 班级: 学号: 姓名: 指导教师: 实训总成绩:

一、节日彩灯设计 题目:8位逻辑电平模块上的LED小灯从左向右呈现“鞭甩”的实验现象,状态间隔为0.25秒;按键1开始,按键2结束。 原理图 程序代码: #include #define uchar unsigned char uchar tab[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00}; sbit S1=P1^4; sbit S2=P1^7; unsigned char i,j; delay(unsigned int x) { for(j=0;j

for(i=0;i<10;i++); } void main() { uchar i,b,d; while(1) {if (S1==0) {delay(50); if(S1==0); S1=b; b=0; {for(i=0;i<8;i++) { P2=tab[i]; delay(50); {if (S2==0) {delay(50); if(S2==0); S1=d; d=1; P2=0xff; }} } } } } } 设计思想总结 用C语言程序控制单片机最小系统,使IO口输出高低电平控制彩灯电路的闪烁。节日彩灯控制器是利用将单片机的CPU、RAM、ROM、定时器/计数器及输入/输出、I/O接口电路集成在一块集成电路芯片上的特点。通过其与发光二极

管及驱动电路的连接,从而构成一个完整的硬件电路。然后通过对单片机的ROM 进行编程,实现对彩灯闪烁的控制。 二、定时器实现流水灯 题目:利用定时器/计数器T0产生2秒钟的定时,每当2秒定时到来时,更换指示灯点亮,依次循环点亮。 原理图 程序代码 #include #include int lamp = 0xfe ; int cnt = 0; main() {P2 = 0xfe; TMOD = 0x01; TL0 = (65536 - 50000) % 256; TH0 = (65536 - 50000) / 256; TR0 = 1 ; ET0 = 1;

(完整版)51单片机实现双机通信(自己整理的)

1号机程序 #in clude #defi ne uint un sig ned int #defi ne uchar un sig ned char sbit p10=P1 A 0; uchar a,b,kk; //uchar code d_c[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; void delay_ms(uchar y) { uchar i; while(y__) for(i=0;i<120;i++) 5 } void put(uchar x) // 发送函数 { SBUF=x; //SBUF:串行口数据缓冲器 while (TI==0); 〃等待发送结束 TI=0; } P £j £fA>l3 旳 4阳 1370 丘阳 H 鮎口 PDLWAJil- PDSA>f POfiAME PQ TiJT FZ^KS 畑 阳pz- A A-m FZW11 PZ.AtZ FZj9jAl4 PZ.TW? P3£VR : iD paimcc P3.sii nrn pjjfflrn F3.WTI] M*Tl pgtjgQIH F3.7/IF 1E 11 左边1号机,右边2号机, ,功能实现 帕叶DO ■ 口 IJApi FDJ H [I Z — 观旧 IP 口 .hQKD* *QAADf H ^ 弓 H.Lta RQfMM FZJWS pz. iwe F2JKA-IDI P2JTA11I F2.HW1Z P2JSM13 F2W.14 F2JM1S F3Ji nHX& gj.im:& riaiWTO rjjfWTT F3.1/W f3AT1 P3JillW F3JMF ■T2 1E

单片机双机通信报告

单片机双机通信接口应用 专业班级:电信 设计者:? ? 指导老师:? 设计时间:2011-11-28 ~12-9

一、实验目的与要求: 课程设计目的: 1.通过课程设计巩固、深化和扩展理论知识与初步的专业技能,提高综合运用知识的能力,逐步增强实际工程训练。 2.培养正确的设计思想,掌握课程设计的主要内容、步骤和方法。 3.培养获取信息和综合处理信息的能力、文字和语言表达能力以及协作工作能力。 4.提高运用所学的理论知识和技能解决实际问题的能力及其基本工程素质。 课程设计要求: 1、能够根据设计任务和指标要求,综合运用单片机课程中所学到的理论知识与实践技能独立完成一个设计课题,了解并掌握单片机系统设计的一般设计方法,具备初步的独立设计能力;。 2、根据课题需要选择参考书籍,查阅手册、图表等有关文献资料。要求通过独立思考、深入钻研课程设计中所遇到的问题,培养自己分析、解决问题的能力。 3、学会撰写课程设计总结报告。 4、通过课程设计,逐步形成严肃认真、一丝不苟、实事求是的工作作风和科学态度,培养学生树立一定的全局观点。。 5、在课程设计过程中,要做到团结协作。 意义:单片机应用系统设计是单片机课程的实践性教学环节,既涉及到许多理论知识(设计原理与方法),又强调系统设计能力的锻炼,培养创新设计的能力,养成一丝不苟的工作作风,为今后从事单片机行业的工作打下基础。 二、功能要求: 单片机双机通信接口应用。设计电路并编写程序,完成单片机与单片机之间的通信,甲机发送键盘输入的键号,乙机接收键号并在最右边的LED以十六进制的方式显示出来,通信协议:以方式2工作,波特率为2400b/s,信息格式为8个数据位,无奇偶校验位。

51单片机实验报告94890

《单片机与接口技术》实验报告 信息工程学院 2016年9月

辽东学院信息技术学院 《单片机与接口技术》实验报告 姓名:王瑛 学号: 0913140319 班级: B1403 专业:网络工程 层次:本科 2016年9月

目录 实验题目:实验环境的初识、使用及调试方法(第一章) 实验题目:单片机工程初步实验(第二章) 实验题目:基本指令实验(第三章)4 实验题目:定时器/计数器实验(第五章)4 实验题目:中断实验(第六章)4 实验题目:输入接口实验(第八章)4 实验题目:I/O口扩展实验(第九章)4 实验题目:串行通信实验(第十一章)4 实验题目:A/D,D/A转换实验(第十七章)4

实验题目:实验环境的初识、使用及调试方法实验 实验类型:验证性实验课时: 1 时间:2016年10月24日 一、实验内容和要求 了解单片机的基础知识 了解51单片机的组成和工作方法 掌握项目工程的建立、编辑、编译和下载的过程方法 熟练单片机开发调试工具和方法 二、实验结果及分析 单片机最小系统的构成: Keil集成开发环境:

STC-ISP:

实验题目:单片机工程初步实验 实验类型:验证性实验课时: 1 时间:2016 年10 月24 日一、实验内容和要求 点亮一个LED小灯 程序下载到单片机中 二、实验结果及分析 1、点亮一个LED小灯 点亮LED小灯的程序: #include //包含特殊功能寄存器定义的头文件 sbit LED = P0^0; sbit ADDR0 = P1^0; //sbit必须小写,P必须大写 sbit ADDR1 = P1^1; sbit ADDR2 = P1^2; sbit ADDR3 = P1^3; sbit ENLED = P1^4; void main() { ENLED = 0; ADDR3 = 1; ADDR2 = 1; ADDR1 = 1; ADDR0 = 0; LED = 0; //点亮小灯 while (1); //程序停止 } 2、程序下载 首先,我们要把硬件连接好,把板子插到我们的电脑上,打开设备管理器查看所使用的COM 口,如图所示:

51单片机实现双机通信(自己整理的)

左边1号机,右边2号机,,功能实现 1号机程序 #include #define uint unsigned int #define uchar unsigned char sbit p10=P1^0; uchar a,b,kk; //uchar code d_c[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; void delay_ms(uchar y) { uchar i; while(y--) for(i=0;i<120;i++) ; } void put(uchar x) //发送函数 { SBUF=x; //SBUF:串行口数据缓冲器 while(TI==0); //等待发送结束 TI=0; } void main() { uchar j; SCON=0x40; //串行口工作方式1,8位通用异步发送器

— TMOD=0x20; //定时器1工作方式2 PCON=0x00; //波特率不倍增 TH1=0xf4; TL1=0xf4; //波特率2400 TR1=1; //定时器1开始计时 P2=0xc0; while(1) { if(p10==0&&j==0) { delay_ms(15); while(p10==0); kk=1; P2=0xf9; j=1; } if(p10==0&&j==1) { delay_ms(15); while(p10==0); kk=2; P2=0xa4; j=2; } if(p10==0&&j==2) { delay_ms(15); while(p10==0); kk=3; P2=0xb0; j=0; } if(kk==1) put('A'); if(kk==2) put('B'); if(kk==3) put('C'); delay_ms(10); } }

51单片机实训报告

“51单片机”精简开发板的组装及调试实训报告

为期一周的单片机实习已经结束了。通过此次实训,让我们掌握了单片机基本原理的基础、单片机的编程知识以及初步掌握单片机应用系统开发实用技术,了解“51”单片机精简开发板的焊接方法。同时培养我们理论与实践相结合的能力,提高分析问题和解决问题的能力,增强学生独立工作能力;培养了我们团结合作、共同探讨、共同前进的精神与严谨的科学作风。 此次实训主要有以下几个方面: 一、实训目的 1.了解“51”精简开发板的工作原理及其结构。 2.了解复杂电子产品生产制造的全过程。 3.熟练掌握电子元器件的焊接方法及技巧,训练动手能力,培养工程实践概念。4.能运用51单片机进行简单的单片机应用系统的硬件设计。 5.掌握单片机应用系统的硬件、软件调试方法 二、实验原理 流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的硬件组成的单个单片机。 它的电气性能指标:输入电压:DC4.5~6V,典型值为5V。可用干电池组供电,也可用直流稳压电源供电。 如图所示: 本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的硬件组成的单个单片机。 三、硬件组成 1、晶振电路部分 单片机系统正常工作的保证,如果振荡器不起振,系统将会不能工作;假如振荡器运行不规律,系统执行程序的时候就会出现时间上的误差,这在通信中会体现的很明显:电路将无法通信。他是由一个晶振和两个瓷片电容组成的,x1和x2分别接单片机的x1和x2,晶振的瓷片电容是没有正负的,注意两个瓷片电容相连的那端一定要接地。 2、复位端、复位电路 给单片机一个复位信号(一个一定时间的低电平)使程序从头开始执行;一般有两中复位方式:上电复位,在系统一上电时利用电容两端电压不能突变的原理给系统一个短时的低电平;手动复位,同过按钮接通低电平给系统复位,时如果手按着一直不放,系统将一直复位,不能正常。当要对晶体重置时,只要对此引脚电平提升至高电平并保持两个及其周期以上的时间便能完成系统重置的各

单片机课程设计_基于单片机的双机之间的串联通信

单片机系统 课程设计 成绩评定表 设计课题基于单片机的双机之间的串联通信学院名称:电气工程学院 学生姓名: 学号: 指导教师: 设计地点: 设计时间:

单片机系统 课程设计 课程设计名称:基于单片机的双机之间的串联通信专业班级: 学生姓名: 学号: 指导教师: 课程设计地点: 课程设计时间:

单片机系统课程设计任务书

目录 一. 设计目的 (4) 二. 串行口及其扩展简介 (4) 三.设计要求 (5) 四.硬件电路设计 (8) 五.流程图设计 (10) 六.程序设计 (12) 七.设计小结 (17) 八.参考文献 (17)

双机之间的串行通信设计 一、设计目的 1、了解串行通信的工作原理 2、了解键盘设定的工作原理 3、掌握80C51的定时器1计数器1的编程 4、掌握电路板的实物焊接 随着电子技术的飞速发展,单片机也步如一个新的时代,越来越多的功能各异的单片机为我们的设计提供了许多新的方法与思路。 对于莫一些场合,比如:复杂的后台运算及通信与高实时性前台控制系统、软件资源消耗大的系统、功能强大的低消耗系统、加密系统等等。如果合理使用多种不同类型的单片机组合设计,可以得到极高灵活性与性能价格比,因此,多种异型单片机系统设计渐渐成为一种新的思路, 单片机技术作为计算机技术的一个重要分支,由于单片机体积小,系统运行可靠,数据采集方便灵活,成本低廉等优点,在通信中发挥着越来越重要的作用。但能在一些相对复杂的单片机应用系统中,仅仅一个单片机资源是不够的,往往需要两个或多个单片机系统协同工作。这就对单片机通信提出了很高要求。 二、串行口及其扩展简介 1.串行通信的基本特征是数据逐位顺序进行传送 2.全双工制式是指通信双方均设有发送器和接收器,并且信道划分为发送信道和接收信道,因此全双工制式可实现甲乙双方同时发送和接收数据,发送时能接收,接收时也能发送 3.串行通信的传送速率用于说明数据传送的快慢. “波特率”表示每秒种传输离散信号事件的个数,或每秒信号电平的变化次数,单位为band(波特)。 “比特率”是指每秒传送二进制数据的位数,单位为比特/秒,记作bits/s或b/s或bps。 在二进制的情况下,波特率与比特率数值相等

单片机双机通信系统的课程设计

一.课程设计的目的及基本要求: 实践课程是使学生融会贯通本课程所学专业理论知识,完成一个较完整的设计计算和安装调试过程,以加深学生对所学理论的理解与应用,认识和熟悉元器件和电子测量仪器的性能指标,了解解决实际问题的一般过程,培养学生综合运用基础理论知识和专业知识去解决实际工程设计问题的能力。通过电子技术的综合性工程训练,使学生达到以下的目的和要求: 1、结合模拟电路、数字电路、可编程逻辑 器件、单片机电子线路CAD等课程中所学的 理论知识,按要求独立设计方案,培养学生 独立分析与解决问题的能力; 2、学会查阅相关手册和资料,通过查阅手 册和资料,进一步熟悉常用电子器件的类型 和特性,并掌握合理选用的原则; 3、学会使用常用电子元器件(包括中规模 芯片、专用芯片和可编程器件);

4、掌握基本的现代电子技术设计工具和EDA (Electronic design automation)技术; 5、掌握电子电路的安装与调试技术,进一 步熟悉电子仪器的使用方法; 6、认真撰写总结报告,培养严谨的作风和 科学的态度; 二.课程设计的主要内容: 课题十九单片机双机通信系统 基本要求:设计两个单片机最小系统,能实现有线通信,一方为发送,另一方为接收。 提高要求:两个单片机最小系统能相互通信,并能实现校验。 三.具体要求和时间安排: 每一个学生在教师指导下,独立完成一个应用系统。工作量如下: 1、电路原理图(A3幅面)1张,要求Protel软件绘制; 2、pcb版图(A3及以上幅面)1张;

3、设计说明书(20-30页)1本,内含能编译通过的源程序(有必要的注释)。

基于51单片机的双机串行通信

机电高等专科学校2015-2016学年第1学期通信实训报告 系别:电子通信工程系 班级: xxxxxx 学号: 13xxxxxxxxx : xxxxxxx 2015年12月

基于51单片机的双机串行通信 摘要:串行通信是单片机的一个重要应用,本次课程设计就是要利用单片机来完成一个系统,实现爽片单片机床航通信,通信的结果使用数码管进行显示,数码管采用查表方式显示,两个单片机之间采用RS-232进行双击通信。在通信过程中,使用通信协议进行通信。 关键字:通信双机 一、总体设计 1设计目的 1.通过设计相关模块充分熟悉51单片机的最小系统的组成和原理; 2.通过软件仿真熟悉keil和proteus的配合使用; 3.通过软件编程熟悉51的C51编程规; 4.通过实际的硬件电路搭设提高实际动手能力。 2.设计要求: 两片单片机之间进行串行通信,A机将0x06发送给B机,在B机的数码管上静态显示1,B机将0~f动态循环发送到A机,并在其数码管上显示。 3.设计方案: 软件部分,通过通信协议进行发送接收,A机先送0x06(B机数码管显示1)给B机(B机静态显示),当从机接收到后,向B机发送代表0-f的数码管编码数组。B收到0x06后就把数码表TAB[16]中的数据送给从机。 二、硬件设计 1.51单片机串行通信功能 计算机与外界的信息交换称为通信,常用的通信方式有两种:并行通信和串行通信。51单片机用4个接口与外界进行数据输入与数据输出就是并行通信,并行通信的特点是传输信号的速度快,但所用的信号线较多,成本高,传输的距离较近。串行通信的特点是只用两条信号线(一条信号线,再加一条地线作为信号回路)即可完成通信,成本低,传输的距离较远。 51单片机的串行接口是一个全双工的接口,它可以作为UART(通用异步接受和发送器)用,也可以作为同步移位寄存器用。51单片机串行接口的结构如下:

Proteus中实现单片机双机通信实验

Proteus中实现单片机双机通信实验 【摘要】本文针对单片机项目设计中出现的问题和基本方法,提出了将Proteus仿真软件和Keil软件引入到单片机项目式开发中。以“单片机双机通信实验”项目为例,详细阐述Proteus软件在单片机课程教学中的使用方法和仿真调试过程。实践证明,该方法能激发开发热情,锻炼创新能力和单片机软硬件综合开发能力,是提高单片机开发效率和设计产品质量的一种有效方法。 【关键词】单片机开发;Proteus软件;仿真调试 引言 单片机开发是一项综合性、实践性、应用性很强的技术。传统的单片机开发采用“先理论设计,再动手实验”的开发模式,该模式造成编程与之实验结果分离,不便于调试,效果并不理想。鉴于此,本文将Proteus和引入到单片机的项目式开发中,通过仿真的直观性和真实感,不仅节约了硬件资源的投入,而且提高了单片机开发效率和产品质量。 一、Proteus简介 Proteus软件是英国Labcenter electronics公司开发的电路分析与实物仿真软件,它除了具有其他EDA工具的原理布图、PCB自动或人工布线、电路仿真等功能外,Proteus最大的特点是基于微控制器的设计连同所有的外围电路一起仿真,可直接在单片机虚拟系统上对MCU编程,并可对软件源代码进行实时调试。同时,它具有电路互动仿真功能,通过动态外设模型,如键盘、LED/LCD等,可实时显示系统输入、输出结果,以实现交互仿真,或配合Proteus配置的虚拟仪器如示波器、逻辑分析仪等,使单片机虚拟系统实现预期的实验效果。 此处还需要用Keil软件来协助。Keil软件是美国Keil Software公司出品的兼容单片机C语言软件的开发系统,是目前世界上最好的51单片机开发工具之一。它提供了丰富的库函数和功能强大的集成开发调试工具,生成的目标代码效率高,多数语句生成的汇编代码很紧凑,容易理解。 Proteus和Keil各自都可以进行仿真调试,但效果不是很理想,如把两者结合起来相互配合,则可发挥Proteus和Keil的优势使其在仿真过程中的软件调试和硬件设计更加便捷、高效。 二、仿真项目教学案例 (一)项目要求 本项目要求用两片AT89C51单片机实现A机检测输入键盘信息,并通过串行通信方式,传送给B机,在B机用数码管显示A机所按下的对应按键代号,“0-9”

单片机实验报告

实 验 报 告 实验课程:单片机原理及应用 班级: 12自动化2班 学号: 姓名: 教师:张玲 成绩: 实验日期:年月日 实验名称:实验1——计数显示器 一、实验目的: 学习Proteus 软件的使用,掌握单片机原理图的绘图方法。 二、实验内容: 1、绘制“计数显示器”电路原理图; 2、利用提供的hex文件验证此电路的运行效果。 三、实验要求: 提交的实验报告中应包括:1、绘图方法简述,要求说明元件与电源的选取、摆放及属性编辑,总线与标签的画法等内容;2、电路原理图; 3、仿真运行效果展示,要求就仿真文件加载方法及3~4幅运行截图进行简要说明;4、实验小结,说明遇到的主要问题或实验

1体会等。 参考电路原理图如下: 元件类别电路符号元件名称 Microproces sor ICs “U1”80C51 Miscellaneo us “X1”/12MHz CRYSTAL Capacitors“C1”~“C2” /1nF CAP Capacitors“C3”/22μF CAP-ELEC Resistors Packs “RP1”/7-100ΩRESPACK-7 Resistors“R1”/100ΩRES Optoelectro nics “LED1”~ “LED2” 7SEG-COM-CAT-G RN Switches & Relays “BUT”BUTTON 1、编程思路及C51源程序:

2、电路原理图: 3、仿真运行效果展示:

4、实验小结: 熟悉Proteus软件,了解软件的结构组成与功能;学习ISIS模块的使用方法, 学会设置图纸、选元件、线画总线、修改属性等基本操作;学会可执行文件 加载及程序仿法;理解Proteus在单片机开发中的作用,完成单片机电路原 理图的绘制。

基于单片机的双机通信程序设计

前言 单片机的通信接口是各台仪表之间或仪表与计算机之间进行信息交换和传输的联络装置。主要有五种类型,串行通信接口、并行通信接口、USB接口、现场总线接口以及以太网接口。 串行通讯是单片机的一个重要应用。本设计就是利用两块单片机来完成一个系统,实现单片机之间的串行通讯。 随着计算机的不断普及,在我们的周围可能会同时出现多台微型计算机,而且这些计算机的牌号,后型号不同,而且有的格式不兼容。于是利用单片机串行口实现不同计算机之间的相互通信,以达到信息或程序的共享是非常有用的。从智能家用电器到工业上的控制系统都采用了上位机与下位机基于串行通信的主从工作方式,这样就充分利用了微机分析处理能力强、速度快的特点及下位机(单片机)面向控制、使用灵活方便的优势。利用多机通讯构成的分布式系统逐渐普及。本实验就点对点的双机通信进行训练。学习串口的工作方式,初始化编程,和单片机与单片机点对点通信的编程方法以及硬件电路的设计方法。

1.总体设计方案 1.1 串口通信的设计原理 复位电路复位电路 单片机单片机 电源电路电源电路 时钟电路时钟电路 按键输入1位LED数码管 显示电路 图1 串口通信的设计原理框图 本次设计用于两片89S51,PC机的串行口采用的是标准的RS232接口,单片机的串行口电平是FTL电平,而TTL电平特性与RS232的电气特性不匹配,因此为了使单片机的串行口能与RS232接口通信,必须将串行口的输入/输出电平进行转换。通常用MAX232芯片来完成电平转换。单片机的发送方的数据由串行口TXD段输出,经过电平转换芯片MAX232将TTL电平转换为RS232电平输出,经过传输线将信号传送到接收端。接收方也使用MAX232芯片进行电平转换后,信号到达接收方串行口的接收端。接收方接收后,在数码管上显示接收的信息,实现串口通讯数据的发送和接收,该系统可采用max232进行串口通讯数据传送。可用LED显示发送的相应据。 1.2 数据传输方案比较与选折 在串行通信中,数据是在两个站之间传送的。按照数据传送方向,串行通信可采用三种方案。 方案一:单工制式 单工制式是指甲乙双方通信只能单向传送数据。 发送器A 接收器B 图2 单工制式

单片机实验报告

本科生实验报告 实验课程单片机原理及应用 学院名称核技术与自动化工程学院 专业名称电气工程及其自动化 学生姓名 学生学号 指导教师任家富 实验地点6C902 实验成绩 二〇一五年三月二〇一五年六月 单片机最小系统设计及应用 摘要 目前,单片机以其高可靠性,在工业控制系统、数据采集系统、智能化仪器仪表等领域得到极其广泛的应用。因此对于在校的大学生熟练的掌握和使用单片机是具有深远的意义。通过本次课程设计掌握单片机硬件和软件方面的知识,更深入的了解单片机的实际应用,本次设计课程采用STC89C52单片机和ADC0804,LED显示,键盘,RS232等设计一个单片机开发板系统。进行了LED显示程序设计,键盘程序设计,RS232通信程序设计等。实现了单片机的各个程序的各个功能。对仿真软件keil的应用提升了一个新的高度。单片机体积小、成本低、使用方便,所以被广

泛地应用于仪器仪表、现场数据的采集和控制。通过本实验的学习,可以让学生掌握单片机原理、接口技术及自动控制技术,并能设计一些小型的、综合性的控制系统,以达到真正对单片机应用的理解。 关键词:单片机;智能;最小系统;ADC;RS232;显示;STC89C52 第1章概述 单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。单片机采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。 它最早是被用在工业控制领域,由于单片机在工业控制领域的广泛应用,单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。 现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。 第2章实验内容 2.1单片机集成开发环境应用

双机通信,单片机课程设计

单片机课程设计 双机通信 一、设计目的 1、掌握单片机89C52的程序设计,掌握单片机通信程序编制方法。 2、了解单片机实现通信的硬件环境。 3、掌握双机通信的原理和方法。 二、设计要求 1、用两片单片机,实现双机通信; 2、用与A机连接的按键控制A机对B机的信息传输,每按一次键,首先发送端显示要发送数据,两台机器的发光二极管的显示相同。 3、用与B机连接的按键控制B机对A机的信息传输,每次按键,数码管的显示自动加一。 三、设计器材 器件名称个数 STC8952RC 2 晶振 2 电容(30PF) 4 电容(10uF) 2 LED 4 电阻(10K) 4 电阻(330) 2

电阻(8.2K) 2 开关 4 数码管 2 三极管(NPN) 1 排阻 1 四、设计思路及方案 1、设计思路 计划采用主从共两片STC8952RC单片机来实现双机通信的,我们采用单片机直接交叉连接的方式,上位机发送的数据由串行口TXD端输出,直接由下位机的串行口数据接收端RXD接收。需要注意的是一定要保证主从机相同的数据传输速率,即要求设置相同的波特率。电路分为数码管显示模块,单片机工作的基本复位、晶振模块。 2、设计原理 (1)原理概述 双机通信系统通过主从单片机的串行口来实现数据的收发。主单片机通过开关电路来启动发送程序,当开关按下时向从机发送一个数据,从机通过接收中断来接收主机发送过来的数据,并通过编写好的数据代码在LED数码管上显示主机发送过来的数据。同时从机给主机发送一个应答信号来表示已经接收到了主机发送过来的数据,在主机接收应答并校验正确,以二极管显示,这样就完成了一个数据的通信过程,等待按键按下,然后继续下一次数据的发送直到结束。(2)串行通信 串行数据通信要解决两个关键问题,一个是数据传送,另一个是

单片机实训报告心得

广东轻工职业技术学院 实训报告 实训项目单片机实训 系别:电子通信工程系 专业:应用电子技术 班级:嵌入式091班 姓名:11222 学号:2009080202316 指导老师:丁向荣、赵慧 实训地点:第三实训楼C309 实训时间:2011年1月10日至1月14日

前言 单片机应用技术是现代电子设计的核心技术,学习单片机只是就是要将单片机应用到电子产品中,以单片机为控制核心实现电子系统所需实现的功能。单片机的应用能力很多程度上决定了电子类专业学生电子设计与电子应用的水平与能力,尤其是高职学生更是如此。 本项目要求设计一个简单的电子时钟,用六位LED数码管实现电子时钟的功能,显示方式为时、分、秒,采用24h(小时)计时方式,使用按键开关可实现时分调整。 通过电子闹钟项目的课题设计,让同学

们体验项目设计的要点,了解项目设计的流程,加深对单片机应用知识的学习,体会团队协作的力量所在。为日后的嵌入式专业学习巩固基础。 目录 1.概述………………………………………………………… 1.1 系统的作用……………………………………………………………… 1.2 系统的功能要求……………………………………………………………2.系统硬件设计……………………………………………….. 2.1系统的电路原理…………………………………………………………… 2.2 电路原理图……………………………………………………………… 2.3 各控制按钮控制功能说明………………………………………………. 3.系统软件设计………………………………………………. 4.系统调试……………………………………………………. 5. 总结…………………………………………………………

基于AT89C51单片机的双机串行通信设计

编号1 单位代码 学号 分类号 密级 课程设计 基于AT89C51单片机的双机串行通信设计 院(系)名称工学院机械系 专业名称机械设计制造及其自动化 学生姓名 指导教师 2014年11 月10日

前言 单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域随着计算机技术的发展及工业自动化水平的提高, 在许多场合采用单机控制已不能满足现场要求,因而必须采用多机控制的形式,而多机控制主要通过多个单片机之间的串行通信实现。串行通信作为单片机之间常用的通信方法之一, 由于其通信编程灵活、硬件简洁并遵循统一的标准, 因此其在工业控制领域得到了广泛的应用。 在测控系统和工程应用中,常遇到多项任务需同时执行的情况,因而主从式多机分布式系统成为现代工业广泛应用的模式。单片机功能强、体积小、价格低廉、开发应用方便,尤其具有全双工串行通讯的特点,在工业控制、数据采集、智能仪器仪表、家用电器方面都有广泛的应用。同时,IBM-PC机正好补充单片机人机对话和外围设备薄弱的缺陷。各单片机独立完成数据采集处理和控制任务,同时通过通信接口将数据传给PC机,PC机将这些数据进行处理、显示或打印,把各种控制命令传给单片机,以实现集中管理和最优控制。串行通信是单片机的一个重要应用,本次课程设计就是要利用单片机来完成一个系统,实现爽片单片机床航通信,通信的结果使用数码管进行显示,数码管采用查表方式显示,两个单片机之间采用RS-232进行双击通信。 在通信过程中,使用通信协议进行通信。在测控系统和工程应用中,常遇到多项任务需同时执行的情况,因而主从式多机分布式系统成为现代工业广泛应用的模式。单片机功能强、体积小、价格低廉、开发应用方便,尤其具有全双工串行通讯的特点,在工业控制、数据采集、智能仪器仪表、家用电器方面都有广泛的应用。同时,IBM-PC 机正好补充单片机人机对话和外围设备薄弱的缺陷。各单片机独立完成数据采集处理和控制任务,同时通过通信接口将数据传给PC机,PC机将这些数据进行处理、显示或打印,把各种控制命令传给单片机,以实现集中管理和最优控制。 串行通信是单片机的一个重要应用,本次课程设计就是要利用单片机来完成一个系统,实现爽片单片机床航通信,通信的结果使用数码管进行显示,数码管采用查表方式显示,两个单片机之间采用RS-232进行双击通信。在通信过程中,使用通信协议进行通信。

基于单片机的双机串行通信

河南机电高等专科学校2015-2016学年第1学期通信实训报告 系别:电子通信工程系 班级: xxxxxx 学号: 13xxxxxxxxx 姓名: xxxxxxx 2015年12月

基于51单片机的双机串行通信 摘要:串行通信是单片机的一个重要应用,本次课程设计就是要利用单片机来完成一个系统,实现爽片单片机床航通信,通信的结果使用数码管进行显示,数码管采用查表方式显示,两个单片机之间采用RS-232进行双击通信。在通信过程中,使用通信协议进行通信。 关键字:通信双机 一、总体设计 1设计目的 1.通过设计相关模块充分熟悉51单片机的最小系统的组成和原理; 2.通过软件仿真熟悉keil和proteus的配合使用; 3.通过软件编程熟悉51的C51编程规范; 4.通过实际的硬件电路搭设提高实际动手能力。 2.设计要求: 两片单片机之间进行串行通信,A机将0x06发送给B机,在B机的数码管上静态显示1,B机将0~f动态循环发送到A机,并在其数码管上显示。 3.设计方案: 软件部分,通过通信协议进行发送接收,A机先送0x06(B机数码管显示1)给B机(B机静态显示),当从机接收到后,向B机发送代表0-f的数码管编码数组。B收到0x06后就把数码表TAB[16]中的数据送给从机。 二、硬件设计 单片机串行通信功能 计算机与外界的信息交换称为通信,常用的通信方式有两种:并行通信和串行通信。51单片机用4个接口与外界进行数据输入与数据输出就是并行通信,并行通信的特点是传输信号的速度快,但所用的信号线较多,成本高,传输的距离较近。串行通信的特点是只用两条信号线(一条信号线,再加一条地线作为信号回路)即可完成通信,成本低,传输的距离较远。 51单片机的串行接口是一个全双工的接口,它可以作为UART(通用异步接受和发送器)用,也可以作为同步移位寄存器用。51单片机串行接口的结构如下:

单片机实训报告范本精选5篇

Record the situation and lessons learned, find out the existing problems and form future countermeasures. 姓名:___________________ 单位:___________________ 时间:___________________ 单片机实训报告精选5篇

编号:FS-DY-20685 单片机实训报告精选5篇 单片机课程设计心得体会 在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我了解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有手机中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。通过在单片机小组里的学习我简单总结了几点心得和体会: 第一:万事开头难,要勇敢的迈出第一步,不要总找借口说没有学习过就总推脱。凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。可以从建项目开始,然后可以找一个简单的小程序先把它敲进单片机内然他运行起来,感觉一下单片机的运行,让自己了解单片机整个运行。 第二:对于知识点,学过的要掌握牢固,对于没有学的和暂时用不到的先不用学习。比如:小灯得点亮就没有用到

中断可以先不用看。这样可以避免知识过多记不住的麻烦。对于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进行学习这样才能掌握的很牢靠,当用到哪里的知识点不记得了可以去看书,对于用不到的可以不去看。 第三:程序不要只是看别人得,一定要自己写过才是自己的。开始不懂可以参考别人的,看看每一句代表着什么意思,能够实现什么现象。明白之后自己再重新写一遍,你会发现看别人的能懂到自己写的时候很困难。当你自己能写出来的时候说明你真懂了。 第四:一定要学会程序调试的方法。有时候把程序写完了然后运行时不能实现理想的现象。这时有人就晕了不知该怎么办,然后就去问别人。当别人找出问题出在哪里时就会恍然大悟。其实当遇到问题一定要自己尝试着解决,不能遇到问题就去问别人。自己一定要掌握解决问的方法和思路。 第五:在学习初期看别人的代码,学习别人的思路这个很有用。通过看别人的代码特别是有多年编程经验的人的程序,可以迅速提高自己的编程水平。也可以结合着别人的手法,与自己的想法结合在一起写出更好的程序。但是切记将

基于单片机的双机通信

基于单片机的双机通信 [摘要]双机通信是单片机的一个重要应用。本次课程设计就是要利用单片机来完成一个系统,实现两个单片机之间的有序通信。本文详细介绍了关于基于单片机AT89C51实现的双机之间的通信的设计。软件部分采用C语言编程实现接收部分和发射部分的功能,用Protues进行仿真。软件设计完成后,将程序烧入单片机。通信的结果实用数码管进行显示,数码管采用查表方式显示。在通信过程中,使用通信协议进行通信。 [关键词]51单片机;串行通信;接口

Two-machine communication based on single chip [Abstract]Dual machine communication is an important application of single chip. This course is designed to using single chip computer to complete a system, realize the orderly communication between two single-chip microcomputer. This paper introduces the realization based on single-chip microcomputer AT89C51 about the dual machine for communication between the design. Software part adopts the C programming language realization receiving part and emission, part of the Protues function, through simulation. The software design is completed, the procedure spread microcontroller. Communication results and practical to display, digital digital tube pipe, adopting look-up table display. In communication process, USES communication protocol to communicate. [Key words]51 SCM; serial communication; Interface

51单片机实训报告完整版

51 单片机实训报告完整版 一、设计目标 1. 完成温度显示系统的设计,即以单片机位核心微处理器,完成接收处理温度信号和 控制八段数码管显示两部分功能电路的设计; 2. 使用Protel绘制电路原理图和PCB版图 3. 通过使用凌阳单片机开发系统掌握单片机系统的基本开发方法,系统配置方法,IO 口的读写方式以及数据处理方法。 4. 掌握基于C语言编程的单片机控制技术,完成实现温度采集、显示系统功能的控制 程序设计(信号的接收、信息的处理及八段数码管显示控制程序); 5. 软硬件联调,完成系统的最终功能。 二、设计任务 1. 完成基于单片机的温度检测显示系统设计,利用自己设计的温度传感电路输出模拟 信号,选用相应的A/D 转换芯片将模拟信号转换成数字信号送入单片机,单片机对 接收的信号进行处理; 单片机输出经译码电路连接至八段数码管显示温度值。 2. 具体要求完成内容: 1)传感器模块学习及信号输入设计 2) LED数码管显示部分设计 3)绘制电路原理图和PCB版图

3)数据处理转换(使用C语言进行) 4)软硬件联调实现完整系统设计要求; 5)撰写实训报告。 第一部分:原理图及PBC版图制作 制作原理图,我们选用的软件是proteldxp2004 ,我们选用这个软件是因为Protel DXP 在前版本的基础上增加了许多新的功能。新的可定制设计环境功能包括双显示器支持,可固定、浮动以及弹出面板,强大的过滤和对象定位功能及增强的用户界面等。Protel DXP 是第一个将所有设计工具集于一身的板级设计系统,电子设计者从最初的项目模块规划到最终形成生产数据都可以按照自己的设计方式实现。Protel DXP 运行在优化的设计浏览器平台上,并且具备当今所有先进的设计特点,能够处理各种复杂的PCB设计过程。通过设计输入仿真、PCB绘制编辑、拓扑自动布线、信号完整性分析和设计输出等技术融合,Protel DXP 提供了全面的设计解决方案。与较早的版本——Protel99 相比,Protel DXP 2004 不仅在外观上显得更加豪华、人性化,而且极大地强化了电路设计的同步化,同时整合了 VHDL和FPGA设计系统,其功能大大加强 了。 首先是设计出系统整体框图,系统采用凌阳单片机61 板及相关模组构成,系统整体分三部分设计,分别为信号采集部分、单片机系统部分和显示部分。(如图所示) 温度传A/D(数模)八段数码单片机系统译码器感器电转换电路管显示路系统整体框图信号采集部分: 本设计采用图1的惠斯登电桥电路,该电路采用4块电阻搭建组成,其中3块为普通电阻,另外一块为热敏电阻。这四块电阻在正常室温(25?)的情况下,电阻

相关文档
最新文档