系列单片机教学实验板硬件设计毕业设计内容摘要:
5V之间为逻辑1电平,表示传号状态;输出电压相对于信号地线在+5V~+15V之间为逻辑0电平,表示空号状态。 在接收端,逻辑1电平为3V~15V,逻辑0电平为+3V~+15V,即允许发送端到接收端有2V的电压降。 这样的RS232电平和TTL逻辑电路(单片机)产生的电平是不一样的,因此,PC机与单片机AT89C52之间必须经过一定的电路转换逻辑电平。 图311给出了实验板上的RS232串行接口逻辑电平转换电路。 该电路由分立元件构成,它等同MAX202的电平转换功能。 一个完整的RS232接口有22根线,采用25根插针的标准连接器,各插针定义见表16。 在使用PC机和单片机进行直接通信时,一股选用PC机端的9针串口,因此RS232只需要少数几根线即可正常工作。 TXD/RXD是一对数据线,TXD为发送数据输出,RXD为接收数据输入,当PC机和单片机以全双工方式直接通信时,双方的这两根线应交叉连接。 所有信号均通过信号地构成回路,双方的信号地相连。 有以上这三条线(TXD、RXD和信号地),单片机和PC机就可以分别对异步通信电路芯片编程,设置成不需要任何联络或握手信号、直接进行数据交换的方式。 RS232三线式直接数据通信接口如表17所示。 图311 RS232串行逻辑电平转换电路 Fig. 311 RS232 serial logic level transformation the circuitForm16 Definition of RS232 signal表16 RS232信号的定义引脚序号说明引脚序号说明1保护地13辅信道 允许发送(CTS)2发送数据14辅信道 发送数据3接收数据15发送信号无定义DCE为源4请求发送(RTS)16辅信道 接收数据5允许发送(CTS)17接收信号无定时6数传机准备好18未定义7信号地19请求发送(RTS)8接收线信号检测20数据终端准备好9保留供数传机测试21信号质量检测10保留供数传机测试22振铃指示11未定义23数据信号速率选择12接收线信号检测24接收数据无定时Form 17 RS232 data munication interface 表17 RS232三线式直接数据通信接口说明引脚序号引脚序号 保护地(接外壳) 1 1发送数据TXD 2 2接收数据RXD 3 3信号地 7 7请求发送RST 4 4消除发送CTS 5 5载波检测DCD 8 8数据装置准备好DTR 6 6数据终端准备好DSR 20 20振铃指示RI 22 22表17中,通常左边为连接PC机的25针插头时,右边连接单片机实验板只需2根信号线(另加1根地线)。 信号线为双方的3端交叉连接,而其它7端对应连接,即完成了PC机与单片机仿真实验板的连接。 仿真实验板配套的RS232通讯线就是采用上述连接方式制成的。 2软件设计 在微机应用系统的设计和开发中,主要工作集中在接口设计和程序涉及两个方面,而汇编语言程序设计是开发单片机应用系统软件的关键。 在这里着重介绍程序设计的基本方法,并举例一些典型的汇编语言程序实例。 汇编由语言程序设计步骤用微机完成某项任务时,往往应根据问题的要求对硬件,软件综合考虑。 在总体硬件确定情况下,程序设计一般可按如下步骤进行。 (1) 分析问题分析问题就是要熟悉和明确问题的要求,明确已知条件以及对运算与控制的要求,准确地规定要完成的任务,建立数学模型。 (2) 确定算法根据实际问题的要求和指令系统的特点,选择解决问题的方法。 算法是进行程序设计的依据,它决定了程序的正确性和程序的质量。 (3) 设计程序流程图程序流程图是程序结构的一种图解表示法,它直观,清晰地体现了程序设计思想,是程序设计一种常用工具。 设计程序流程图,是把算法转化成程序的准备阶段。 (4) 分配内存单元分配内存工作单元,确定程序和数据区的起始地址。 (5) 编写汇编语言源程序根据流程图和指令系统编写源程序。 编写员程序时,力求简单明了,力求简单明了层次清晰。 (6)调试程序源程序编制好以后,必须上机调试。 先将源程序通过汇编生成目标程序,并消除愈发失误;然后再使用系统进行联调修改,直至预定一定的要求。 软件实验51系列单片机具有丰富功能的指令系统,它集中反映了51系列单片机是一个面向功能很强的单片微型机。 掌握指令系统,是熟悉和应用单片机的软件基础。 但是,要真正掌握指令系统,一方面必须与单片机的硬件结构结合起来学习;另一方面要结合实际多做程序分析和进行简单的程序设计及调试,才能收到应有的效果。 通过如下软件试验,我们能快速地掌握单片机工作原理和熟悉汇编语言的指令系统。 说明:XCODE外部程序存储器 XDATA外部数据存储器 ICODE片内ROM 片内RAM (00H~7FH) IDATA片内RAM (80H~FFH) SFR特殊寄存器(80H~FFH)为了锻炼学生的编程能力,同类型的编程只给出一个例程,思考部分要求学生课后自己完成。 软件实验 存储器清零一、实验要求:指定存储器中某块的起始地址和长度,要求能将其内容清零。 二、实验目的:三、实验说明通过本实验,学生可以了解单片机读写存储器的读写方法,同时也可以了解单片机编成,调试方法,如何将存储器块内容固定值。 例程:清除片内数据存储器(DATA+IDATA)清除片内数据存储器(DATA+IDATA),即片内从00H至FFH所有单元。 ORG 8000H。 实验板开始执行的第一条指令所处的地址LJMP MAIN。 跳转到主程序ORG 8030H。 主程序开始的地址;避开中断入口地址MAIN: MOV R0, 0FFH。 使R0指向IDATA中的最大的地址FFH MOV A, 0。 清除累加器CLR_RAM: MOV @R0, A。 清除DPTR所指向的IDATA单元DJNZ R0, CLR_RAM。 完成清除IDATAHALT: LJMP HALT。 完成清除IDATA,在此死循环,实际程序中应为后续操作。 =================== =======。 用以分隔程序,使程序清晰易懂END。 程序结束,编译程序不理会END以后的内容思考:如何编写清除外部数据存储器(XDATA)的程序说明:89C52内部有多个存储空间,每个存储空间都是具有连续的字节地址空间,其地址都是从0开始至最大存储范围的字节地址,就是说它们的地址是全部重叠的。 因为IDATA区的地址和SFR的地址是重叠,我们通过区分访问的存储区了解决地址重叠问题。 SFR只能通过直接寻址来访问,而IDATA区只能通过间接寻址来访问。 但是外部数据存储器(XDATA)就只能使用DPTR、R0或者R1间接寻址。 软件实验 BCD码转换及运算一、实验要求1. 将给定的一个二进制数,转换成十进制(BCD)码2. 将二个给定BCD码进行求和及相减二、实验目的1. 掌握简单的数据转换算法2. 基本了解数值的各种表达方法3. 掌握求和相减要注意的地方三、计算机中的数值有各种表达方式,这是计算机的基础。 掌握各种数值之间的转换是一种基本功。 例程:二进制转换成十进制(BCD码)将二进制数(F3H)转换成十进制数存放在30H,31H,32HORG 0000H LJMP MAINORG 0030HMAIN: MOV R0, 30H ;给出百位存放地址 MOV A, 0F3H ;给出要转换的二进制数 MOV B, 64H ;将数除100,得到百位数 DIV AB MOV @R0, A ;存百位数 INC R0 ;给出十位数的存放地址 MOV A, B ;将余数除10,得到十位数 MOV B, 0AH DIV AB MOV @R0, A ;存放十位数 INC R0 ;得个位数地址 MOV @R0, B ;存放个位数。 =============================。 用以分隔程序,使程序清晰易懂 END。 程序结束,编译程序不理会END以后的内容 思考:1. BCD码求和有两个4位BCD码,分别放在片内RAM的50H,51H单元和60H,61H单元中。 求两数之和并存放在40H,41H单元中。 2. 压缩的BCD码相减被减数和减数为压缩BCD码,分别存于R3和R4中,其差值也存进R3中。 3. 如果是压缩BCD码相加的程序应该如何编程。 说明:十位数相加时用ADDC指令,是考虑当个位数相加的结果超过9时,将产生进位,在对十位数相加时应该把它加进去。 DA A指令支队累加器A起作用,它不能单独使用并且在假发指令ADD和ADDC之后,也不适用于减法指令。 为了能借用DA A指令,可采用把减法变成补码相加的办法,用9AH减去减数,得到10为模的减数的补码。 软件实验二进制转换成ASCII一、实验要求 给出一个十六进制的数,将其转换成ASCII值。 二、实验目的1. 了解十六进制值和ASCII值得区别2. 了解如何将十六进制转换成ASCII值3. 了解如何查表进行数值转换及快速计算三、实验说明 此实验让我们了解数值的十六进制和ASCII的区别,利用查表可能快速进行数值转换。 进一步了解数值的各种表达方法。 例程:由十六进制数09的ASCII码为30H39H和AF的ASCII码为41H46H可知,如果十六进制数小于0AH,则像应该数的ASCII码为A+30H;如果该数等于或大于0AH,则相应的ASCII码为A+37H。 ORG 0030HMOV R0, 3BH ;给指定单元赋值 MOV A, R0 ;取十六进制数高四位ANL A, 0F0HSWAP A ACALL HEXASC ;调用转换子程序 MOV 30H, A ;将高四位运算结果放到30H单元MOV A, R0 ;取十六进制数低四位ANL A, 0FHACALL HEXASC ;调用转换子程序MOV 31H, A ;把低四位运算结果放到31H单元HEXASC: CJNE A,0AH,L1 ;子程序L1: JNC L2 ;A=0AH,转L2ADD A, 30H ;A0AH,则A+30HRETL2: ADD A,37H ;A=0AH,则A+37HRET。 =================================。 用以分隔程序,使程序清晰易懂END。 程序结束,编译程序不理会END以后的内容 软件实验 内存块移动一、实验要求将指定源地址和长度的存储块移动到指定目标位置二、实验目的 1. 了解内存的移动方法 2. 加深对存储器读写的认识三、实验说明块移动是计算机常用操作之一,用地址加一方法移动块。 例程:外部数据块搬移(≤256字节)把处于程序存储器(XCODE)中从Data_TAB开始的256个字节数据传送到外部数据存储器从B000H开始的256个单元中去。 ORG 8000H。 实验板开始执行的第一条指令所处的地址 LJMP MAIN。 跳转到主程序 ORG 8030H。 主程序开始的地址;避开中断入口地址MAIN: MOV DPTR, Data_TAB。 使DPTR指向XCODE中的Data_TAB开始的256个字节数据MOV P2, 0B0H。 使P2口指向XDATA中的目的地址高8位 MOV R0, 00H。 使R0口指向XDATA中的目的地址低8位起始地址 MOVEDATA: M。系列单片机教学实验板硬件设计毕业设计
相关推荐
型、设计型的同步实验和综合实验,突出节约、环保的绿色化学理念,将实验和实训有机结合,有利于 培养动手能力和综合实践能力。 参考教材: 华中师大等三校合编《分析化学》高教出版社;普通高教“十五”国家规划教材《分析化学教程》 北大出版社。 武汉大学等五校合编《分析化学》人民教育出版社。 教学资源: 指导性教学文件有 《分析化学教学大纲》、《教师授课计划》,编写了《分析化学学习指南》
I,再对某一整数 n 作矩阵 A+ I 的幂运算,知道下式成立为止。 „„„„„( ) 幂运算是基于布尔代数运算 (0、 1 的逻辑和、逻辑积 )进行的,即 1+1=1, 1+0=0+1=1, 11=1, 10=01=0 „„„„„„„ ( ) 矩阵 称为可达矩阵,可达矩阵用于描述元素间 所有影响。 建立可达矩阵 可达矩阵 M的元素 mij为 1代表要素 Ai到
面阵列元的响应模型。 第三章首先介绍了几种定标校正算法的工作原理,然后介绍了基于场景校正算法中的卡尔曼滤波校正算法、神经网络校正算法,并给出了仿真结果分析。 在此基础上, 分析了基于神经网络校正算法的不足,然后通过引入非线性滤波器改善了传统算法的缺点,并取得了很好的效果,文中给出了仿真结果参数的对比。 第四章首先介绍了红外图像中盲元的产生的原因及盲元补偿的意义
下要求: ⑴. 粗基准的选择应以加工表面为粗基准。 目的是为了保证加工面与不加工面的相互位置关系精度。 如果工件上表面有好几个不需加工的表面,则应选择其中与加工表面的相互位置精度要求较高的表面作为粗基准。 以求壁厚均匀、外形对称、少装夹等。 ⑵.选择加工余量要求均匀的重要表面作为粗基准。 例如:机床床身导轨面是其余量要求均匀的重要表面。 因而在加工时选择导轨面作为粗基准,加工床身的底面
排烟阀、排烟风机等防烟排烟设备 ,防火阀、防火卷帘门等防火设备 ,广播、警笛、声光报警器等报警设备 ,关闭空调、电梯迫降、打开人员疏散指示灯等 ,启动消防泵、喷淋泵等消防灭火设备 ,等等。 外控消防设备的启停状态应反馈给联动控制器主机并以光信号形式显示出来 ,使消防控制室 中心 值班人员了解外控设备的实际运行情况 ,消防内部电话、消防内部广播起到通讯联络、对人员疏散和防火灭火的调度指挥作用。
效地解决 TSP 问题有着极高的实际应用价值,也就吸引了众多领域的学者对它进行研究。 尽管 TSP 仍未找到最优解,但是求解它的算法逐渐在改进。 1954 年 Dantzig, Fulkerson 和 Johnson 解决了 49个城市数目的 TSP 问题,经过半个世纪的研究,目前,最大的已成功求解的旅行商问题有 24798 个城市。 TSP 问题的分类 从 TSP问题映射到图的类型