输入输出流实验六
实验一 P1口输入、输出实验
实验一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接8300H。
四.实验说明1.P1口是准双向口。
它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20KΩ~40KΩ,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
2.延时子程序的延时计算问题对于程序DELAY:MOV R0,#00HDELAY1:MOV R1,#0B3HDJNZ R1,$DJNZ R0,DELAY1查指令表可知MOV,DJNZ 指令均需用两个机器周期,而一个机器周期时间长度为12/11.0592MHz,所以该段程序执行时间为:((0B3+1)×256+1)×2×12÷11059200=100.002mS五.实验框图程序框图:TP1A.ASM主程序框图TP1B.ASM主程序框图六.附加实验内容1、用P1口的P1.0-P1.3作输出口接4个发光二极管,P1.4-P1.7作输入口接4个拨动开关,将开关的状态读进来并在发光二极管上显示。
七.实验报告要求1、书写实验目的、实验内容、实验连线、以及实验中的观察结果;2、画出流程图、编写实验程序,写出实验的心得体会。
实验六射频放大器的设计
实验六射频放⼤器的设计实验六射频放⼤器的设计、仿真和测试⼀、实验⽬的1、了解描述射频放⼤器的主要性能参数及类型2、掌握放⼤器偏置电路设计⽅法3、了解最⼩噪声、最⼤增益放⼤器的基本设计⽅法4、掌握放⼤器输⼊、输出⽹络的基本结构类型5、掌握⽤ADS 进⾏放⼤器仿真的⽅法与步骤⼆、实验原理常⽤的微波晶体管放⼤器有低噪声放⼤器、宽带放⼤器和功率放⼤器。
⽬的是提⾼信号的功率和幅度。
低噪声放⼤器的主要作⽤是放⼤天线从空中接收到的微弱信号,减⼩噪声⼲扰,以供系统解调出所需的信息数据。
功率放⼤器⼀般在系统的输出级,为天线提供辐射信号。
微波低噪声放⼤器的主要技术指标有:噪声系数与噪声温度、功率增益、增益平坦度、⼯作频带、动态范围、输⼊输出端⼝驻波和反射损耗、稳定性、1dB 压缩点。
1、⼆端⼝⽹络的功率与功率增益及主要指标信号源的资⽤功率实际功率增益转换功率增益资⽤功率增益*max in sin a in P P P Γ=Γ==*out LL L max an =P P P ==ΓΓ22212222(1)1(1)L Lin L in S P G P S -Γ==-Γ-Γ222210222211/11s LT L a s Ls in LG P P S G G G S -Γ-Γ===-ΓΓ-Γ()22212211(1)/11s avsan a soutS GP P S -Γ==-Γ-Γ2.放⼤器的稳定性⽆条件稳定:不管源阻抗和负载阻抗如何,放⼤器输⼊输出端反射系数的模都⼩于1,⽹络⽆条件稳定(绝对稳定)条件稳定:在某些范围源阻抗和负载阻抗内,放⼤器输⼊输出反射系数的模⼩于1,⽹络条件稳定(潜在不稳定)由于放⼤器件内部S12产⽣的负反馈导致放⼤器⼯作不稳定!稳定性设计是设计放⼤器时⾸要考虑的问题。
匹配⽹络与频率有关;稳定性与频率相关;可能情况是设计的频率稳定⽽其他频率不稳定。
⽆条件稳定的充分必要条件:稳定性系数K输⼊、输出稳定性圆(条件稳定):|Гin|=1 或 |Гout|=1在Smith 圆图上的轨迹输出稳定性圆判别该输出稳定性区域?稳定圆不包含匹配点,|S11|<1时: |Гin|<1,稳定,匹配点在稳定区 |S11|>1时: |Гin|>1,不稳定,匹配点在不稳定区输⼊稳定性圆(条件稳定)3.最⼤增益放⼤器设计(共轭匹配)源和负载与晶体管之间达到共轭匹配时,可实现最⼤增益。
java实验指导书
实验一java开发环境及语言基础实验目的(1)确保正确配置java开发环境。
(2)了解javac和java命令的使用。
(3)熟悉java中的运算符。
(4)掌握条件语句和循环语句的使用。
(5)掌握通过命令行参数接受数据。
(6)掌握用Scanner类接受数据。
实验内容(1)在控制台中输入java命令,查看输入结果。
(2)编写一个java程序,计算半径为3.0的圆周长和面积并输出结果。
(3)求a+aa+aaa+...+a...a(n个)的和,其中a为1~9之间的整数。
例如,当a=3、n=4时,求3+33+333+3333的和。
(4)给定一个正整数m,统计其位数,分别打印每一位数字,再按照逆序打印出各位数字。
(5)用Scanner类方法输入三角形三边求三角形面积。
实验要求(1)JDK的安装及配置。
(2)在DOS及eclipse下编辑、编译运行第一个java程序:hello world。
(3)求圆周长和面积用方法实现,主函数调用。
(4)从命令行输入1~9之间的整数a,当所求的和大与106时,输出相应的a值及所求的和值。
(5)用Scanner类的方法输入正整数m,m的值不应该超过99999,否则给出错误信息。
应引入包:import java.util.Scanner,然后在需要的方法中实例化对象:Scanner sc = new Scanner(System.in),最后调用对象的next方法,如int n=nextInt(),接受整数。
实验二数组实验目的(1)掌握数组的定义和使用方法。
(2)熟悉数组的排序、查找的方法。
(3)巩固循环的使用。
实验内容(1)使用for循环,将二维数组的行与列互换,即完成矩阵的转置。
(2)编写数组的排序程序。
(3)编写杨辉三角。
实验要求(1)编写一个界面1 选择排序2 冒泡排序3插入排序4 快速排序5 退出当选择1、2、3、4、5的时候完成相应的功能。
(2)杨辉三角形状为等腰三角形实验三字符串实验目的(1)掌握正则表达式的使用。
C++实验指导书专业资料
C++程序设计实验指导书实验一C++程序的运营环境和运营(2学时)实验名称: C++程序的运营环境和运营实验目的:1.熟悉C与C++的编程区别;2.熟悉C++的函数重载。
实验规定:求两个数的平方和。
规定如下:1、有int, float和long型的数据各3个;2.重载SumSqure函数求两个相同类型变量的平方和。
1、实验环节:2、添加头文献#include <iostream>和名字空间using namespace std。
若要使用cin和cout标准输入输出流, 则必须添加上述两个内容。
3、构建重载SumSqure函数。
SumSqure函数的功能是对输入的两个同类型形参a, b求其平方和, 并将结果返回。
对于输入和返回的不同类型int, float, long, 其函数内部实现代码是同样的, 所以可运用函数的重载写出三个SumSqure函数。
4、main函数中的赋值。
定义int, float, long三种类型的数据, 分别调用SumSqure函数, 测试其结果。
5、调用SumSqure函数。
注意SumSqure函数重载的调用, 根据SumSqure函数的定义可知: 实参必须是同一种类型的变量才干调用不同的SumSqure, 针对不同类型求平方和。
实验二类与对象(一)(4学时)实验名称: 类与对象(一)实验目的:1.掌握类的设计;2.掌握对象的创建;3.实现一个简朴的成员函数设计。
实验规定:求3个长方体的体积, 编写一个基于对象的程序, 数据成员涉及lenth, width, height。
规定用成员函数实现以下功能:1.由键盘分别输入3个长方体的长、宽、高;2.计算长方体的体积;3.输出3个长方体的体积。
实验环节:建立三个文献, 分别存储长方体类的声明头文献, 长方体类的定义文献和main函数测试文献。
注意: 类的头文献和类的定义实现文献的命名要一致!头文献信息:头文献长方体类的声明中, 类成员变量有:lenth,width,height;类成员函数有:V olumeCalculation(), InputData()。
《Java程序设计》课程教学大纲
《Java程序设计》课程教学大纲课程编号:08120031课程名称:Java程序设计/JAVA Programming总学时/学分:48/3(其中理论32学时,实验16学时)适用专业:计算机科学与技术一、课程目标通过本课程学习,学生应达到如下目标:目标1. 识别Java语言特点、基本语法、语言机制。
目标2. 将面向对象方法知识运用在程序设计案例中,能使用JAVA常用类、枚举、lambda 表达式、容器、泛型进行实例编程验证。
目标3. 利用JavaSE中的异常处理、输入输出等技术来表达处理程序应用问题。
目标4. 将图形用户界面和数据库编程技术运用中综合应用程序设计中。
目标5. 搭建Java开发环境,能设计实现各种Java技术的应用程序,且能测试运行。
二、课程目标对毕业要求的支撑三、教学过程安排四、实验或上机内容五、课程目标达成方法六、考核标准本门课程考核包括6个部分,分别为考试、作业、实验、讨论和测验。
具体要求及评分方法如下:1、期末考试试卷知识点要求2、作业3、实验4、讨论设置讨论课一次,要求学生按照讨论题目分组查阅资料,归纳总结,撰写报告。
5、测验随堂测验,老师给出题目,学生回答。
具体有任课老师给出评分标准。
七、教材及主要参考资料[1] 黑马程序员. Java基础入门(第2版)[M]. 清华大学出版社, 2018.[2] 郑人杰、马素霞、殷人昆. 软件工程概论(第2版)[M]. 机械工业出版社,2016.[3] Gay S.Horstmann. Java核心技术(第10版)[M]. 机械工业出版社,2016.[4] Y.Daniel Liang(美). Java语言程序设计(第10版)[M]. 机械工业出版社.2015.[5] 李刚. 疯狂Java讲义(第4版)[M]. 电子工业出版社,2018.[6] 封亚飞. 揭秘Java虚拟机[M]. 电子工业出版社,2017.[7] Bruce Eckel(美). Java编程思想(第4版)[M]. 机械工业出版社,2007.。
实验六:基本输入输出实验
实验六:P3.0口输入、P1.0口输出实验一、实验目的:1、掌握P3口、P1口的简单使用。
2、了解并掌握80C51单片机I/O口的基本输入、输出功能。
二、实验器材:1、计算机一台2、Keil Uvision4软件一套三、实验内容:1、P1作为输出口,接8个发光二极管,P3.0口输入一脉冲,控制P1口按16进制加一方式点亮发光二极管。
2、P0作为输出口,接8个发光二极管,P1口作为输入口,接8个开关,通过任意组合开关的输入状态,得到不同的输出状态。
四、实验原理:1、由80C51组成的单片机系统在通常情况下,P0口分时复用作为低8位地址、数据总线,P2口提供高8位地址,P3口用作第二功能,只有P1口通常用作I/O口。
P1口是8位准双向口,它的每一位都可独立的定义为输入或输出,因此,既可以作为8位的并行I/O口,也可作为8位的输入输出端。
2、当某一口工作在输入方式时,对应位的锁存器必须先置1,才能正确地读到引脚上的信号,否则,执行读引脚指令时,若对应位的锁存器的值为0,读的结果永远为0。
五、程序框图:(b)实验2参考流程图(a)实验1参考流程图六、实验步骤:1、打开Keil程序,执行菜单命令“Project”“New Project”,创建一个项目(基本输入输出),并选择单片机型号为AT89C51 。
2、执行菜单命令“File”“New”创建文件,输入源程序,保存为“基本输入输出.ASM”。
在“Project”栏的文件项目管理窗口中右击文件组,选择“Add Files to Group ‘Source Group1’”将源程序“基本输入输出.ASM”添加到项目中。
3、执行菜单命令“Project”“Options for Target ‘Target1’”,在弹出的对话框中选择“Output”选项卡,选中“Creat HEX File”。
4、执行菜单命令“Project”。
“Build Target”,编译源程序,如果编译成功,则在“Output Window”窗口中显示没有错误,并创建了“基本输入输出.HEX”文件;如果有错误,双击该窗口中的错误信息,则在源程序窗口中指示错误语句。
电路实验六实验报告_受控源的研究
电路实验六实验报告_受控源的研究电路实验六实验报告实验题⽬:受控源的研究实验内容:1.受控源的种类;2.⽤运算放⼤器组成受控源,运算放⼤器芯⽚型号是µA741,有四种结构,在⾯包板上搭接电压控制电压源和电压控制电流源;3.测试电压控制电压源(VCVS)特性;4.测试电压控制电流源(VCCS)特性。
实验环境:数字万⽤表、学⽣实验箱、导线。
实验原理:受控源是⼀种⾮独⽴电源,它对外也可提供电压或电流,但它与独⽴源不同,这种电源的电压或电流受电路其它部分的电流或电压的控制。
根据控制量的不同,受控源可分为四类种:电压控制电压源VCVS;电压控制电流源VCCS;电流控制电压源CCVS;电流控制电流源CCCS。
当受控源的电压和电流(称为受控量)与控制⽀路的电压或电流(称为控制量)成正⽐变化时,受控源是线性的。
1.利⽤µA741芯⽚搭接电压控制电压源VCVS的电路图如下:Uo受控源转移电导为:1+R2/R1=2,输⼊输出电压关系为:U o=2U i。
2.利⽤µA741芯⽚搭接电压控制电流源VCCS的电路图如下:受控源转移电导为:1/R1=1/10000,R2的阻值变化不能引起输出电流i o的变化。
输⼊电压和输出电流的关系为i o=Ui/10000。
实验记录及结果分析:1.当电压控制电压源VCVS电路的输⼊电压U i在0-0.5V之间变化时,测得输出电压数据如数据分析:输出电压U o随着输⼊电压U i的变化⽽变化,且其电压值保持在输⼊电压的2倍左右,符合转移电导的值。
输出端是否有负载不会对输出电压的⼤⼩造成影响,符合受控源的性质。
电压控制电压源VCVS电路搭接成功。
2.当电压控制电流源VCCS电路的输⼊电压U i在0-0.5V之间变化时,测得输出电流数据如下:当输⼊电压保持在0.4V,电阻器R的阻值不断变化时,测得输出电流数据如下:o i(1/10000)左右,符合转移电导的值。
输出端的负载R2的变化不能改变输出电流的⼤⼩,符合受控源的性质。
单桥整流实验报告
一、实验目的1. 了解单桥整流电路的工作原理。
2. 熟悉单桥整流电路的组成和特性。
3. 通过实验验证单桥整流电路的性能,分析其优缺点。
二、实验原理单桥整流电路是一种将交流电转换为脉动直流电的电路。
它由四个二极管组成,分为两组,每组两个二极管反向并联,形成一个全波整流器。
当交流电压的正半周时,一组二极管导通,另一组二极管截止;当交流电压的负半周时,两组二极管角色互换。
通过这种方式,将交流电转换为脉动直流电。
三、实验仪器与设备1. 交流电源:220V,50Hz2. 单桥整流电路板3. 数字多用表(DMM)4. 直流稳压电源5. 可调电阻6. 电压表7. 电流表8. 示波器四、实验步骤1. 按照电路图连接单桥整流电路,确保电路连接正确。
2. 将交流电源接入电路,调节可调电阻,使电路输出电压在合适范围内。
3. 使用电压表和电流表测量电路的输入电压和输出电压、电流。
4. 使用示波器观察电路的输入和输出波形,分析电路的整流效果。
5. 记录实验数据,分析实验结果。
五、实验数据与分析1. 实验数据| 输入电压(V) | 输出电压(V) | 输出电流(A) ||--------------|--------------|--------------|| 220 | 12.6 | 0.2 |2. 实验分析根据实验数据,单桥整流电路的输入电压为220V,输出电压为12.6V,输出电流为0.2A。
从实验结果可以看出,单桥整流电路的整流效果较好,输出电压稳定。
六、实验结论1. 单桥整流电路能够将交流电转换为脉动直流电,具有较好的整流效果。
2. 实验结果表明,单桥整流电路的输出电压稳定,但输出电流较小。
3. 单桥整流电路在实际应用中,可以根据需求选择合适的二极管和滤波电容,提高电路的性能。
七、实验注意事项1. 实验过程中,注意安全,防止触电和火灾。
2. 在连接电路时,确保电路连接正确,避免短路。
3. 实验过程中,注意观察电路的输入和输出波形,分析电路的整流效果。
JAVA语言程序设计实验报告
实验一、安装JDK并熟悉java的运行环境实验二、基本语法练习实验三、面向对象编程实验(4)实验四、异常处理实验实验五、小应用程序实验实验六、图形图像实验实验七、GUI(图形用户接口)实验(4)实验八、多线程实验实验九、输入输出流实验(4)实验十、数据库应用实验(4)实验一、安装JDK并熟悉java的运行环境一、实验目的熟悉JA V A的运行环境及学习简单的编程。
二、预习内容安装工具软件的基本方法。
三、实验设备与环境装有JA V A语言工具软件(Eclipse )的微机若干四、实验内容安装Eclipse及JA V A的核心编译程序J2SDK。
1、打开Eclipse的安装盘安装Eclipse。
2、在相同目录下安装J2SDK。
3、打开Eclipse软件对J2SDK文件进行配置。
4、编写一应用程序,在屏幕上显示“HELLO WORLD”和爱心标志。
Pulic class Hello{public static void main(String args[]){//在屏幕上显示“HELLO WORLD”和爱心标志}}5、编写一小程序实现上述功能:在屏幕上显示“HELLO WORLD”和爱心标志。
实验结果五、注意事项⒈认真填写实验报告⒉遵守实验室各项制度,服从实验指导教师的安排⒊按规定的时间完成实验六、说明本次实验建议学时数2学时七、实验总结与体会实验二、基本语法练习一、实验目的⒈熟悉Java的基本语法⒉编写应用程序接收命令行参数⒊编写应用程序接收用户从键盘的输入⒋掌握字符串与数组的基本方法二、预习内容java编程的基本结构三、实验设备与环境装有JA V A语言工具软件(Eclipse )的微机若干四、实验内容⒈编写一个应用程序求若干个数的平均数,原始数字要求从命令行输入。
应用程序中main方法的参数String类型的数组args能接受用户从命令行键入的参数。
(1)编辑A verage.java。
class A verage{public static void main(String args[ ]){double n,sun=0;for (int l=0;l<args.legth;l++){sum=sum+Double.valueOf(arg[l].doubleV alue();)}n=sum/args.length;System.out.println(“average=”+n);}}命令行参数:12.34 34.45 21212121注意:1)参数的个数可以利用args.length来取得。
实验六、独立式键盘输入实验
实验六、独立式键盘输入实验一、实验目的1.认识独立式键盘的工作原理2.学习独立式键盘的接口设计二、实验设备1.单片机最小系统模块2.仿真器3.独立式键盘实验模块4.发光二极管显示模块三、实验要求要求由8个独立式键盘和8个发光二极管组成实验电路,当按下某一个键时相应的发光二极管被点亮。
四、实验原理独立式键盘中,各按键相互独立,每个按键各接一根输入线,每根输入线上的按键工作状态不会影响其它输入线上的工作状态。
因此,通过检测输入线的电平状态就可以很容易的判断按键是否被按下了。
独立式键盘电路配置灵活,软件结构简单。
但每个按键需占用一根输入线,在按键数量较多时,输入口浪费大,电路结构显得很繁杂,故此种键盘适用于按键较少或操作速度较高的场合。
下面介绍独立式按键的接口方法。
图6-1(a)为中断方式的独立式键盘工作电路,图(b)为查询方式的独立式按键工作电路,按键直接与89C51的I/O口线相接,通过读I/O口,判定各I/O口线的电平状态,即可识别出按下的按键。
(a)中断方式(b)查询方式图6-1 独立式键盘接口电路此外,也可以用扩展I/O口连接独立式键盘接口电路。
上述独立式键盘电路中,各按键开关均采用了上拉电阻,这是为了保证在按键断开时,各I/O口线有确定的高电平。
在我们的键盘模块中,已经在键盘输出端加上了上拉电阻,因此不用再额外加上。
五、实验步骤实验参考连线如图6-2所示。
(以6键、6发光管为例)图6-2 实验连线图1、按照图6-2的电路原理,用导线正确连接独立式键盘、发光二极管实验模块和单片机最小系统模块。
2、示例程序如下(以6键、6发光管为例):BEGIN: MOV P0,#0FFH ;熄灭二极管LOOP: MOV A,P0 ;读键盘状态ANL A,#3FH ;屏蔽高二位MOV 40H,A ;把读的键盘状态暂放在40H的地址CJNE A,#3FH,HADKEYSJMP LOOPHADKEY:ACALL DL10MS ;延时10MSMOV A,P0 ;再读键盘状态ANL A,#3FH ;屏蔽高二位CJNE A,40H,LOOP ;比较两次读键盘状态,如不同则重读MOV P2,A ;使相应的二极管发亮NOPNOPLJMP LOOPDL10MS: MOV R7,#05LOOP1: MOV R6,#0F9HLOOP2: NOPNOPDJNZ R6,LOOP2DJNZ R7,LOOP1RET将程序调入仿真器进行调试。
实验六 运算器数据通路
实验六 运算器数据通路一、实验目的1、熟悉74LS181函数功能发生器的功能,提高器件在系统中应用的能力2、熟悉运算器的数据传送通路3、完成几种算逻运算操作,加深对运算器工作原理的理解 二、实验内容按图6-1所示参考框图自行设计一个能完成表6-1所列补码运算指令的运算器(为简单化电路,进位和结果触发器可以不设置)。
选择适当元件,画出详细实验电路逻辑图(包括对开关的定义),并组装成电路。
表6-1:在电路上进行表6-1中指令的手动单指令操作(操作数、指令码由数据开关输入)。
设计提示:1、运算器的输入缓存器A S 、B S 分别用一片74LS161来实现,但只用到74LS161的置数功能,禁止其计数功能。
2、用一片74LS273作为运算器操作指令寄存器,只用到6位。
3、用一片74LS244控制运算器的运算结果能否送总线。
三、实验仪器及器材1、实验台和+5V 直流稳压电源各一台。
2、器件由附录A “集成电路清单”内选用。
四、实验电路原理(实验电路原理图)1、四位函数功能发生器(ALU )74LS181的功能74LS181通过“控制参数”3S ~0S 和“模式控制”M ,可对两个输入操作数完成32种算、逻运算,并可以工作于正逻辑输入输出或负逻辑输入输出方式(本实验为正逻辑方式)。
控制端0M =时,属算术运算;1M =时,属逻辑运算。
进位采用补码形式输入输出,电路亦可进行数的比较运算。
其操作功能可查阅实验五中的功能表。
2、数据传送通路实验电路方案运算器是计算机对数据进行运算的重要部件,它的核心是ALU 函数功能发生器,其次还要有存放操作数和运算中间结果的寄存器、移位门、传送数据的总线等部件,在不同的控制信号下,运算器完成不同的运算功能。
如图6-1所示。
图6-1 运算器数据通路框图在图6-1中,A S 、B S 为存放两个现行操作数的缓冲寄存器。
其中A S 兼作存放中间结果的累加器,并给予显示。
它们仅接收来自总线的数据信息,送入ALU 进行算、逻运算。
实验六 离散输入输出的任务设计
实验六离散输入/输出的任务设计1.实验目的1.熟悉离散输入/输出模块任务的管理。
2.掌握离散输入/输出模块利用信道管理应用程序以及各个接口函数的调用机制。
2.实验任务1.在开发板上设计并连接离散输入口的连线,本实验使用开发板底板上的薄码开关SW1作为离散输入口。
2.读取离散输入,并使用串口输出是那个离散输入通道有输入,而且可以输出每个离散输入通道出现跳变沿的个数。
3.通过离散输出控制8个LED灯,实现不同频率的闪烁。
3.预习要求1.理解离散输入/输出的一些基本概念。
2.参考《嵌入式系统构件》第八章,熟悉离散输入/输出模块任务的管理。
4.实验说明离散输入/输出模块由一个任务组成(DIOTask()),该任务按一定的时间间隔(DIO_TASK_DLY_TICKS)执行。
DIOTask()可以管理应用程序所需要的多个离散输入和输出(每个最多250)。
离散输入/输出管理器调用DIOInit()进行初始化。
每个DIO_TASK_DLY_TICKS,DIOTask()调用DIRd(),DIUpdate(),DOUpadate()和DOWr()。
1.离散输入:微处理器只需读取输入口,屏蔽不需要的输入,并根据输入状态做出判断。
每个离散输入可以认为是一个逻辑信道。
离散输入输出模块允许按需拥有逻辑信道数数量(最多16个)。
DITbl[]是一个表,包含每个离散输入信道的配置和运行信息。
当离散输入信道DICfgEdgeDetectFnct()配置了边沿检测并检测到转换时,执行用户定义函数。
DICfgMode()设置离散输入信道的操作模式,通过DIGet()获取离散输入信道的当前值,所有信道值的改变和设置都要写入到DITbl[]表中,离散输入任务DITASK()通过DIUpdate()函数更新和获得每个输入信道的信息。
离散输入再通过硬件接口函数DIRd()来读取并映射到DITbl[i].DIIn中。
DIInitIO是由DIInit()调用的初始化代码,用来初始化物理硬件端口。
最新东南大学-微机原理-微机系统与接口-实验五-六-实验报告-自动化学院
东南大学《微机实验及课程设计》实验报告实验五8253 计数器/定时器实验六8255 并行输入输出姓名:学号:08011专业:自动化实验室:计算机硬件技术实验时间:2012年04月27日报告时间:2013年05月15日评定成绩:审阅教师:一. 实验目的实验五:1)掌握计数器/定时器8253 的基本工作原理和编程应用方法;2)了解掌握8253 的计数器/定时器典型应用方法实验六:1)掌握8255方式0的工作原理及使用方法,利用直接输入输出进行控制显示;2)掌握8段数码管的动态刷新显示控制;3)分析掌握8255工作方式1时的使用及编程,进一步掌握中断处理程序的编写。
二. 实验内容实验五:必做:5-1 将计数器0设置为方式0,计数初值为N(小于等于0FH),用手动的方式逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化。
(参考程序p63)5-2 将计数器0、1分别设置在方式3,计数初值设为1000,用逻辑笔观察OUT0电平的变化。
(参考程序p64)实验六:(1)8255方式 0:简单输入输出实验电路如图一,8255C口输入接逻辑电平开关K0~K7,编程A口输出接 LED显示电路L0~L7;用指令从 C口输入数据,再从A口输出。
图一 8255简单输入输出(2)编程将A口 L0-L7控制成流水灯,流水间隔时间由软件产生;流水方向由K0键在线控制,随时可切换;流水间隔时间也可由K4~K7键编码控制,如 0000对应停止,0001对应 1秒,1111对应 15秒,大键盘输入 ESC键退出。
(3)8段数码管静态显示:按图二连接好电路,将 8255的 A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端 S1接+5V(选中),S0、dp接地(关闭)。
编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。
图二单管静态显示(4) 8段数码管动态显示:按图三连接好电路,七段数码管段码连接不变,位码驱动输入端S1、S0 接8255 C口的PC1、PC0。
实验六 受控源的研究
实验六 受控源的研究一、实验目的:研究受控源的基本特性,通过测试加深受控源的控制特性和负载特性的了解。
二、实验原理及电路图 1、实验原理:1)理想运放在线性应用时有两个重要的特性:a.“虚断”:两个输入端的流进电流为零;b.“虚短”:两个输入端间的电压为零; 2)受控源:受控源由两条支路组成,其第一条支路是控制支路,呈开路或短路状态;第二条支路是受控支路,它是一个电压源或电流源,其电压或电流的量值受第一条支路电压或电流的控制。
受控源可以分成四种类型:电压控制电压源(VCVS )、电压控制电流源(VCCS )、电流控制电压源(CCVS )、电流控制电流源(CCCS )。
2、电路图及相关公式 1)VCVS :A.转移特性:)1(1212R R U U +=图一B.负载特性:图二2) VCCS: A.转移特性:111R U I图三B.负载特性(两种):图四图五三、实验环境:面包板(SYB—130)、直流电源(IT6302),两个1000Ω电阻、一个100Ω电阻、电位器、导线、台式万用表、uA741运算放大器。
四、实验步骤:a. 在面包板上将电路连接如图一所示,调节U1的电压分别为0.1V 、0.5V 、1.0V 、1.5V 、2.0V 、2.5V ,并记录对应万用表上的数据。
b. 将电路连接如图二所示,设置U1为2.5V ,并调节滑块,观察万用表上电压的变化,记录不同阻值时万用表的读数。
c. 将将电路连接如图三所示,调节U1的电压分别为0.1V 、0.5V 、1.0V 、1.5V 、2.0V 、2.5V ,并记录对应万用表上的数据。
d. 将电路连接如图四所示,设置U1为2.5V ,并调节滑块,观察万用表上电压的变化,记录不同阻值时万用表的读数。
e. 将电路连接如图五所示,设置U1为2.5V ,并调节滑块,观察万用表上电压的变化,记录不同阻值时万用表的读数。
五、实验数据及分析 1、VCVS :A.表一:转移特性(转移电压比12U U =μ) U 1/V 0.1 0.5 1.0 1.5 2.0 2.5 U 2/V 0.2012 1.0031 2.0053 3.0076 4.0023 4.929 µ2.01202.01552.00532.00512.00121.9716B.表二:负载特性(验证理想性),U1=2.5V R L /k Ω 2.000 4.0006.0008.0009.00010.000 U 2’/V 4.91354.9135 4.9135 4.9135 4.91354.9135分析:由表一可知VCVS 的转移电压比µ在实际测量中的平均值为2.0018,在实验误差允许的范围内,等于2)1(12=+R R ,U2的大小与U 成线性关系;表二中无论负载电阻的阻值怎样变化,负载电路的输出电压一直保持不变,且大小符合表一中U1与U2的关系。
《面向对象程序设计》实验指导书
《⾯向对象程序设计》实验指导书《⾯向对象程序设计》实验指导书郭⽟柱⼴东商学院信息学院⼆0⼀0 年⼗⼆⽉⽬录实验⼀ Java基础实验实验⼆ Java⾯向对象特性试验--Java中的类、对象和⽅法实验三类的继承、多态、接⼝、访问控制符与修饰符实验四 Java资源及其利⽤实验五 Java 语⾔的异常处理实验六输⼊输出流实验七图形⽤户界⾯设计实验⼋ Java Applet及多线程试验附录1 实验报告格式实验⼀ Java 基础实验⼀、实验⽬的与要求1. 学习编写简单的Java 程序。
2. 学习掌握Java 基本数据类型及其基本运算。
3. 学习掌握Java 的基本流程控制语句。
⼆、相关知识1. 了解JDK 的⼯作环境,以及如何使⽤JDK 进⾏编程。
2. 熟悉集成软件 eclipse3.5及其使⽤。
⼆、实验内容1. 编写Hello.java 程序并运⾏。
2. ⽤Java 语⾔编写⼀个应⽤程序在屏幕上输出1000之内的素数。
3. ⼀个数如果恰好等于它的因⼦之和,这个数就称为“完数”,⽐如28=1+2+4+7+14。
编写⼀个应⽤程序在屏幕上输出1000之内的完数。
4. 求满⾜1!+2!+3!+ …+n!≤9999的最⼤整数n 。
5. ⼀个三位的整数如果它的各位数字的⽴⽅之和等于这个三位数,就称此数为⽔仙花数,⽐如 333173371++=,编写⼀个应⽤程序在屏幕上输出所有⽔仙花数。
6. 下⾯程序的输出结果是什么?实验⼆ Java⾯向对象特性试验-Java中的类、对象和⽅法⼀、实验⽬的与要求1. 掌握类的定义和使⽤。
2. 掌握对象的声明、创建和使⽤。
3. 掌握构造⽅法的定义和使⽤。
4. 掌握类⽅法(静态⽅法)和⾮类⽅法(⾮静态⽅法)的区别和使⽤。
5. 掌握成员变量和局部变量的区别和使⽤。
⼆、实验内容1. 编写⼀个Java程序,定义⼀个表⽰学⽣的类,类名Student,其成员变量有:学号、班级姓名、性别、年龄;成员⽅法:(1)获得班号(2)获得姓名(3)获得年龄(4)修改年龄;创建⼀个Student的对象,修改该对象的年龄,并输出该对象的年龄。
C++实验指导书
C++程序设计实验指导书实验一C++程序的运行环境和运行(2学时)实验名称:C++程序的运行环境和运行实验目的:1、熟悉C与C++的编程区别;2、熟悉C++的函数重载。
实验要求:求两个数的平方和。
要求如下:1、有int,float和long型的数据各3个;2、重载SumSqure函数求两个相同类型变量的平方和。
实验步骤:1、添加头文件#include <iostream>和名字空间using namespace std。
若要使用cin和cout标准输入输出流,则必须添加上述两个内容。
2、构建重载SumSqure函数。
SumSqure函数的功能是对输入的两个同类型形参a,b求其平方和,并将结果返回。
对于输入和返回的不同类型int,float,long,其函数内部实现代码是一样的,所以可利用函数的重载写出三个SumSqure函数。
3、main函数中的赋值。
定义int,float,long三种类型的数据,分别调用SumSqure函数,测试其结果。
4、调用SumSqure函数。
注意SumSqure函数重载的调用,根据SumSqure函数的定义可知:实参必须是同一种类型的变量才能调用不同的SumSqure,针对不同类型求平方和。
实验名称:类与对象(一)实验目的:1、掌握类的设计;2、掌握对象的创建;3、实现一个简单的成员函数设计。
实验要求:求3个长方体的体积,编写一个基于对象的程序,数据成员包括lenth,width,height。
要求用成员函数实现以下功能:1、由键盘分别输入3个长方体的长、宽、高;2、计算长方体的体积;3、输出3个长方体的体积。
实验步骤:1、建立三个文件,分别存储长方体类的声明头文件,长方体类的定义文件和main函数测试文件。
注意:类的头文件和类的定义实现文件的命名要一致!2、头文件信息:头文件长方体类的声明中,类成员变量有:lenth,width,height;类成员函数有:V olumeCalculation(), InputData()。
c程序设计实验教案
C程序设计实验教案一、实验目的1. 掌握C程序的基本结构。
2. 学会使用C语言编写简单的输入输出程序。
3. 熟悉集成开发环境(如Visual Studio、Code::Blocks等)的使用。
二、实验内容1. C程序的基本结构(1)编写一个简单的C程序,输出“Hello, World!”。
(2)理解主函数、变量声明、函数体等基本概念。
2. 输入输出语句(1)使用scanf()函数输入用户输入的数字,并输出该数字的平方。
(2)使用printf()函数输出学生的姓名、成绩和等级。
三、实验步骤1. 打开集成开发环境,创建一个新的C项目。
2. 在主函数中编写输出“Hello, World!”的代码。
3. 编写输入用户输入的数字,并输出该数字的平方的代码。
4. 编写输出学生姓名、成绩和等级的代码。
5. 保存并运行程序,观察输出结果。
四、实验要求1. 每位同学独立完成实验,不抄袭他人代码。
2. 实验过程中,遇到问题要积极思考,可以请教同学或老师。
3. 实验完成后,对照实验目的,检查自己是否达到了预期目标。
五、实验评价1. 代码是否规范、可读性强。
2. 是否能熟练使用C语言的基本语法。
3. 是否能正确使用输入输出语句。
4. 是否能独立完成实验,解决问题。
六、实验六:控制流程(条件判断与循环)1. 实验目的理解C语言中的条件判断语句(if-else)。
掌握C语言中的循环结构(while、do-while)。
2. 实验内容编写程序实现成绩判断,根据分数输出等级(优秀、良好、及格、不及格)。
编写程序计算从1加到指定数字的和。
3. 实验步骤创建新项目,编写判断成绩的程序。
编写一个循环,用于输入分数,并判断等级。
编写另一个循环,用于计算1到指定数字的和。
运行程序,验证结果。
4. 实验要求代码应包含清晰的逻辑判断和循环控制。
要求程序能够处理用户输入的无效数据。
5. 实验评价判断语句和循环结构的正确使用。
程序对于不同输入的适应性和鲁棒性。
实验六和七(调频及解调)
实验六和七(调频及解调)实验六变容⼆极管调频器⼀、实验⽬的1.通过实验进⼀步掌握调频原理。
2.了解变容⼆极管调频器电路原理及电路中元器件的作⽤。
3.了解调频器调制特性及测量⽅法。
4.观察寄⽣调幅现象,了解其产⽣原因及消除⽅法.5.进⼀步掌握利⽤调制度测量仪测量频偏的技术。
⼆、预习内容1.复习频率调制的原理2.复习变容⼆极管的⾮线性特性,及变容⼆极管调频振荡器调制特性。
3.复习⾓度调制的原理和变容⼆极管调频电路有关资料。
4.复习调制度测量仪测量频偏的技术。
三、实验原理频率调制和相位调制是被⼴泛采⽤的两种基本调制⽅式。
其中,频率调制(Frequency Modulation)简称调频,它是使载波信号的频率按调制信号规律变化的⼀种调制⽅式;相位调制(Phase Modulation)简称调相,它是使载波信号的相位按调制信号的规律变化的⼀种调制⽅式。
两种调制⽅式都表现为载波信号的瞬时相位受到调变,故统称为⾓度调制(Angle Modulation),简称调⾓。
调⾓波包含调频波和调相波,它们都是等幅的⾼频振荡,要传送的信息分别反映在⾼频振荡的频率和相位变化上。
要从调⾓波中解调出原调制信号,必须采⽤频率检波器和相位检波器。
从调频中检出随⾓频率变化的调制信号的过程称为频率检波,简称鉴频。
从调相波中检出随相位变化的调制信号的过程称为相位检波,简称鉴相。
1.频率调制的基本原理:设⾼频载波为u c =U cm cosωc t,调制信号为U Ω(t),则调频信号的瞬时⾓频率瞬时相位Ω+==tf c t dtt u k t dt t t 0)()()(ωωφ)()(t u k t f c Ω+=ωω调频信号其中k f 为⽐例系数。
上式表明,调频信号的振幅恒定,瞬时⾓频率是在固定的载频上叠加⼀个与调制信号电压成正⽐的⾓频率偏移(简称⾓频偏)Δω(t)=k f u Ω(t),瞬时相位是在随时间变化的载波相位φc (t)=ωc t 上叠加了⼀个与调制电压积分成正⽐的相位偏移(简称相偏)Δφ(t)=k f ∫t 0u Ω(t)dt。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五 Java 输入输出流
1.实验目的
(1) 掌握输入输出流的总体结构;
(2) 掌握流的概念;
(3) 了解各种流(包括文件流、管道流、连接文件、过滤流、对象的序列化、随机访问)的使用。
2.实验内容
实验题1 编写一个Java Application程序,打印命令行输入的所有参数。
[基本要求] 编写完整程序。
程序代码为:
package输入输出流;
import java.io.*;
public class IO_1 {
public static void main(String[] args) {
for (int i = 0; args != null && i < args.length; i++) { System.out.println("第" + i + "个参数是" + args[i]);
}
// 创建文件对象
File f = new File("D:/java/A.txt");
if (!f.exists()) {
try {
f.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
try {
// 将文件读取到内存中
InputStreamReader isr = new
InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
System.out.println("请输入:");
String s = br.readLine();
System.out.println("您输入的内容是:" + s);
// 将内存写入到文件里面
FileWriter fw = new FileWriter(f, true);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(s);
//关闭流
br.close();
bw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行结果为:
实验题2 阅读下面程序,叙述其功能
package .nwsuaf.jp;
import java.io.FileReader;
import java.io.IOException;
public class FileViewer {
/** Defines the entry point of the program. */
public static void main(String[] args) {
System.out.println("Please enter the file path:");
try {
String fileName = "";
while(true) {
int readByte = System.in.read();
if(readByte == -1 || readByte == '\r')
break;
fileName += (char) readByte;
}
// Reads the file and prints it to the System.out stream.
char[] buffer = new char[20];
FileReader reader = new FileReader(fileName);
while(true) {
int length = reader.read(buffer);
if(length < 0) // Reads a long as there is more data.
break;
String text = new String(buffer, 0, length);
System.out.print(text);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
[基本要求] 写出本题程序的功能。
运行结果为:
功能:输入路径,可以显示该路径中文件的相关内容。
实验题 3 设计一个类FileRWTest,实现从input.txt文件中读入数据到字符数组cBuffer中,然后再写入到文件“output.txt”中。
[基本要求] 编写完整程序。
程序代码为:
package输入输出流;
import java.io.*;
public class FileRWTest {
public static void main(String[] args) {
// 创建文件对象
File f1 = new File("D:/java/input.txt");
File f2 = new File("D:/java/output.txt");
// 创建两个文件文件
try {
if (!f1.exists()){
f1.createNewFile();
}
if (!f2.exists()){
f2.createNewFile();
}
// 读取到数组cBuffer[]中
FileReader fr = new FileReader(f1);
char cBuffer[] = new char[1024];
int n = 0; //实际读取到的字节数
// 循环读取
while ((n = fr.read(cBuffer)) != -1) {
String s=new String(cBuffer,0,n);
System.out.println(cBuffer);
// 写入到文件f2中
FileWriter fw = new FileWriter(f2);
fw.write(cBuffer);
// 关闭流
fr.close();
fw.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
运行结果为:
实验题 5写一程序统计纯文本文件“Early-Precaution.txt”的大写字母、小写字母个数,并将所有小写字母转换为大写字母,输出到result.txt。