上位机下位机串口通信Word文件下载.docx

上传人:b****8 文档编号:22498020 上传时间:2023-02-04 格式:DOCX 页数:19 大小:341.40KB
下载 相关 举报
上位机下位机串口通信Word文件下载.docx_第1页
第1页 / 共19页
上位机下位机串口通信Word文件下载.docx_第2页
第2页 / 共19页
上位机下位机串口通信Word文件下载.docx_第3页
第3页 / 共19页
上位机下位机串口通信Word文件下载.docx_第4页
第4页 / 共19页
上位机下位机串口通信Word文件下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

上位机下位机串口通信Word文件下载.docx

《上位机下位机串口通信Word文件下载.docx》由会员分享,可在线阅读,更多相关《上位机下位机串口通信Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。

上位机下位机串口通信Word文件下载.docx

1.2课程设计的背景…………………………………1

1.3课程设计的目的…………………………………1

1.4课程设计的意义…………………………………1

1.5设计任务………………………………………1

2.设计方案…………………………………………2

2.1参数采集和传输设计………………………………2

2.2参数显示设计……………………………………2

2.3模拟信号采样设计…………………………………2

2.4硬件研制过程……………………………………2

3.详细设计…………………………………………3

3.1硬件系统框图与说明………………………………3

3.2硬件设计………………………………………4

3.3软件主要模块流程图与说明…………………………7

4.设计结果及分析…………………………………8

5.成员分工及工作情况……………………………9

5.1成员分工………………………………………9

5.2工作情况………………………………………9

5.3实验总结………………………………………9

6.参考文献………………………………………9

7.附录……………………………………………10

一、设计任务与要求

1.1课程设计题目

1.2课程设计的背景

二十一世纪是信息化高速发展的世纪,产业的信息化离不开微型计算机的支持。

微型计算机的进步是推动全球信息化的动力。

因此在二十一世纪掌握微型计算机接口技术是十分有必要的。

本次课题是双机参数采集系统设计,这次课题旨在通过自己对所需功能芯片的设计与实现来巩固以前所学的微机原理课程知识,同时也提高动手实践的能力,还有为将来进行更大规模更复杂的开发积累经验。

随着软件规模的增长,以及随之而来的对软件开发进度和效率的要求,高级语言逐渐取代了汇编语言。

但即便如此,高级语言也不可能完全替代汇编语言的作用。

1.3课程设计的目的

《微机原理与汇编语言》是一门实践性和实用性都很强的课程,本次课程设计是在课程学习结束后,为使学生进一步巩固课堂和书本上所学知识,加强综合能力,充分理解和运用所学到的知识,通过简单的应用系统的设计,提高系统设计水平,启发创新思想。

通过本课程设计希望达到以下目地:

✧培养资料搜集和汇总的能力;

✧培养总体设计和方案论证的意识;

✧提高硬件,软件设计与开发的综合能力;

✧提高软件和硬件联合调试的能力;

✧熟练掌握相关测量仪器的使用方法;

✧掌握相关开发软件,仿真软件的使用方法。

1.4课程设计的意义

通过课程设计加深理解课堂教学内容,培养了我们资料搜集和汇总的在能力以及总体设计和方案论证的意识,锻炼了我们硬件、软件设计与开发的综合能力,提高了我们软件和硬件联合调试的能力,使我们掌握了相关测量仪器和相关开发软件以及仿真软件的使用方法,掌握计算机接口技术的基本应用方法。

也掌握了常用接口电路的设计,掌握8255A、8253、8259A、8250A、ADC0809、DAC0832等接口芯片的应用和编程方法,进一步熟悉汇编语言的语法和编程技巧,以及双机通讯所用到的理论基础。

1.5设计任务

双机数据采集系统设计,制定适当的通信协议包括命令编码,数据编码格式,通信速率、采样周期、校验方式等;

模拟信号输入:

可用实验箱上的电位器模拟。

每路模拟量/开关量信号的采样时间为0.5s,即每秒采样2次。

通信接口:

自选(推荐串口)

二、设计方案

2.1参数采集和传输设计

下位机通过74LS244采集1路开关量,模拟量由电位器产生,从ADIN0输入,通过串口8250发送给上位机

2.2参数显示设计

模拟信号通过A/D转换器转换成数字信号下位机的数码管上显示,发送到PC机的数据通过串口工具显示

2.3模拟信号采样设计

通过8253定时触发8259中断,以达到定时采样的目的,0.5秒采样一次。

2.4硬件研制过程

(1)整个硬件系统划分为7个功能单元电路,包括:

定时采样(8253),查询功能(244),模数转换(0809),数据传输(8255,8250),数字显示(数码管),模拟量显示(示波器)

(2)系统所选用各芯片的工作方式如下:

▪8255的工作方式:

B口方式0,输入

▪8253的工作方式:

计数器1,方式3(方波发生器),计数初值3750,其时钟接clk3;

计数器2,方式3,计数初值100,其时钟接out1

▪8250的工作方式:

无奇偶校验,8个数据位,一个停止位

▪8259的工作方式:

上升沿触发,一般嵌套,自动结束中断

(3)系统逻辑电路图如下:

图2-1系统逻辑电路图

三、详细设计

3.1硬件系统框图与说明

图3-1硬件系统框

下位机:

8255:

PB口,都选用方式0。

下位机的采集转换的数据通过8250传到上位机,上位机接收到数据经过处理后通过8250回送到下位机。

8253:

完成定时采样的功能,采样周期为0.5s。

8259A:

用于0.5s触发中断。

0809:

完成模数转换的功能。

8255B口:

查询EOC状态,判断是否转换完毕。

3.2硬件设计

3.2.1A/D转换的基本原理

A/D转换就是模数转换,顾名思义,就是把模拟信号转换成数字信号。

A/D转换器是用来通过一定的电路将模拟量转变为数字量。

模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。

但在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号。

A/D转换后,输出的数字信号可以有8位、10位、12位和16位等。

A/D转换器的工作原理主要有以下三种方法:

逐次逼近法、双积分法、电压频率转换法。

A/D转具有如下几个技术指标:

1)分辩率指数字量变化一个最小量时模拟信号的变化量,定义为满刻度与2^n的比值。

分辩率又称精度,通常以数字信号的位数来表示。

2)转换速率是指完成一次从模拟转换到数字的AD转换所需的时间的倒数。

积分型AD的转换时间是毫秒级属低速AD,逐次比较型AD是微秒级属中速AD,全并行/串并行型AD可达到纳秒级。

采样时间则是另外一个概念,是指两次转换的间隔。

为了保证转换的正确完成,采样速率必须小于或等于转换速率。

因此有人习惯上将转换速率在数值上等同于采样速率也是可以接受的。

常用单位是ksps和Msps,表示每秒采样千/百万次。

3)量化误差由于AD的有限分辩率而引起的误差,即有限分辩率AD的阶梯状转移特性曲线与无限分辩率AD(理想AD)的转移特性曲线(直线)之间的最大偏差。

通常是1个或半个最小数字量的模拟变化量,表示为1LSB、1/2LSB。

4)偏移误差输入信号为零时输出信号不为零的值,可外接电位器调至最小。

5)满刻度误差满度输出时对应的输入信号与理想输入信号值之差。

6)线性度实际转换器的转移函数与理想直线的最大偏移,不包括以上三种误差。

3.2.28253定时器/计数器电路

(1)电路原理

该电路由1片8253组成,8253的片选输入端插孔CS8253,数据口,地址,读写线均已接好,T0、T1、T2时钟输入分别为8253CLK0、8253CLK1、8253CLK2。

定时器输出,GATE控制孔对应如下:

OUT0、GATE0、OUT1、GATE1、OUT2、GATE2、CLK2。

原理图如下:

注:

GATE信号无输入时为高电平

图3-28253定时器/计数器电路原理图

3.2.38250串口接口电路

该电路由一片8250,一片MAX232组成,该电路所有信号线均已接好。

图3-38250串行接口电路原理图

3.2.48259A中断控制电路

CS8259是8259芯片的片选插孔,IR0~IR7是8259的中断申请输入插孔。

DDBUS是系统8位数据总线。

INT插孔是8259向8086CPU的中断申请线,INTA是8086的中断应答信号。

图3-48259中断控制器电路原理图

3.2.5硬件系统地址分配说明

CS0:

0809

CS1:

CS244

CS2:

CS273

CS4:

8253

CS5:

8259

3.3软件主要模块流程图与说明

下位机工作流程图:

四、设计结果及分析

五、成员分工及工作情况

5.1成员分工

1人进行资料的搜集,下位机的连线和程序的调试,1人负责实验代码的编写以及相应流程图,1人进行实验报告的撰写及相关画图。

5.2工作情况

(1)模拟信号输入:

1路模拟信号

(2)每路模拟信号的采样时间为0.5s,每秒采样2次。

(3)通信接口:

上位机与下位机间用串行通信接口

(4)编程语言:

汇编语言

(5)遇到的问题和解决的方法;

问题1:

对实验台各部件之间的关系以及各部件的功能和编程不熟悉

解决方法:

查看以前做过的实验和教科书,熟悉各部件的功能及编程

问题2:

发送一次启动命令,显示一次数据

通过画流程图,把接受启动命令的程序放到开中断之前

5.3实验总结

本次微机原理课程设计给我们了充分的时间再一次巩固微机原理及接口技术的相关知识。

设计的过程即使将书本理论知识运用到实践中,让我们对各个芯片如8259A、8255A、8253,ADC0809,DAC0832,cs244等有了更全面的认识。

我们首先对整个系统进行大致的分析,画出程序流程图,依照思路将试验台的硬件连接完毕后,对软件部分进行了详细的编写及调试,最终达到理想的效果。

在学习设计的过程中,逐步消解了我们学习上的盲点,受益匪浅,收获颇多,从中也发现了自己许多的不足和需要改进的地方。

通过近两周的努力,我们完成了本学期微机原理的课程设计。

在设计的过程中遇到了不少的困难,通过相互讨论、查看书籍、搜索网络、请教同学和老师,最终所遇到的问题都得到了圆满的解决方案。

课程设计的任务提高了我们发现问题,解决问题的能力。

理论与实践之间永远是存在着一定差距的,要把理论知识充分灵活地运用于实践是需要实践经验和牢固的理论基础的。

六、参考文献

[1].钱晓捷,陈涛.16/32位微机原理,汇编语言及接口技术(第2版).北京:

机械工业出版社,2005

[2].微机原理实验指导

[3].EL-MUT-III单片机/微机实验系统Techshine使用说明及实验指导书北京精仪达盛科技有限公司2015

七、附录

附录一:

下位机程序

con8279equ0492h

dat8279equ0490h

assumecs:

code

codesegmentpublic

org100h

start:

jmpstart1

segcoddb3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h

start1:

cli;

中断系统未初始化,先关中断

movdx,04f0h

moval,00010011B;

边沿触发,单片,写ICW4

outdx,al

movdx,04f2h

moval,80h;

中断类型号80h-87h

moval,00000011B;

一般嵌套,自动结束中断,无缓冲

outdx,al

moval,0

outdx,al;

OCW1,开放中断

movax,0

movds,ax;

中断向量表位于内存最开始的1KB,段地址为0

movsi,200h;

初始化中断向量表,80H*4=200H

movax,offsetint0

movds:

[si],ax

addsi,2

[si],100h;

代码段短地址100h

movbx,0480h;

初始化8250

movdx,bx

adddx,06h

moval,80h

movdx,bx

movax,0ch;

000ch---9600,clk=4.77MHZ/4

outdx,ax;

AL=4770000/16/9600/4=8

adddx,2

movax,0h

outdx,ax

adddx,4;

LCRagain

movax,03h;

nope,8bit,1stop

adddx,2;

InterruptEnableregister

outdx,ax

movdx,04d6h;

初始化8353,CS3

moval,01110110B;

写控制字,计数器1,先写低字节再写高字节,二进制,方式3

movax,3750

movdx,04d2h

moval,ah

movdx,04d6h

moval,10010110B

movdx,04d4h

moval,100

movdx,04b6h;

初始化8255,CS1

moval,10000010B;

one:

callrecv

cmpal,'

s'

jnzone

four:

sti

waiting:

cmpal,1;

dest-src

jnzwaiting

movdx,04e0h;

74LS244,CS4

inal,dx

andal,01h

movah,0

callsend

movdx,04a0h

outdx,al

wait1:

movdx,04b2h;

8255B口

inax,dx;

读EOC

andax,1

cmpax,1

jnewait1;

如果EOC=0,waiting....

movdx,04a0h

读转换结果

andax,0ffh

movbx,ax

nop

calldisp

moval,0

jmpfour

int0:

moval,1;

中断服务子程序

iret

disp:

pushax

movdi,offsetsegcod

movax,08h;

工作方式,16位,左入

movdx,con8279

outdx,ax

movax,90h

outdx,ax;

写显示RAM命令,地址自增

movdx,dat8279

pushbx

andbx,0f0h;

取高4位

movcl,4

shrbx,cl

adddi,bx

moval,cs:

[di]

movah,0

写RAM0

nop

movdi,offsetsegcod

popbx

andbx,0fh;

取低4位

写RAM1

popax

ret

send:

pushax;

入口参数ax

movbx,0480h

adddx,0ah

testal,20h;

逻辑与

jnzrecv2

popax

jmpsend

recv2:

ret

recv:

出口参数al

testal,01h

jnzrecv1

jmprecv;

查询

recv1:

codeends

endstart

附录二:

元器件

序号

器件名称

作用

1

PC机

显示及写入程序

2

产生中断启动A/D转换

3

8253

按0.5s定时触发中断

4

ADC0809

A/D转换

5

CS273

按阈值控制LED灯

6

8250

PC机与上位机间数据传送

7

CS244

EOC查询是否转换结束

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1