当前位置:文档之家› HDU杭电单片机技术与应用实验指导书

HDU杭电单片机技术与应用实验指导书

HDU杭电单片机技术与应用实验指导书
HDU杭电单片机技术与应用实验指导书

单片机技术与应用实验指导书

王俊宏周洪波暨仲明编

杭州电子科技大学自动化学院

二零零五年十月

目录

第一章系统安装和启动 (1)

第二章调试软件LCA51界面介绍 (2)

1.主界面 (2)

2.菜单介绍................................................................................................................ 错误!未定义书签。3.热键表. (11)

第三章LCA51软件调试 (12)

1.调试界面 (12)

2.调试主要方法和技巧 (13)

实验一扩展存储器读写实验 (15)

实验二P1口、P3口输入、输出实验 (17)

实验三定时器实验 (20)

实验四外部中断实验(急救车与交通灯) (22)

实验五8279显示实验................................................................................................. 错误!未定义书签。

实验六8255扫描键盘、显示实验 (24)

实验七D/A和A/D转换实验 (27)

实验八步进电机控制实验 (31)

实验九压力测量显示实验.......................................................................................... 错误!未定义书签。

实验十单片机串行口与PC机通讯实验 (34)

第一章系统安装和启动

1.实验系统工作在51串口实验/仿真方式

(1)实验台上开关选择51

(2)打开电源,在PC机上打开LCA51软件,运行实验程序。

2.实验系统工作在MCS51方式下开关初始状态

●XB、XB1 : 短路套全插上。

●XB2,XB5 : 短路套向上插(SPEAK端),第10模块处于放音功能。

●第○4模块中:多位开关K3拨向最左(温度控制)端,做温度控制实验用。

●第○29模块中:短路套全部套向右边,由8279来控制键盘、显示。

●XC9(CPU插座)与XC1(CPU51插座)用T598A-C连接板连接起来。

【注意事项】

1、做实验前要做好实验的准备,按实验要求编写好程序,没有编写好程序的同学不允许进入实验室;

2、所有编写的程序都应用英文字母或数字作为文件名、文件夹名及路径,路径尽量简短,不允许用

中文命名;

3、插拔器件及串口通信线时,必须关闭实验机的电源,否则有损坏,责任自负;

4、每次做完实验后,必须整理好实验机的连线,关闭实验机电源,关闭计算机电源;

5、禁止将与实验无关的人员及东西带入实验室,禁止在实验室吃东西、玩游戏。

第二章调试软件LCA51界面介绍

1. 主界面

LCA51软件是集编辑、编译/连接、加载、调试等为一体的集成开发环境(IDE)。用可以在同一界面环境中完成所有任务。主界面大致如图2-1所示。

图2-1

2.5 编译菜单

编译菜单如图2-11所示,该菜单包含对源文件的编译、连接等操作。

图2——11

·编译当前文件 ALT+F9

选择该菜单项将对当前窗口文件进行编译,编译后的有关信息将在输出窗口中显示。LCA51会自动识别目标文件和源文件日期相关性,如果目标文件比源文件新,将不再编译。可以编译的文件类型必须是具有扩展名.C,.PLM,.ASM,.A51。

·连接

选择该菜单项将对当前窗口编译产生的目标文件进行连接,有关连接的信息将在输出窗口中显示。工程打开时,将连接工程文件。此菜单项仅对工程和高级语言有效。

·编译并连接(Ctrl+F9)

选择该菜单项将对当前窗口的高级语言源程序同时进行编译和连接,有关编译和连接的信息将在输出窗口显示。工程打开时,将编译和连接工程文件。此菜单项仅对工程和高级语言有效。

·全部重新编译

选择该菜单项将对当前窗口文件进行重新编译,编译后的有关信息将在输出窗口中显示。工程打开时,将重新编译和连接工程文件。该命令和编译菜单项或编译并连接菜单项的区别是:该命令不识别目标文件和源文件日期的相关性,不管目标文件比源文件新或旧,都编译源文件。

2.6 调试菜单

调试菜单如图2-12所示。该菜单拥有对应用程序进行调试的各种操作。

·加载调试

选择该菜单项,弹出一个加载对话框,如图2-13所示。该命令加载最新编译连接生成的目标程序到实验机中进行调试,对话框中显示加载的文件名,文件信息,实际目标代码的长度,加载空间和加载进度条等,加载完毕后,对话框自动关闭,此时切换到调试状态。调试状态,该菜单无效。

·退出调试

图2——12

进入调试状态,该菜单项有效,用户选择该菜单项后,会退出调试状态,进入编辑状态。相关的调试命令只有在调试状态下才有效。

注意:对于某些型号的仿真机,如果仿真状态设置为B状态,在加载完目标程序后,还会提示需要加载875X.obj文件。用户使用时请查阅相应的仿真机使用手册。

·重新加载调试

选择该菜单项,将重新加载正在调试的目标程序到仿真机,重新进行调试。

·执行到光标所在行(F4)

选择此菜单项,程序从当前PC指针行开始运行,遇到当前光标所在行停止运行,如果运行过程中遇到用户断点,也会停下。如果光标所在行是条说明语句(编译不产生目标代码行),该命令不起作用。

图2——13

·设置当前PC行(F5)

选择此菜单项,当前PC指针将改变到光标所在行的地址。如果光标所在行是条说明语句,该命令不起作用。

·跟踪型单步(F7)

选择此菜单项,仅从当前PC指针行执行源文件的一行语句,然后停止。如果该行语句是调用一函数,则跟踪进入函数中,在执行函数的第一条源语句行前停止。

·通过型单步(F8)

选择此菜单项,仅从当前PC指针行执行源文件的一行语句。然后又停止。如果是调用一函数,将一次运行完整个函数。

·全速运行(F9)

全速运行程序,遇到用户断点或按暂停键停止。

·连续跟踪型单步(Alt+F7)

选择此菜单项,连续执行跟踪型单步。

·连续通过型单步(Alt+F8)

选择此菜单项,连续执行通过型单步。

·从子函数返回

选择此菜单项,全速运行完当前子函数并返回到调用子函数的语句行。该命令只在调试高级语言时有效。

·显示当前PC指针行

将PC指针所在源文件语句行显示在当前窗口屏幕上。

·重新连接仿真机

选择此菜单项,使LCA51与仿真机重新联机。

技巧:如果调试过程中,LCA51与实验机通讯中断,选择该菜单项。在重新联机成功后可以继续进行调试。·总清仿真机(Alt+R)

选择此菜单项,将弹出一个确认对话框,提醒用户是否确实要总清仿真机,总清前先按下仿真机总清键。总清成功后,所有状态全部初始化。对于有软件总清的仿真机型如AEDK51I,将直接给仿真机发总清命令,用户不用再按仿真机的总清键。

·上位机复位(Alt+F2)

选择此菜单项,只对上位机进行复位总清。总清后,再次执行程序时,将从程序的起始地址开始执行。·暂停

当用户程序全速运行时,选择此菜单项,用户程序无条件停止运行。该菜单只对有软件暂停的仿真机如

AEDK51I有效。

·设置或取消断点(Ctrl+F8)

在光标所在行处设置断点,如果光标所在行已有断点,则取消该断点。如果光标所在行是条说明语句,所设断点是无效断点。最多可设的断点数目由仿真机决定。

·清除所有断点

清除用户设置的所有断点。

·对话窗口

选择该菜单项,可以打开一个与AEDK实验机直接对话的窗口,用户可以使用实验机监控命令和实验机对话,此外用户还可以运用此窗口进行目标系统的初步硬件调试。监控命令请查阅相应的实验机使用手册。

2.7观察菜单

观察菜单如图2-14 所示。该菜单主要是用来在观察窗口中添加、删除、修改观察项。

图2——14

·添加观察项(Ctrl+F7)

选择该菜单项,将弹出一个添加观察变量对话框,如图2-15所示。

用户可根据对话框的要求添加希望观察的变量到观察窗口。在对话框中,点击计算/修改按钮,可以察看或修改当前输入栏中变量取值。

图2——15

技巧:如果用户需添加实验机相应存储空间某个单元到观察窗口中,不选自动识别标号复选框,在存储区域选择好实验机的存储空间,在输入框中输入单元地址,点击添加按钮。

2.8设置菜单

设置菜单如图2-16所示,集中了LCA51集成开发环境对通讯口、单文件编译/连接器、环境参数等的设置。

图2——16

·通讯口

选择该菜单项后,弹出一个通讯设置对话框,如图2-18所示,用户可选定通讯口、波特率,并可以对所选定的通讯口进行串口测试。

图2——18

注意:如果通讯串口测试不通过,请将延时因子置高。如果通讯串口测试通过,在调试过程中,仍出现初始化调试失败对话框或通讯不可靠,请将延时因子置高。

·单文件编译器/链接器

选择单文件编译器/连接器设置菜单项后,弹出一个编译器/连接器设置的多选项卡对话框。该菜单项是针对单文件的高级语言C51和PL/M51,对单汇编文件无效,用户可根据自己的要求在对话框中进行相应的设置,如果选中使用自定义编译器命令行复选命令,用户可以使用自定义的命令行进行编译连接,自定义的命令行可在最下面的输入框中输入。

选中C51编译器选项卡,如图2-19所示。相应编译参数的设置用户请参考Franklin C51相关的书籍。用户要选中调试信息(Debug)复选项,编译产生的目标文件才支持源语句调试。点击缺省值按钮,将恢复编译参数为缺省设置。用户自定义命令行参考如下:LARGE DB OE CO OT(4,SIZE)

图2——19

选中PL/M51编译器选项卡,如图2-20所示。相应编译参数的设置用户请参考PL/M51相关的书籍。用户要选中调试信息(Debug)复选项,编译产生的目标文件才支持源语句调试。点击缺省值按钮,将恢复编译参数为缺省设置。用户自定义命令行参考如下:DB CO

选中连接器选项卡,如图2-21所示。相应连接参数的设置用户需要请参考Franklin C51或PL/M51相关的书籍。用户要选中包含调试信息(Debug)复选项,连接产生的目标文件才支持源语句调试。点击缺省值按钮,将恢复编译参数为缺省设置。用户自定义命令行参考如下:DEBUGSYMBOLS DEBUGPUBLICS DEBUGLINES MAP IXREF RAMSIZE (256)

所有的编译参数不是只针对一个文件的设置,而是对所有这类单文件的设置。

图2——20

图2——21

·环境参数

选择该菜单项后,弹出一个对LCA51软件工作环境的多选项卡设置对话框。选中常规选项卡,如图2-22所示。

图2——22

用户可以设置相应的常规选项。

选中“打开上次编辑的文件”,启动LCA51后将自动打开上次编辑的文件。选中“打开上次的工程文件”,启动LCA51后将自动打开上次的工程文件。

选中“退出时保存所有文件”,退出LCA51后将自动保存所有修改过的文件。选中“编辑窗口打开时最大化”,每次打开文件时,将最大化显示文件。

选中“文件被其它程序更改后,发出通知消息”,当其它程序修改或删除了当前编辑的文件,将会通知用户文件已经改变,是否要重新装载或保存等消息。

选中“自动装载被外部程序更改过的文件”时,每次文件更改后,将自动重新装载。

选中“高级用户界面”,用户可以定制软件界面,包括菜单,工具栏,热键等。改变高级用户界面设置,要重新启动LCA51才会生效。选中“Windows2000风格菜单”,会自动根据菜单使用频率,调整菜单项。选中字体选项卡,设置编辑器使用的字体,和编辑模式。选中颜色选项卡,设置编辑器中的各种类型文本

选中调试选项卡,如图2-23所示。

图2——23

选中“编译成功后自动加载到仿真机”,那么每次编译结束,如果没有严重错误,将自动把目标程序加载到仿真机中。

选中“自动监测仿真机型号”,那么在加载调试时会自动对仿真机型号进行识别。

选中“总清后自动设置用户断点”,在调试时,每次仿真机总清后,会重新设置用户断点,方便用户调试。选中“鼠标即点即现快速观察变量取值”,在调试时,用户用鼠标左键点击待观察变量,如果变量有效,将在弹出窗口中显示变量的取值。

“浮点数存取方式”可设置为从高位到低位或从低位到高位。在进行高级语言调试时,因为版本的不同,浮点数存取方式会有所不同,如果用户的浮点数变量不能正常显示,改变存取方式即可。

·语言

该菜单命令可以选择软件的中英文版本。该功能会在以后的版本中加入。

2.9工具菜单

工具菜单如图2-24所示。该菜单包含一些不常用的工具命令。

图2——24

·加载文件到仿真机

选择该菜单项,弹出一个加载目标文件对话框,类似文件打开对话框。可以加载的文件类型是具有扩展名.OBJ、.HEX,.OMF。用户选定要加载的目标文件名后即可将该目标文件加载到AEDK仿真机中去。

·上传仿真机数据

选择该菜单项,将仿真机相关空间的内容上传到PC机中。用户可以选择保存为文件形式。该功能会在以后版本中加入。

选择该菜单项,可以固化芯片。可固化的芯片类型请查阅相关仿真机使用手册。该功能会在以后版本中加入。

·自定义

选择该菜单项,弹出如图2-25所示对话框。用户可以按个人习惯定制菜单栏、工具栏、热键等。该命令只在“设置-环境参数-常规选项卡”中选中高级用户界面选项才有效。

图2——25

2.10窗口菜单

图2——26

窗口菜单如图2-26所示。该菜单控制LCA51主工作区内窗口的分布、排列外观。

·新窗口

将当前编辑窗口中的文档在新窗口打开副本。·分隔窗口

该命令将活动编辑窗口分隔为4个子窗口。

·下一个窗口

按打开的窗口顺序选中下一个窗口为活动窗口。·上一个窗口

按打开的窗口顺序选中上一个窗口为活动窗口。·关闭当前窗口

关闭当前活动的窗口。

·全屏显示

该命令将全屏显示界面。

·层叠(C)

该菜单项将在主工作区内以层叠图案安排所有窗口。·水平平铺(T)

该菜单将在主工作区内以水平平铺形式安排所有窗口。·垂直平铺(T)

该菜单将在主工作区内以垂直平铺形式安排所有窗口。·输出窗口

该菜单项同查看(V)菜单中的输出窗口菜单项功能。·观察窗口

该菜单项同查看(V)菜单中的观察窗口菜单项功能。·对话窗口

该菜单项同查看(V)菜单中的对话窗口菜单项功能。3.热键表

第三章LCA51软件调试

调试是编程的重要部分。调试的目的是找到程序的逻辑错误。当程序不能按希望运行时,就需要对程序进行调试,直到找出原因为止。为了便于用户对应用程序进行调试,本章将介绍LCA51软件的调试界面和调试主要方法和技巧。

1. 调试界面

LCA51是一个集成开发环境,调试和编辑、编译都在同一界面下完成。调试时的界面如图3-1所示。

图3——1

在编辑状态时,界面右下角的当前状态显示为“编辑”,在调试状态时,仿真机没有运行程序时,界面右下角的当前状态显示为“停止”,仿真机运行程序时,界面右下角的当前状态显示为“运行”。

许多菜单命令只有在调试状态才有效,用户选择“调试——加载调试”菜单项后,将加载当前的工程文件或源文件的目标代码,加载完毕,就进入调试状态.如果用户想退出调试状态,选择“调试——退出调试”菜单项。

在调试状态,最下方的状态行显示当前PC指针等常用的寄存器的值。仿真机运行时左上角的图标会不停变动,右下角的当前状态会显示为“运行”。

当前PC指针行的背景颜色为绿色,有效断点行背景颜色为红色,无效断点行背景颜色为棕色。PC指

针行和断点行相同时,背景颜色为粉红色。

观察窗口中显示长期观察的变量的值在不同时候的取值情况。

用户可以在对话窗口中直接通过监控命令和仿真机对话,具体监控命令参考相关仿真机使用手册。

数据窗口中显示整块数据区的内容。快速观察窗口显示当前光标处变量的取值。

2.调试主要方法和技巧

通常一个调试程序应该具备至少四种性能:

·跟踪

·断点

·查看变量

·更改数值

2.1 跟踪调试

调试应用程序所提供的重要性能也许就是跟踪应用程序。跟踪应用程序使用户能够在运行应用程序时,看到PC指针在应用源代码程序中的确切位置,LCA51提供以下方法对程序的执行进行跟踪。

·跟踪型单步热键F7

·通过型单步热键F8

跟踪型单步仅执行一条源语句程序。但是,如果调用一函数,则进入函数中,在执行函数的第一条源语句行前停止。

通过型单步仅执行下一条源语句程序,然后又停止。如果是调用一函数,运行完整个函数并停止在函数返回处。

2.2断点调试

如果已知程序中某块代码实际运行正常的情况下,仍用跟踪调试方法,将大大浪费时间,而且很枯燥,因此调试中第二个重要工具是在源代码中预定处设置断点,大多数调试程序通过使用断点中止程序执行。LCA51软件提供以下方法来设置断点达到中止程序执行目的:

·设置或取消断点 CTRL+F8

·执行到光标所在行 F4

在代码中放置断点方法是事先将光标移动到用户希望放置断点的文本行位置时,按CTRL+F8热键或者点击相应的工具栏图标就可设置断点,最大断点个数由仿真机型号所决定。

注意:如果用户调试高级语言,因为系统要占用2个断点,所以可设置的断点数为最大断点个数-2。

LCA51调试软件还提供一次性断点:执行到光标所在行。如果用户按热键F4,调试程序继续执行程序代码,直到它到达光标行处或调试程序遇到另一个断点。

2.3查看变量

显然,通过一系列指令查看应用程序,了解导致某一错误的执行也是一种非常有效的方法。LCA51软件提供了以下几种方法对变量进行查看。

·观察窗口

·数据窗口程序空间窗口

内部数据窗口

外部数据窗口

通过添加观察项菜单可以将用户希望观察的变量添加到观察窗口中,长期进行观察。用户程序在单步或断点停下时,将更新变量的取值。

用户可以直接移动鼠标到相应的变量名上,点击鼠标左键,将出现一个提示窗口,显示这个变量的当前值。

用户还可以打开程序空间窗口、内部数据窗口、外部数据窗口进行数据块观察。

2.4更改数值

如果用户在调试过程中了解到变量的内容(超值、未定义等)会对程序性能产生影响或引起异常时,立即更改变量的内容是很有效的方法,以确保该值在正确范围内不会产生错误。LCA51软件提供一系列更改变量数值的方法,以便用户能检查程序对整个变量值范围的反应,而无需为设置每个值而重新加载调试。在更改对话框中用户输入要更改的取值,点击确定按钮。用户可以在输入框中输入十六进制或十进制数据。

实验一扩展存储器读写实验

一.实验要求

编制简单程序,对实验板上提供的外部存贮器(62256)进行读写操作。

二.实验目的

1.学习片外存储器扩展方法。

2.学习数据存储器不同的读写方法。

三.实验电路及连线

-

将P1.0接至L1。

四.实验说明

1.单片机系统中,对片外存贮器的读写操作是最基本的操作。用户藉此来熟悉MCS51单片机编程的基本规则、基本指令的使用和使用本仿真实验系统调试程序的方法。

用户编程可以参考示例程序和流程框图。本示例程序中对片外存贮器中一固定地址单元进行读写操作,并比较读写结果是否一致。不一致则说明读写操作不可靠或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发光二极管来表示出错)。读写

数据的选用,本例采用的是55(0101,0101)与AA(1010,1010)。一般采用这两个数据的读写操作就可查出数据总线的短路、断路等,在实际调试用户电路时非常有效。

用户调试该程序时,可以灵活使用单步、断点和变量观察的等方法,来观察程序执行的流程和各中间变量的值。

2.在I状态下执行程序,对实验机数据进行读写,若L1灯亮说明RAM读写正常。

3.也可进入LCA51的调试工具菜单中的对话窗口,用监控命令方式读写RAM,在I状态执行SX0000↓ 55,SPACE,屏幕上应显示55,再键入AA,SPACE,

屏幕上也应显示AA,以上过程执行效果与编程执行效果完全相同。

F注:SX是实验机对外部数据空间读写命令。

5.本例中,第 8 模块中的62256存储器空间为0000~7FFFH。

五.实验程序及框图

实验程序流程框图如下:

实验二P1口、P3口输入、输出实验

2.1 P1口输入、输出实验

一.实验要求

1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

2.P1口做输入口,接八个拨动开关,以实验机上74LS273做输出口,编写程序读取开关状态,将此状态,在发光二极管上显示出来。

二.实验目的

1.学习P1口的使用方法。

2.学习延时子程序的编写和使用。

三. 实验电路及连线

实验一时,P1.0-P1.7接L0-L7。

实验二时,P1.0-P1.7接K0-K7,PO0-PO7接L0-L7。CS273接第7 模块地址译码的F200。

四.实验说明

1.P1口是准双向口。它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。因为内部上拉电阻阻值是20KΩ~40KΩ,故不会对外部输入产生影响。若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。

2.延时子程序的延时计算问题

对于程序DELAY:

MOV R0,#00H

DELAY1:

MOV R1,#0B3H

DJNZ R1,$

DJNZ R0,DELAY1

查指令表可知MOV,DJNZ 指令均需用两个机器周期,而一个机器周期时间长度为12/11.0592MHz,所以该段程序执行时间为:

((0B3+1)×256+1)×2×12÷11059200=100.002mS

五.实验框图

程序框图:

2.2 P3口输出控制继电器实验

一.实验要求

利用P3.5输出高低,控制继电器的开合,实现对外部装置的控制。

二.实验目的

掌握继电器控制的基本方法和经验。

三.实验电路及连线

P3.5 接22 模块的JD。

杭电《过程控制系统》实验报告

实验时间:5月25号 序号: 杭州电子科技大学 自动化学院实验报告 课程名称:自动化仪表与过程控制 实验名称:一阶单容上水箱对象特性测试实验 实验名称:上水箱液位PID整定实验 实验名称:上水箱下水箱液位串级控制实验 指导教师:尚群立 学生姓名:俞超栋 学生学号:09061821

实验一、一阶单容上水箱对象特性测试实验一.实验目的 (1)熟悉单容水箱的数学模型及其阶跃响应曲线。 (2)根据由实际测得的单容水箱液位的阶跃响应曲线,用相关的方法分别确定它们的参数。二.实验设备 AE2000型过程控制实验装置,PC机,DCS控制系统与监控软件。 三、系统结构框图 单容水箱如图1-1所示: Q2 图1-1、单容水箱系统结构图 四、实验原理 阶跃响应测试法是系统在开环运行条件下,待系统稳定后,通过调节器或其他操作器,手动改变对象的输入信号(阶跃信号),同时记录对象的输出数据或阶跃响应曲线。然后根据已给定对象模型的结构形式,对实验数据进行处理,确定模型中各参数。 图解法是确定模型参数的一种实用方法。不同的模型结构,有不同的图解方法。单容水箱对象模型用一阶加时滞环节来近似描述时,常可用两点法直接求取对象参数。 如图1-1所示,设水箱的进水量为Q1,出水量为Q2,水箱的液面高度为h,出水阀

h1( t ) h1(∞ ) 0.63h1(∞) 0 T V 2固定于某一开度值。根据物料动态平衡的关系,求得: 在零初始条件下,对上式求拉氏变换,得: 式中,T 为水箱的时间常数(注意:阀V 2的开度大小会影响到水箱的时间常数),T=R 2*C ,K=R 2为单容对象的放大倍数,R 1、R 2分别为V 1、V 2阀的液阻,C 为水箱的容量系数。令输入流量Q 1 的阶跃变化量为R 0,其拉氏变换式为Q 1(S )=R O /S ,R O 为常量,则输出液位高度的拉氏变换式为: 当t=T 时,则有: h(T)=KR 0(1-e -1)=0.632KR 0=0.632h(∞) 即 h(t)=KR 0(1-e -t/T ) 当t —>∞时,h (∞)=KR 0,因而有 K=h (∞)/R0=输出稳态值/阶跃输入 式(1-2)表示一阶惯性环节的响应曲线是一单调上升的指数函数,如图1-2所示。当由实验求得图1-2所示的 阶跃响应曲线后,该曲线上升到稳态值的63%所对应时间,就是水箱的时间常数T ,该时间常数T 也可以通过坐标原点对响应曲线 图 1-2、 阶跃响应曲线

单片机实验报告

PIC单片机原理与应用实验报告 学校: 学院: 班级: 姓名: 学号: 指导教师:

实验一I/O端口实验 一、实验目的 (1)掌握MPLAP IDE集成开发环境的基本操作。 (2)掌握单片机的I/O端口的设计方法。 (3)掌握在线调试器的使用方法。 (4)学会查阅相关数据手册。 二、实验仪器设备 (1)PC机一台; (2)MPLAP IDE开发软件一套; (3)PICkit3在线调试器一套; (4)APP009实验板一块; 三、实验要求 (1)设计发光LED灯闪烁程序,下载调试,验证功能。 (2)设计流水灯程序,或其他花样彩灯程序,下载调试,验证功能。 (3)设计按按键加1计数程序,下载调试,验证功能。 四、实验步骤 (1)连接在线调试器PICkit3、APP009实验板和计算机; (2)打开MPLAP IDE集成开发环境软件,点击Debugger>Select Tools>PICkit 3 选择调试工具; (3)点击Debugger>Settings,在Settings窗口中点击Power栏,选择由PICkit3向实验板供电; (4)完成实现发光LED灯闪烁实验; 程序代码: #include void delay(void); int main() { while(1) { TRISEbits.TRISE0 = 0; //RE0设置为输出(1输入,0输出); https://www.doczj.com/doc/54160035.html,TE0 =1; //RE0=1输出高电平+5V,亮灯 delay(); //延时 https://www.doczj.com/doc/54160035.html,TE0 =0; //RE0=0输出低电平0V,灭灯 delay(); //延时 } } void delay(void) { long int i; for (i=0;i<65000;i++); } 实验现象:将程序下载到实验板上,运行程序,LED闪烁,通过改变延时函数改变延时时间,进而可以改变LED闪烁的频率。

单片机应用技术试卷A及答案

《单片机应用技术(C语言版)》试卷A一、单项选择题(每题1.5分,共30分) 1、51单片机的CPU主要由()组成。 A、运算器、控制器 B、加法器、寄存器 C、运算器、加法器 D、运算器、译码器 2、程序是以()形式存放在程序存储器中。 A、C语言源程序 B、汇编程序 C、二进制编码 D、BCD码 ——引脚()3、单片机8031的EA。 A、必须接地 B、必须接+5V电源 C、可悬空 D、以上三种视需要而定 4、单片机上电复位后,PC的内容为()。 A、0x0000 B、0x0003 C、0x000B D、0x0800 5、外部扩展存储器时,分时复用做数据线和低8位地址线的是() A、P0口 B、P1口 C、P2口 D、P3口 6、单片机的ALE引脚是以晶振振荡频率的()固定频率输出正脉冲,因此它可作为外部时钟或外部定时脉冲使用。 A、1/2 B、1/4 C、1/6 D、1/12 7、下面叙述不正确的是()。 A、一个C源程序可以由一个或多个函数组成。 B、一个C源程序必须包含一个主函数main( )。 C、在C程序中,注释说明只能位于一条语句的后面。 程序的基本组成部分单位是函数。C、D 8、在C语言中,当do-while语句中的条件为()时,循环结束。 A、0 B、false C、true D、非0 9、下面的while循环执行了()次空语句。 While(i=3); A、无限次 B、0次 C、1次 D、2次 10、C程序总是从()开始执行的。 A、主函数 B、主程序 C、子程序 D、主过程 11、在C51程序中常常把()作为循环体,用于消耗CPU运行时间,产生延时效果。 A、赋值语句 B、表达式语句 C、循环语句 D、空语句 12、在单片机应用系统中,LED数码管显示电路通常有()显示方式。 A、静态 B、动态 C、静态和动态 D、查询 13、共阳极LED数码管加反相器驱动时显示字符“6”的段码是() A、0x06 B、0x7D C、0x82 D、0xFA 14、51单片机的定时器T1用做定时方式时,采用工作方式1,则工作方式控制字为() A、0x01 B、0x05 C、010 D、0x50 15、启动T0开始计数是使TCON的()。

基于STM32的经典项目设计实例

13个基于STM32的经典项目设计实例,全套资料STM32单片机现已火遍大江南北,各种教程资料也是遍布各大网站论坛,可谓一抓一大把,但大部分都差不多。今天总结了几篇电路城上关于STM32 的制作,不能说每篇都是经典,但都是在其他地方找不到的,很有学习参考意义的设计实例。尤其对于新手,是一个学习stm32单片机的“活生生”的范例。 1.开源硬件-基于STM32的自动刹车灯设计 自动刹车灯由电池供电并内置加速度传感器,因此无需额外连接其他线缆。使用两节5号电池时,设计待机时间为一年以上(待机功耗66微安),基本可以实现永不关机,即装即忘。 2.基于STM32F407的openmv项目设计资料 本项目是一个openmv,通过摄像头可以把图像实时传输给显示屏显示。MCU选择的是STM32F407(STM32F407数据手册),ARM Cortex-M4内核,最高频率可达180Mhz,包含一个单精度浮点DSP,一个DCMI(数字相机接口)。 3.STM32无线抢答器 无线抢答器采用STM32F302(STM32F302数据手册)芯片主控,同时用蓝牙,语音模块,数码管,七彩灯等部件构成,当主持人按下抢答键时,数码管进入倒记时,选手做好准备,当数码管从9变为0时,多名选手通过手机上虚拟按键进行抢答,同时语音播报抢答结果,显示屏上显示选手的抢答时间。 4.基于ARM-STM32的两轮自平衡小车 小车直立和方向控制任务都是直接通过控制小车两个电机完成的。假设小车电机可以虚拟地拆解成两个不同功能的驱动电机,它们同轴相连,分别控制小车的直立平衡、左右方向。 5.基于STM32F4高速频谱分析仪完整版(原创) 本系统是以STM32F407(STM32F407数据手册)进行加Blackman预处理,再做1024个点FFT进行频谱分析,最后将数据显示在LCD12864上,以便进行人机交互!该系统可实现任意波形信号的频谱显示,以及可以自动寻找各谐波分量的幅值,频率以及相位并进行8位有效数据显示。 6.基于STM32F4的信号分析仪设计(有视频,有代码) 这次基于discovery的板子做一个信号分析仪,就是练手,搞清楚STM32F4(STM32F4系列数据手册)中的USB固件编写,USB驱动的开发,上位机UI开发等一整套流程,过一把DIY的瘾。 7.基于STM32F4的解魔方机器人-stm32大赛二等奖(有视频) 本系统是基于Cortex-M4内核的STM32微控制器的解魔方机器人,在硬件方面主要有OV7670摄像头,LCD,舵机,在软件方面主要有OV7670的驱动,摄像头颜色识别算法,解魔方算法和舵机动作算法。整个设计过程包括电子系统的设计技术及调试技术,包括需求分析,原理图的绘制,制版,器件采购,安装,焊接,硬件调试,软件模块编写,软件模块测试,系统整体测试等整个开发调试过程。

浙工大过程控制实验报告

实验一:系统认识及对象特性测试 一 实验目的 1了解实验装置结构和组成及组态软件的组成使用。 2 熟悉智能仪表的使用及实验装置和软件的操作。 3熟悉单容液位过程的数学模型及阶跃响应曲线的实验方法。 4学会有实际测的得单容液位过程的阶跃响应曲线,用相关的方法分别确定它们的参数,辨识过程的数学模型。 二 实验内容 1 熟悉用MCGS 组态的智能仪表过程控制系统。 2 用阶跃响应曲线测定单容液位过程的数学模型。 三 实验设备 1 AE2000B 型过程控制实验装置。 2 计算机,万用表各一台。 3 RS232-485转换器1只,串口线1根,实验连接线若干。 四 实验原理 如图1-1所示,设水箱的进水量为Q1,出水量为Q2,水箱的液面高度为h ,出水阀V2固定于某一开度值。根据物料动态平衡的关系,求得: 在零初始条件下,对上式求拉氏变换,得: 式中,T 为水箱的时间常数(注意:阀V2的开度大小会影响到水箱的时间常数),T=R2*C ,K=R2为单容对象的放大倍数,R1、R2分别为V1、V2阀的液阻,C 为水箱的容量系数。 阶跃响应曲线法是指通过调节过程的调节阀,使过程的控制输入产生一个阶跃变化,将被控量随时间变化的阶跃响应曲线记录下来,再根据测试记录的响应曲线求取输入输出之间的数学模型。本实验中输入为电动调节阀的开度给定值OP ,通过改变电动调节阀的开度给定单容过程以阶跃变化的信号,输出为上水箱的液位高度h 。电动调节阀的开度op 通过组态软件界面有计算机传给智能仪表,有智能仪表输出范围为:0~100%。水箱液位高度有由传感变送器检测转换为4~20mA 的标准信号,在经过智能仪表将该信号上传到计算机的组态中,由组态直接换算成高度值,在计算机窗口中显示。因此,单容液位被控对象的传递函数,是包含了由执行结构到检测装置的所有液位单回路物理关系模型 有上述机理建模可知,单容液位过程是带有时滞性的一阶惯性环节,电动调节阀的开度op ,近似看成与流量Q1成正比,当电动调节阀的开度op 为一常量作为阶跃信号时,该单容液位过程的阶跃响应为 需要说明的是表达式(2-3)是初始量为零的情况,如果是在一个稳定的过程下进行的阶跃响应,即输入量是在原来的基础上叠加上op 的变化,则输出表达式是对应原来输出值得基础上的增量表达的是,用输出测量值数据做阶跃响应曲线,应减去原来的正常输出值。 五、实验步骤 A 、熟悉用MCGS 组态的智能仪表过程控制系统 1、设备的连接和检查

单片机实验报告

单片机实验报告 班级:信科09-3 姓名:王艳辉 学号:08093581 指导老师:陈岱 完成时间:2012年1月8日

实验一 I/O接口P1、P3口实验 一,实验题目 1,用P1口做输出,接八只发光二极管,编写程序,使发光二极管循环点亮。 2,用P3口做输入口,接八个扭子开关,通过P1口在实验箱上LED 灯上输出,编写程序读取开关状态,将此状态,在发光二极管上显示出来。 二,实验目的 1.熟悉使用CPLD实验箱进行单片机实验的方法。 2.设计出符合实验要求的CPLD硬件电路。 3.学习单片机仿真开发软件Keil 51的使用方法。 4.学习MCS-51汇编语言编程方法。 5.学习Pl口的使用方法。 6.学习延时子程序的编写和使用。 三,实验准备 P1和P3口为准双向口,Pl、P3的每一位都能独立地定义为输出线或输入线,作为输入时,必须向锁存器相应位写入“l”,该位才能作为输入。803l中所有口锁存器在复位时均置为“1”,如果后来在口锁存器写入过“0”,在需要时应写入一个“l”使它再成为一个输入。再来看一下延时程序的实现。现常用的有两种方法:一是用定时器中断来实现,一是用指令循环来实现。在系统时间允许的情况下可以采用后一种方法。根据实验系统的工作主频,计算出延时0.1s的

时间常量,编制延时程序: MOV R7, #200 (1) DEl:MOy R6,#X (2) DE2:DJNZ R6,DE2 (3) DJNZ R7,DEl (4) 上面MOV、DJNZ指令均需两个机器周期,所以每执行一条指令需1÷0.256us现求出X值: (X*1/0.256+1/0.256+l/0.256)*200+l/0.256=0.1*10^6。解出X=l26。代入上式可知实际延时约0.100O04s,近似符合要求。 四,实验步骤 (1)打开MAX+PLUSⅡ CPLD实验开发系统。 (2)点击File菜单Project子菜单之Name项,出现Project Name 对话框。为当前的实验选择恰当的路径并创建项目名称”E:\AT8031”。(3)点击File菜单之New项,出现对话框,为选择输入方式,选择Graphic Editor File。出现图形编辑窗口。 (4)双击空白编辑区,出现Enter Symbol 对话框。 (5)从Symbol Libraries项中选择mf子目录(双击),在prim子目录中选择输入脚input 和输出引脚output。 (6)在图形编辑窗口中的左侧点击连线按钮,并完成对电路的连线。(7)在引脚的PIN_NAME处左键双击使之变黑,键入引脚名称。

单片机C语言编程实例

单片机C语言编程实例 前言 INTEL公司的MCS-51单片机是目前在我国应用得最广泛的单片机之一.随着 单片机应用技术的不断发展,许多公司纷纷以51单片机为内核,开发出与其兼容的 多种芯片,从而扩充和扩展了其品种和应用领域。 C语言已成为当前举世公认的高效简洁而又贴近硬件的编程语言之—。将C语言向单片机上的移植,始于20世纪80年代的中后期。经过十几年的努力,C语言终于成为专业化单片机上的实用高级语言。用C语言编写的8051单片机的软件,可以大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完善的系统。因此,不管是对于新进入这一领域的开发者来说,还是对于有多年单片机开发经验的人来说,学习单片机的C语言编程技术都是十分必要的。. C语言是具有结构化.模块化编译的通用计算机语言,是国际上应用最广.最多的计算语言之一。C51是在通用C语言的基础上开发出的专门用于51系列单片机编程的C语言.与汇编语言相比,C51在功能上.结构上以及可读性.可移植性.可维护性等方面都有非常明显的优势。目前 最先进、功能最强大、国内用户最多的C51编译器是Keil Soft ware公司推出的KeilC51。第 一章单片机C语言入门 1.1建立您的第一个C项目 使用C语言肯定要使用到C编译器,以便把写好的C程序编译为机器码, 这样单片机才能执行编写好的程序。KEIL uVISION2是众多单片机应用开发软 件中优秀的软件之一,它支持众多不同公司的MCS51架构的芯片,它集编辑, 编译,仿真等于一体,同时还支持PLM、汇编和C语言的程序设计,它的界面 和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真 方面也有很强大的功能。因此很多开发51应用的工程师或普通的单片机爱好者,都对它十分喜欢。 以上简单介绍了KEIL51软件,要使用KEIL51软件,必需先要安装它。KEIL51是一个商业的软件,对于我们这些普通爱好者可以到KEIL中国代理周 立功公司的网站上下载一份能编译2K的DEMO版软件,基本可以满足一般的个

过程控制系统实验报告

实验一过程控制系统的组成认识实验 过程控制及检测装置硬件结构组成认识,控制方案的组成及控制系统连接 一、过程控制实验装置简介 过程控制是指自动控制系统中被控量为温度、压力、流量、液位等变量在工业生产过程中的自动化控制。本系统设计本着培养工程化、参数化、现代化、开放性、综合性人才为出发点。实验对象采用当今工业现场常用的对象,如水箱、锅炉等。仪表采用具有人工智能算法及通讯接口的智能调节仪,上位机监控软件采用MCGS工控组态软件。对象系统还留有扩展连接口,扩展信号接口便于控制系统二次开发,如PLC控制、DCS控制开发等。学生通过对该系统的了解和使用,进入企业后能很快地适应环境并进入角色。同时该系统也为教师和研究生提供一个高水平的学习和研究开发的平台。 二、过程控制实验装置组成 本实验装置由过程控制实验对象、智能仪表控制台及上位机PC三部分组成。 1、被控对象 由上、下二个有机玻璃水箱和不锈钢储水箱串接,4.5千瓦电加热锅炉(由不锈钢锅炉内胆加温筒和封闭外循环不锈钢锅炉夹套构成),压力容器组成。 水箱:包括上、下水箱和储水箱。上、下水箱采用透明长方体有机玻璃,坚实耐用,透明度高,有利于学生直接观察液位的变化和记录结果。水箱结构新颖,内有三个槽,分别是缓冲槽、工作槽、出水槽,还设有溢流口。二个水箱可以组成一阶、二阶单回路液位控制实验和双闭环液位定值控制等实验。 模拟锅炉:锅炉采用不锈钢精致而成,由两层组成:加热层(内胆)和冷却层(夹套)。做温度定值实验时,可用冷却循环水帮助散热。加热层和冷却层都有温度传感器检测其温度,可做温度串级控制、前馈-反馈控制、比值控制、解耦控制等实验。 压力容器:采用不锈钢做成,一大一小两个连通的容器,可以组成一阶、二阶单回路压力控制实验和双闭环串级定值控制等实验。 管道:整个系统管道采用不锈钢管连接而成,彻底避免了管道生锈的可能性。为了提高实验装置的使用年限,储水箱换水可用箱底的出水阀进行。 2、检测装置 (液位)差压变送器:检测上、下二个水箱的液位。其型号:FB0803BAEIR,测量范围:0~1.6KPa,精度:0.5。输出信号:4~20mA DC。 涡轮流量传感器:测量电动调节阀支路的水流量。其型号:LWGY-6A,公称压力:6.3MPa,精度:1.0%,输出信号:4~20mA DC 温度传感器:本装置采用了两个铜电阻温度传感器,分别测量锅炉内胆、锅炉夹套的温度。经过温度传感器,可将温度信号转换为4~20mA DC电流信号。 (气体)扩散硅压力变送器:用来检测压力容器内气体的压力大小。其型号:DBYG-4000A/ST2X1,测量范围:0.6~3.5Mpa连续可调,精度:0.2,输出信号为4~20mA DC。 3、执行机构 电气转换器:型号为QZD-1000,输入信号为4~20mA DC,输出信号:20~100Ka气压信号,输出用来驱动气动调节阀。 气动薄膜小流量调节阀:用来控制压力回路流量的调节。型号为ZMAP-100,输入信号为4~20mA DC或0~5V DC,反馈信号为4~20mA DC。气源信号 压力:20~100Kpa,流通能力:0.0032。阀门控制精度:0.1%~0.3%,环境温度:-4~+200℃。 SCR移相调压模块:采用可控硅移相触发装置,输入控制信号0~5V DC或4~20mA DC 或10K电位器,输出电压变化范围:0~220V AC,用来控制电加热管加热。 水泵:型号为UPA90,流量为30升/分,扬程为8米,功率为180W。

杭电自动化单片机实验报告

单片机原理与应用及 C51程序设计 实验报告 实验名称:单片机技术实验 实验一继电器控制输出实验 一、实验目的 1.掌握STC12C5A16S2单片机的最基本电路的设计; 2.了解单片机I/O端口的使用方法; 3.了解继电器和蜂鸣器控制电路以及小电压控制大电压的方法。

二、实验要求 1.利用STC12C5A16S2单片机的P1.2、P1.3口作按钮S9和S10输入,P1.0 和P1.1口作开关量输出,并分别控制一个5V的继电器和蜂鸣器。 2.当S9闭合时,P1.0控制继电器闭合并控制灯泡闪亮;当S9断开时,继 电器触电断开,灯泡不亮; 3.当S10闭合时,P1.1控制蜂鸣器闭合并发出声音;当S10断开时,蜂鸣 器不响。 三、电路 四、原理说明 Q1、Q2为9012三极管即PNP型,低电平导通,当S9或S10按下时,相应的IO口拉低,当P1.0或P1.1赋0时即可控制继电器的吸合活着蜂鸣器的发声。 五、程序代码 #include sbit L1=P1^1; sbit L2=P1^2; sbit L3=P1^3; sbit L0=P1^0;//定义位变量 void delay() { int i,j; for(i=0;i<250;i++) for(j=0;j<250;j++);//利用系统时钟,定义延时函数 }

void main () { int n=20; while(1) //不断循环检测 { if(L2==0) //判断S9输入 { while(n--) { L0=0; delay(); L0=1; delay(); //灯泡以2*delay为周期闪亮 } n=20; } if(L3==0) //判断S10闭合 { while(n--) { L1=0; delay(); L1=1; delay(); //蜂鸣器以2*delay为周期发声 } n=20; } } } 实验二 LED轮换点亮实验 一、实验目的 1.掌握STC12C5A16S2单片机的I/O电路设计; 2.学习SN74HC573数据锁存输出方法。 二、实验要求 1.利用SN74HC573对STC12C5A16S2单片机的P0进行扩展,驱动LED 控制输出; 2.编写程序,使P0.0~P0.7上的发光二极管循环点亮;P2.7控制 SN74HC573芯片的使能; 三、电路

单片机应用技术课后习题参考答案

1 习题1答案 1.2 填空题 (1)单片级应用系统是由硬件系统、软件系统组成的 (2)除了单片机和电源外,单片机最小系统包括时钟电路、复位电路 (3)除了电源和电线引脚外,XTAL1、XTAL2、RST、EA引脚信号必须连接相应电 路 (4)51系列单片机的存储器主要有4个物理存储空间,即片内数据存储器、片内程序存储器、片外数据存储器、片外程序存储器 (5)51系列单片机的XTAL1和XTAL2引脚是时钟电路 (6)51系列单片机的应用程序一般存放在程序存储器 (7)片内RAM低128单元,按其用途划分为工作寄存器组、位寻址区、用户RAM区(8)但振荡脉冲频率为12MHz时,一个机器周期为1us,当振荡脉冲频率为6MHz时,一个机器周期为2us (9)51系列单片机的复位电路有两种,即上电复位电路、按键复位电路 (10)输入单片机的复位信号需延续2个机器周期以上的高电平即为有效。 1.3 (4)什么是机器周期?机器周期和晶振频率有何关系?当晶振频率为6MHz时,机器周期是多少? 答: 规定一个机器周期的宽度为12个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。 当振荡脉冲频率为6 MHz时,一个机器周期为2 μs。 (5)51系列单片机常用的复位方法有哪几种?画电路图并说明其工作原理。 答: (a)上电复位电路(b)按键复位电路 单片机常见的复位电路 图(a)为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RST端的电位

与VCC相同,随着充电电流的减少,RST的电位逐渐下降。只要保证RST为高电平的时间大于两个机器周期,便能正常复位。 图(b)为按键复位电路。该电路除具有上电复位功能外,若要复位,只需按图(b)中的RESET键,此时电源VCC经电阻R1、R2分压,在RST端产生一个复位高电平。 习题3 答案 3.2 填空题 (2)用C51编程访问51单片机的并行I/O口是,可以按字节,寻址操作,还可以按位操作(4)C51中定义一个可位寻址变量FLAG访问P3口的P3.1引脚的方法是s bit FLAG=P3^1; (10)下面的while循环执行了无限次空语句。 i=3; While(i!=0); (15)在以下的数组定义中,关键字“code”是为了把tab数组存储在程序存储器ROM中 Unsigned char code b[]={}; 3.3 上机操作题 (1) //xiti3_3_1.c——第三章习题3.3上机操作题(1) #include void delay(unsigned char i); //延时函数声明 void main() //主函数 { while(1){ P1=0x55; //按状态1的方式点亮8个LED delay(200); //延时 P1=0xaa; //按状态2的方式点亮8个LED delay(200); //延时 } } void delay(unsigned char i) //延时函数参见任务1程序ex1_1.c (2) //xiti3_3_2.c——第三章习题3.3上机操作题(2) #include //包含头文件REG51.H void delay(unsigned char i); //延时函数声明 void main() //主函数 { unsigned char i,l,r; while(1){ l=0x10; // 高4位灯的位置初值为00010000B r=0x08; // 低4位灯的位置初值为00001000B

《过程控制系统》实验报告

《过程控制系统》实验报告 学院:电气学院 专业:自动化 班级:1505 姓名及学号:任杰311508070822 日期:2018.6.3

实验一、单容水箱特性测试 一、 实验目的 1. 掌握单容水箱阶跃响应测试方法,并记录相应液位的响应曲线。 2. 根据实验得到的液位阶跃响应曲线,用相关的方法确定被测对象的特征参数T 和传递函数。 二、 实验设备 1. THJ-FCS 型高级过程控制系统实验装置。 2. 计算机及相关软件。 3. 万用电表一只。 三、 实验原理 图1 单容水箱特性测试结构图 由图 2-1 可知,对象的被控制量为水箱的液位 h ,控制量(输入量)是流入水箱中的流量 Q 1,手动阀 V 1 和 V 2 的开度都为定值,Q 2 为水箱中流出的流量。根据物料平衡关系,在平衡状态时02010=-Q Q (式2-1),动态时,则有dt dV Q Q = -21,(式2-2)式中 V 为水箱的贮水容积,dt dV 为水贮存量的变化率,它与 h 的关

系为Adh dV =,即dt dh A dt dV =(式2-3),A 为水箱的底面积。把式(2-3)代入式(2-2)得dt dh A Q Q =-21(式2-4)基于S R h Q =2,S R 为阀2V 的液阻,(式2-4)可改写为dt dh A R h Q S =-1,1KQ h dt dh AR S =+或()()1s 1+=Ts K s Q H (式2-5)式中s AR T =它与水箱的底面积A 和2V 的S R 有关,(式2-5)为单容水箱的传递函数。若令()S R S Q 01=,常数=0R ,则式2-5可表示为()T S KR S R K S R T S T K S H 11/000+-=?+= 对上式取拉氏反变换得()()T t e KR t h /01--=(式2-6),当∞→t 时()0KR h =∞,因而有()0/R h K ∞==输出稳态值/阶跃输入,当T t =时,()() ()∞==-=-h KR e KR T h 632.0632.01010,式2-6表示一阶惯性响应曲线是一单调上升的指数函数如下图2-2所示 当由实验求得图 2-2 所示的阶跃响应曲线后,该曲线上升到稳态值的 63%所对应的时间,就是水箱的时间常数 T 。该时间常数 T 也可以通过 坐标原点对响应曲线作切线,切线与稳态值交点所对应的时间就是 时间常数 T ,由响应曲线求得 K 和 T 后,就能求得单容水箱的传递函 数如式(2-5)所示。 如果对象的阶跃响应曲线为图 2-3,则在此曲线的拐点 D 处作一切线,它与时间轴交于 B 点,与响应稳态值的渐近线交于 A 点。图中OB 即为对象的滞后时间

单片机实验报告

汇编语言程序设计 1)编译后,系统提示:目标越界,改为AJMP后编译通过,将ORG 07FFH 改为0800H, 系统提示:目标越界,这说明AJMP可以在2KB 范围内无条件转移。 2.改为LJMP编译通过,这说明LJMP可以在64KB 范围内无条件转移。 3.将LJMP LP1改为SJMP LP0,机器码为80FC,其中FC为偏移量,它是一个补码,01H~7FH说明向PC(增大√、减小)方向跳,80H~FFH说明向PC(增大、减小√)方向跳,这说明SJMP可以在当前PC值-128B~+127B 范围内无条件转移。 1、X、Y以补码的形式存放在20H、21H中,编写程序实现如下函数: 实验程序: MOV A,20H JZ ZREO JB ACC.7,NEG MOV 21H,#01H SJMP PEND ZREO:MOV 21H,A SJMP PEND NEG:MOV 21H,#0FFH PEND:SJMP$ END 结果记录: 1.将数89H存放于20H中,运行程序,观察到21H单元中的内容为FF; 2.将数05H存放于20H中,运行程序,观察到21H单元中的内容为01; 3.将数00H存放于20H中,运行程序,观察到21H单元中的内容为00; 2、将20H~27H中的压缩BCD码拆为两个单字节BCD码,存放在以2000H为首地址的外部RAM 中。 实验程序: MOV R0,#20H MOV R7,#08H MOV DPTR,#2000H LOOP:ACALL CZ INC R0

INC DPTR DJNZ R7,LOOP SJMP $ CZ:MOV A,@R0 SWAP A ANL A,#0FH MOVX @DPTR,A INC DPTR MOV A,@R0 ANL A,#0FH MOVX @DPTR,A RET END 结果记录: 20H 21H 22H 23H 24H 25H 26H 27H 87H 54H 36H 23 19H 43H 77H 69H 2000H 2002H2004H2006H2008H200AH200CH200EH 07H 04H 06H 03H 09H 03H 07H 09H 2001H 2003H2005H2007H2009H200BH200DH200FH 08H 05H 03H 02H 01H 04H 07H 06H 1、数在计算机中是以补码形式存放的,因此,判断数据的正负,往往采用判断第7 位,是0 则为正数,是1 则为正数 2、实验内容2中JZ ZREO 的机器码为600DH ,其中0DH 为偏移量,当前PC值0004 加上这个偏移量等于0011H ,这正是即将执行的程序的首地址,即标号为ZREO 语句。程序计算器PC的功能是指向下一条指令,因此,跳转语句是依靠偏移量来改变程序计数器PC的值,从而改变程序的流向。 3、分支程序一定要注意分支的语句标号的正确性,每一分支之间必须用跳转(如SJMP)指令分隔,并跳转到相应标号。 4、子程序往往用间址寄存器传递数据,内部RAM用@Ri ,外部RAM用@DPTR ,绝对不能用直接地址。最后以RET 结尾。 5、循环程序往往用寄存器传递数据,用R7控制循环次数,用调用作为循环体,用指令INC 修改地址指针,用指令DJNZ 判断循环结束。 6、执行ACALL前(SP)= 07H ,执行ACALL时,(SP)= 09H ,(08H)= 09H ,(09H)= 00H ,(PC)= 000FH ,PC的值正是子程序的入口地址,而堆栈中这两个单元存放的是断点处PC的值;执行到RET后,(SP)= 07H , 原08H的值弹给(PC)7~0 ,原09H的值弹给(PC)15~8 ,因此,返回断点继续执行主程序。

《单片机应用技术》课程标准

电子技术应用专业 《单片机应用技术》课程标准 增加附录:51或52单片机说明书,编程软件烧程序软件使用说明,增加实验中使用的各种器件说明 修改任务内容:去掉任务ISP下载线制作 增加点阵及液晶显示 一、概述 (一)课程性质 单片机技术是现代电子工程领域一门飞速发展的技术,其在教学及产业界的技术推广仍然是当今科学技术发展的热点。学习单片机并掌握其应用已经成为电子类学生必须具备的技能,也是现代工科学生就业的一个基本条件。 《单片机应用技术》是电子技术应用专业的一门职业技术课。它以模拟电子技术、数字电子技术、C语言等课程为基础。后续课程如电子产品装调技术、电子产品检测技术及相关实训课程,一般都要应用到单片机系统的应用。它可以充分体现学生利用自己所掌握的知识解决实际工程问题的能力。单片机知识在电子类专业整个课程体系中处于承上启下的核心地位。 通过本课程的学习,使学生掌握单片机技术及其在工业控制、经济建设和日常生活中的应用,培养学生实践能力、创新能力,为将来从事相关产品的检测和维护等工作奠定坚实的基础,为学生将来在电子类专

业领域进一步发展打下良好基础。 (二)课程基本理念 本课程的设计突破了学科体系模式,打破了原来各学科体系的框架,将各学科的内容按“项目”进行整合。本课程的“项目”以职业实践活动为主线,因而,它是跨学科的,且理论与实践一体化。强调学生个人适应劳动力市场变化的需要。因而,本课程的设计兼顾了企业和个人两者的需求,着眼于人的全面发展,以培养全面素质为基础,以提高综合职业能力为核心。 本课程包含了单片机应用技术的五个项目,每个项目均由若干个具体的典型工作任务组成,每个任务均将相关知识和实践(含实验)过程有机结合,力求体现“做中学”、“学中做”的教学理念;本课程内容的选择上降低理论重心,突出实际应用,注重培养学生的应用能力和解决问题的实际工作能力。 (三)课程设计思路 本课程标准注重培养分析问题、解决问题的能力,强化学生动手实践能力,遵循学生认知规律,紧密结合应用电子专业的发展需要,为将来从事应用电子产品的设计、检测奠定坚实的基础。将本课程的教学活动分解设计成若干项目或工作情景,以项目为单位组织教学,并以典型设备为载体,通过具体案例,按单片机项目实施的顺序逐步展开,让学员在掌握技能的同时,引出相关专业理论知识,使学生在技能训练过程中加深对专业知识、技能的理解和应用,培养学生的综合职业能力,满足学生职业生涯发展的需要。 二、课程目标 1、总目标 本课程先修要求:学生已学习《模拟电子技术》、《数字电子技术》等相关专业基础理论课程,有一定的电路识图、分析能力后进行本专业能力实训。通过实训学生应达到: (一)应使学生熟悉单片机的原理与结构,通过试验实训的训练和一些简易单片机项目制作,掌握单片机控制的基本原理、接口技术,掌

过程控制实验报告

东南大学自动化学院 实验报告 课程名称:过程控制实验 实验名称:水箱液位控制系统 院(系):自动化专业:自动化姓名:学号: 实验室:实验组别: 同组人员: 实验时间: 评定成绩:审阅教师:

目录 一、系统概论 (3) 二、对象的认识..................................... 错误!未定义书签。 三、执行机构 ....................................... 错误!未定义书签。 四、单回路调节系统................................ 错误!未定义书签。 五、串级调节系统Ⅰ................................ 错误!未定义书签。 六、串级调节系统Ⅱ................................ 错误!未定义书签。 七、前馈控制 ....................................... 错误!未定义书签。 八、软件平台的开发................................ 错误!未定义书签。

一、系统概论 实验设备 组成器件 图实验设备正面图图实验设备背面图 本实验设备包含水箱、加热器、变频器、泵、电动阀、电磁阀、进水阀、出水阀、增压器、流量计、压力传感器、温度传感器、操作面板等。 铭牌 ·加热控制器: 功率1500w,电源220V(单相输入) ·泵: Q40-150L/min,,,380V,VL450V, IP44,50Hz,2550rpm,,,,ICL B ·全自动微型家用增压器: 型号15WZ-10,单相电容运转马达 最高扬程10m,最大流量20L/min,级数2,转速2800rmp,电压220V, 电流,频率50Hz,电容μF,功率80w,绝缘等级 E ·LWY-C型涡轮流量计: 口径4-200mm,介质温度-20—+100℃,环境温度-20—+45℃,供电电源+24V, 标准信号输出4-20mA,负载0-750Ω,精确度±%Fs ±%Fs,外壳防护等级 IP65 ·压力传感器 YMC303P-1-A-3 RANGE 0-6kPa,OUT 4-20mADC,SUPPLY 24VDC,IP67,RED SUP+,BLUE OUT+/V-·SBWZ温度传感器 PT100 量程0-100℃,精度%Fs,输出4-20mADC,电源24VDC

实验报告(单片机实验报告)

1 双字节无符号数加法 例1: 双字节无符号数加法(R0 R1)+(R2 R3) → (R4 R5), R0、 R2、 R4存放16位数的高字节, R1、 R3、 R5存放低字节。已知(R0 R1)=(93h,79h);(R2 R3)=(25h,a4h) 假设其和不超过16位。请编程。 org 0000h Ljmp start org 0050h start: mov R0,#93h mov R1, #79h mov R2,#25h mov R3, #0a4h mov A,R1 ADD A,R3 mov R5,A mov A,R0 ADDC A,R2 mov R4,A ss: jmp ss end 2双字节无符号数减法

例2: 双字节无符号数相减(R0 R1)-(R2 R3) → (R4 R5)。R0、 R2、R4存放16位数的高字节, R1、 R3、 R5存放低字节,已知(R0 R1)=(93h,79h);(R2 R3)=(25h,a4h);请编程。同学自己可以设置被减数与减数数值 org 0000h Ljmp start org 0050h start: mov R0,#93h mov R1,#79h mov R2,#25h mov R3,#0a4h mov A,R1 CLR C SUBB A,R3 mov R5,A mov A,R0 SUBB A,R2 mov R4,A ss: jmp ss end 3双字节数乘以单字节数

例3: 利用单字节乘法指令,进行双字节数乘以单字节数运算。若被乘数为16位无符号数, 地址为M1(30H) 和M1+1(31H)(低位先、高位后), 乘数为8位无符号数, 地址为M2(32H), 积由高位到低位存入R2、 R3和R4三个寄存器中。 30H,31H,32H内容 12H,34H,56H ; org 0000h Ljmp start org 0050h start: mov 30h,#12h mov 31h,#34h mov 32h,#56h mov a,(30h) mov b,(32h) mul ab mov R3,b mov R4,a mov a,(31h) mov b,(32h) mul ab add A,R3 mov R3,A

《单片机应用技术》试卷B及答案

《单片机应用技术(C 语言版)》试卷B 一、 单项选择题(每题1.5分,共30分) 1、51单片机的CPU 主要由( )组成。 A 、运算器、控制器 B 、加法器、寄存器 C 、运算器、加法器 D 、运算器、译码器 2、PSW 中的RS1和RS0用来( ) 。 A 、选择工作方式 B 、指示复位 C 、选择定时器 D 、选择工作寄存器组 3、单片机8031的EA —— 引脚( )。 A 、必须接地 B 、必须接+5V 电源 C 、可悬空 D 、以上三种视需要而定 4、单片机上电复位后,PC 的内容为( )。 A 、0x0000 B 、0x0003 C 、0x000B D 、0x0800 5、单片机的4个并行I/O 端口作为通用I/O 端口使用,在输出数据时,必须外接上拉电阻的是( ) A 、P0口 B 、P1口 C 、P2口 D 、P3口 6、单片机的ALE 引脚是以晶振振荡频率的( )固定频率输出正脉冲,因此它可作为外部时钟或外部定时脉冲使用。 A 、1/2 B 、1/4 C 、1/6 D 、1/12 7、下面叙述不正确的是( )。 A 、一个C 源程序可以由一个或多个函数组成。 B 、一个 C 源程序必须包含一个主函数main( )。 C 、在C 程序中,注释说明只能位于一条语句的后面。 D 、C 程序的基本组成部分单位是函数。 8、在C51语言的if 语句中,用做判断的表达式为( )。 A 、关系表达式 B 、逻辑表达式 C 、算术表达式 D 、任意表达式

9、下面的while循环执行了()次空语句。 While(i=3); A、无限次 B、0次 C、1次 D、2次 10、C程序总是从()开始执行的。 A、主函数 B、主程序 C、子程序 D、主过程 11、在C51程序中常常把()作为循环体,用于消耗CPU运行时间,产生延时效果。 A、赋值语句 B、表达式语句 C、循环语句 D、空语句 12、在单片机应用系统中,LED数码管显示电路通常有()显示方式。 A、静态 B、动态 C、静态和动态 D、查询 13、在共阳极数码管使用中,若要仅显示小数点,则其相应的字段码是()。 A、0x80 B、0x10 C、0x40 D、0x7F 14、51单片机的定时器T1用做定时方式时,采用工作方式1,则工作方式控制字为() A、0x01 B、0x05 C、0x10 D、0x50 15、MCS-51系列单片机串行口发送/接收中断源的工作过程是:当串行口接收或发送完一帧数据时,将SCON中的(),向CPU申请中断。 A、RI或TI置1 B、RI或TI置0 C、RI置1或TI置0 D、RI置0或TI置1 16、在定时/计数器的计数初值计算中,若设最大计数值为M,对于工作方式1下的M值为()。 A、M=213 = 8192 B、M=28 = 256 C、M=24 = 16 D、M=216 = 65536 17、51单片机的串行口是()。 A、单工 B、全双工 C、半双工 D、并行口 18、表示串行数据传输速率的指标为()。 A、USART B、UART C、字符帧 D、波特率 19、串行口的控制寄存器为()。 A、SMOD B、SCON C、SBUF D、PCON 20、串行口的发送数据和接收数据端为()。 A、TXD和RXD B、TI和RI C、TB8和RB8 D、REN 二、填空题(每空1.5分,共30分)

相关主题
文本预览
相关文档 最新文档