已阅读5页,还剩54页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
姓名班级学号具体负责的工作联系方式摘 要:基础任务为设计制作一个增益可键控的线性放大器电路,并通过单片机小系统控制直流增益等级的切换。拓展任务为函数信号发生暨电子音乐合成和播放器,要求完成后的电路可以输出正弦、三角、锯齿、矩形(方波)等数学函数波形和播放音乐。关键词:键控;线性;直流增益;增益等级;蜂鸣器;正弦;三角;锯齿;矩形ABSTRACT basic event is to design and construct a linear amplifier circuit of which the gain can be controlled by pressing buttons. The DC gain level is determined by the SCM system. The extension task is to make a function signal generator which can mix and play music as well. The completed circuit is required to output sinusoidal, triangle, Sawtooth, rectangular signal and play Katyusha.KEYWORDS keying, linear,DC gain, gain level; buzzer, sinusoidal, triangle,sawtooth,rectangular.上海交通大学 电子信息与电气工程学院地 址:东川路800号邮 编:200240目录1. 概述11.1 编写说明11.2 名词定义11.3 缩略语32. 系统总体说明42.1 课题任务规定的设计要求42.2 实际完成后的功能42.3 系统的设计原理与分析62.3.1 系统的设计原理和总体结构62.3.2 系统的设计原理和总体结构62.3.3 系统的功能63. 系统的硬件结构83.1 硬件总体结构83.2 单片机小系统83.2.1 功能描述83.2.2 接口定义93.2.3 技术要求93.3 基础任务可控增益放大器103.3.1 实现方式113.4 拓展任务音乐播放器123.4.1 实现方式124. 系统的软件结构144.1 软件总体结构和功能144.2 重要的全局变量144.3 流程逻辑164.4 拓展任务定时器T1的中断程序描述204.4.1 功能描述214.4.2 输入输出项描述214.4.3 相关算法的描述214.5 基础任务main()函数描述214.5.1 功能描述214.5.2 main()函数中主要涉及的2个函数的调用215. 系统功能及技术指标测试235.1 测试项目235.2 测试的资源235.3 测试方法235.4 测试结果及分析236. 致谢247. 参考资料258. 附录268.1 课程学习心得和建议意见268.2 程序清单26第54页上海交通大学 电子信息与电气工程学院1. 概述1.1 编写说明 本文档从硬件设计,程序编写,误差调整,调试等方面详细的介绍了本组完成此次科创的全过程。包括自己的心得与体会。适合大众阅读。1.2 名词定义单片机小系统:指AT89S52单片机At89s52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。 在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。 运算放大器:指LM741放大器图1-2.1 图1-2.2控制芯片:指CD4066芯片CD4066 是一种四路电子开关集成电路,在电视机、影碟机、电话机、各种电子仪器仪表等上应用相当广泛。 CD4066功能特点CD4066 集成电路内部主要由四路功能完全相同的电子开关组成,各组开关分别受其相应引脚输入的电平控制,使电子开关接通或断开。它们的控制引脚为13脚(控制与间开关)、脚(控制与间开关)、脚(控制与间开关)、12脚(控制与11间开关)。 CD4066 集成电路采用14 脚双列直插式封装. 函数信号:指波形为正弦,三角,锯齿和方波正弦: 图1-2.3图1-2.4三角:图1-2.5锯齿:图1-2.61.3 缩略语单片机:是一种集成在电路芯片,这里指AT89S52运放:运算放大器,这里指LM741开关:控制芯片,这里指CD4066编程:这里指用c语言编写的程序,程序通过软件转换为16进制再导入进单片机小系统。调试:具体指,对于放大倍率误差的缩小。对于输出波形的形状修正。波形:本文指的是正弦波,方波,三角波(即锯齿波)2. 系统总体说明2.1 课题任务规定的设计要求基础任务: 设计制作一个增益可键控的线性放大器电路,并通过单片机小系统控制直流增益等级的切换。其中键控是指通过开闭“电键”转换电路工作状态。线性:Vo = a Vi; 相对于“非线性”而言,比如Vo = (Vi)2直流增益是指基本部分仅工作在直流输入(注:拓展部分要求输入交流信号)增益等级是指放大倍数可在有限个离散等级间切换变化单片机小系统提供人机操作界面,用数码管显示增益取值,用户通过按键设置增益。增益的具体指标 :最小增益须小于0.15倍(建议取0.1);最大增益须大于1.45倍(建议取1.5) ;至少15个增益等级:建议按等差排列,0.1,0.2,0.3,1.5;实测增益值相对误差须小于3% 拓展任务:增加一个CD4066,再增加几个电阻细化放大倍率。要求完成后的电路可输出正弦、三角、锯齿、矩形(方波)等数学函数波形和播放音乐。要求有(25-1)到(28-1)个有效状态且相应增加单片机控制线。另外,拓展任务软件设计上还有要求:1. 间隔时间要保持稳定,必须利用定时器中断,有关操作须置于中断服务程序中2.将sin函数计算成表(存入数组),程序中查表输出3.音乐信号的发生原理:卡秋莎乐曲编程举例2.2 实际完成后的功能可以进行倍率的放大功能0-1.6v,其中间距为0.02,0.05,0.07,所以一共64组倍率值。按键的功能为:第一个键为+0.1倍,第二个键位-0.1,第三个键位到0倍,第四个键为到1.5倍。 可以播放喀秋莎音乐可以输出正弦波,方波,锯齿波,三角波信号可以调节三种频率,以三种波宽输出正弦波,方波,锯齿波和三角波信号图2.2.1 方波图2.2.2 三角波图22.3 正弦波2.3 系统的设计原理与分析2.3.1 系统的设计原理和总体结构2.3.2 系统的设计原理和总体结构 对于基础任务 我们的设想是,利用CD4066的四个控制线路控制4个电阻的接入与接出,产生不同的R值,然后与Rf结合产生16种放大倍率。对于拓展任务,我们的想法是。增加2个电阻,与之前四个电阻配合,产生64中放大倍率,展现出不同波形的信号。2.3.3 系统的功能倍率增益时,第一个键为+0.1倍,第二个键位-0.1,第三个键位到0倍,第四个键为到1.5倍通过按键使得放大器能将输入为1v的信号按0.1-1.5的每隔0.1的倍率输出。输出函数信号时,第二个键为下一个函数信号,第三个键位上一个函数信号,第四个键为切换频率。函数信号列表为:方波,三角,锯齿,正弦波。拓展之后的放大倍率为0,0.2,0.5,0.7;1,1.2,1.5,1.7;2.2,2.5,2.7;.共有64组3. 系统的硬件结构3.1 硬件总体结构图 31.1硬件模块主要是由单片机,基础任务模块,和拓展任务模块(音乐播放器)3部分组成,图31.1为我们小组成品的3部分整体图,3块模块的分式图将在3.2节中给出。3.2 单片机小系统图3-2.1 单片机小系统3.2.1 功能描述单片机小系统由老师提供,我们所做的是将单片机的p1.4p1.7;p3.4,p3.5,接口分别与基础任务模块和拓展任务模块用数据线相连,使单片机小系统可以控制下述两块模块。图3-2.1即为单片机的照片图。3.2.2 接口定义我们的基础模块与拓展模块,以及基础模块和单片机之间都有联系,他们的联系是有各自的借口完成的,基础任务的sw1,sw2,sw3,sw4分别于单片机的p1.4,p1.5,p1.6,p1.7相连,在拓展任务中我们通过CD4066的管脚3(sw5)和管脚9(sw6)分别连接到拓展版的借口,通过数据线与基础任务的4通路进行并联,从而使6通路会接于基准电阻8K上,通过基础任务上的数据线,接到p3.4,p3.5,实现单片机借口控制拓展任务的CD4066通与断。3.2.3 技术要求在基本任务中,我们的15个增益值误差均小于1%,误差较小。(见表5-4.1)在拓展任务中,我们的输出波形有:正弦波(图3.2.3(3),方波(图3.2.3(1),三角波(图3-2.3(2),并且可以有3种频率,实现变频。图3.2.3(1) 方波图3.2.3(2) 三角波图3.2.3(3) 正弦波其次对于电路在板上的排布,我也做了考虑,CD4066和运算放大器分别是数字原件和模拟原件,所以在板上,我要把他们排开,同时又要考虑到电阻的排布情况,考虑到美观,我们将线拍在了板的反边。(tu)核心器件有CD4066 LM741 MSC51 P-MOS 三极管 电阻 3.3 基础任务可控增益放大器图3-3.2 基础任务(增益可控放大器电路)这一模块为基础任务增益可控放大器电路,该电路使用4个电阻并联,用一片CD4066控制,与运算放大器ua741的基准电阻相连,通过改变其电阻与基准电阻的比值来实现输出电压的变化,其设计思路详见设计思路章,此不缀述,我们实现了电压值从0.1-1.5,每隔0.1V,共15个输出电压,误差均在1%之内,此详见误差分析章,图3-3.2即为该模块的照片图3.3.1 实现方式在本次设计中,我们共实现了两块独立模块。基础模块实现电路的增益可控,共设立了15个控制点,(从输出电压0.1V到最大1.5V,间隔0.1V)设计思想是通过一片CD4066芯片控制4条电路中电阻的通断来实现4*4-1=15种电阻状态量,这些量就构成了我们所要做的对应15个电压状态,对于CD4066芯片的控制,我们是通过对于接口1.11.4的单片机编程来控制(在软件部分详细分析),对于4个电阻的选取时根据他们分别对基准电阻的比率来设计的,在我们的设计中,将这4个电阻定为10k,20k,40k,80k;基准电阻为8k。这是因为实际运放的输入阻抗为2M,而输出阻抗为20,所以对于基准电阻的数量级选取应该在K或者,10K,所以我们小组选择了8K。根据运算放大器的放大公式:i=Rf/Rs;设电阻分别为x,y,w,u;8/x=0.1(1)8/y=0.2(2)0.3可以由0.1+0.2确定,以此为例可得所有处在杨辉三角的值全部可有前边的值得到所以:8/w=0.4(3) 可推出,所有5(1+4=5)和7(1+2+4=7)和9(4+5=9)的倍数全部不考虑 所以:8/w=0.8; 发现所有值据符合; 解方程:x=80;y=40;w=20;u=10即为所求。图 3-3-1 .1 protel 电路图(原理图)此外,再放大器的接法上,我们采用的是反向放大器接法,这样对于放大倍率的计算会比正向计算要简便一些。3-3-1.2基础部分电路设计图3.4 拓展任务音乐播放器这一模块为拓展任务音乐播放器,该电路通过增加两天通路是原来的4通路变成6通路实现电压的正弦波,方波,三家波输出,比较基础任务可以实现15个可变电压到63个电压的提高,设计思路详见设计一章,并可以实现3种变频功能,图3-2.3为该模块的照片图。3.4.1 实现方式在拓展模块中我们将原来的4通路增加到6通路,这样可以实现的增益电压值可以多4倍,达到16*4-1=63组,通过再引入接口p3.4,p3.5,修改单片机程序来实现电压值的各种波形的输出,我们小组做了正弦波,方波和三角波并且利用程序实现了对每一种波形3种可控频率变化。在CD4066与p控制端当中我们使用p-mos三极管来控制拓展版的开和闭,我们查了它的datasheet,发现他在0时为闭合工作,在老师的报告中采用两个510的电阻,但是在实践中我们发现经过经过两个510电阻分压后CD4066的14管脚供电压不足,所以我们小组采用一个510电阻分压,保证CD4066的5 V输入电压。这也是我们小组从实践中得出的。从4通路变到6通路,另两路的电阻,我们小组选取的是160K和400K,分别实现0.05和0.02的倍率。这是我在电路设计前考虑的问题。(算法如基础任务)正弦电压的计算过程:角度(a)正弦值我所要的电压(V)0010100.92760210814.638010200.69304810513.4652405330-0.4097985447.95100727840-0.9992247545.00387622950-0.3367616648.31619168600.74761683813.73808419700.89533567914.4766783980-0.0786762549.6066187390-0.954117815.229410951左后一行的计算公式:U=sin(a)*5+10;Amp=10V;设计时以避开低电平为目的,保证输出音质的相对完好。图3-4.1 拓展部分电路图4. 系统的软件结构4.1 软件总体结构和功能本次完成作品的软件部分共分为两部分,分别对应着作为信号放大增益的基础部分及音乐播放器和函数发生器的拓展部分。其中基础部分程序的任务为通过对端口p1.4、p1.5、p1.6、p1.7输出的控制来控制CD4066各开关的断开或闭合的工作状态,以达到放大信号的作用。基础程序的重要分块为 : main()函数,用于对个全局变量初始化并接收P1.0、P1.1、P1.2、P1.3四个按键的输入并改变四个七段数码管的输出值,在单片机运行过程中,main()将处于一个while的无限循环中。timer0() interrupt 1 using 0 ,为定时器T0的中断程序,每5ms运行一次,主要完成数码管的输出工作。而拓展任务的目的为通过不断调整p1.4、p1.5、p1.6、p1.7、p3.3、p3.4六个输出的电压大小来控制务的主要分块为 main()函数,用于对个全局变量初始化并接收P1.0、P1.1两个按键的输入并改变form 和fre两个全局变量的值并不断重置P1和P3的值,在单片机运行过程中,main()将处于一个while的无限循环中。timer0() interrupt 1 using 0 ,为定时器T0的中断程序,每5ms运行一次,完成数码管的输出工作,对喀秋莎各个音符的处理工作。timer1() interrupt 3 using 0 ,为定时器T1的中断程序,其执行的频率再在中断程序中进行设置,该程序的执行频率直接影响函数信号的输出频率。中断程序将完成喀秋莎及各个发生函数信号的输出工作。4.2 重要的全局变量1. 基础部分1. test_counter,变量类型 unsigned int 储存类型 xdata 该变量用于储存及显示该时刻电压增益的大小,即当P1的四个按键P1.0、P1.1、P1.2、P1.3有输入时,test_counter能够相应的增大或减少,它的取值范围是从0到15十六个整数,代表增益从0到1.5 16个增益大小。同时,四个七段数码管的输出值也由该变量控制,通过test_counter的大小来对digit数组的四个值进行赋值,其中digit1和digit2始终为零,而digi2 =(test_counter)/10+20 digi3 = (test_counter%10),再通过函数unsigned char NUMTOSEG7(unsigned char DATA) 来确定输出。2 digi_scaner,变量类型 unsigned char 储存类型 xdata 该变量为数码管扫描驱动指针,变量的四个取值(1,2,3,4)分别代表这四个数码管,通过digi_scaner变量来轮流驱动四个数码管显示增益。2. 扩展任务 3. form , 变量类型 unsigned char 储存类型 xdata 该变量作为拓展任务中单片机四种工作模式的状态的储存变量,即当form=1时,单片机作为音乐播放器,播放喀秋莎,当form=2时,单片机作为函数发生器,在输出端产生方波,当form=3时,单片机在输出端产生锯齿波,当form=4时,单片机在输出端产生正弦波。form接收来自P1.0的信号。4fre ,变量类型 unsigned char 储存类型 xdata 该变量用于控制函数发生器产生波形的频率,即当form=2或3或4时,当fre分别等于1,2,3时,函数发生器将分别产生3个不同频率的信号。fre接收来自p1.1的信号。5/* 播放乐曲功能变量 */audio_frequency 变量类型 unsigned int / 播放中,当前的音频频率audio_ptr 变量类型 unsigned int audio_ptr,audio_dura; audio_dura 变量类型 unsigned int / 辅助读谱指针、持续时间计数变量bit buzzer_flag; / 辅助状态标志 这四个变量用于音乐播放器播放喀秋莎,用于根据音乐中的各个音符的参数来确定p3.5处输出方波的频率和方波的持续时间,以在蜂鸣器处得到喀秋莎音乐。4.3 流程逻辑基础部分图4-3.1为基础部分main()函数程序流程图对P1的四个按键的信号的接收及对test_counter的赋值在主函数中进行,而具体的显示工作将在T0的中断程序中进行。 图4-3.1图4-3.2 为基础部分T0计时器中断服务程序流程图图4-3.2下面将给出驱动数码管显示的具体过程T0计时器中断程序每各5ms运行一次。四个数码管无法同时显示,只能按照顺序在T0终端服务程序每运行一次时驱动一个七段管,由于每秒钟T0中断程序运行200次,每个七段管被驱动50次,由于视觉暂留效果,人脑将认为四个七段管同时亮。T0驱动程序每运行到需要驱动数码管时,首先判断digi_scaner的值,digi_scaner=1、2、3、4分别对应着四个七段管,即该次执行驱动的那个七段管。然后对output_sel的四个位赋值选定指定七段管并执行ADDR_8SEG = NUMTOSEG7(digi)和ADDR_SEL = output_sel语句,驱动数码管并显示相应的数字。拓展部分图4-3.3 为拓展任务main()函数程序流程图 图4-3.3图4-3.4 为拓展任务T0计时器中断服务程序流程图图4-3.4其中喀秋莎音乐播放关于音符参数问题较为复杂,下面将给出详细解释。程序中,整个喀秋莎的音乐是由一个二维数组储存,即由一个2*n的矩阵储存(n为音符的总数目),这个数组的每一行的两个数据,反别代表着一个音符的频率和音符持续长度。例如music_data1= 440,600,440代表频率值,600代表持续时间即节拍值。当程序运行到该音符时,首先对其频率值进行计算,利用audio_frequency=0xffff-460800/music_dataaudio_ptr0+15来确定定时器T1的初值,而以后每次执行T1的中断程序时时,P3.5的输出都会发生改变,由1变为0或由0变为1。由于不同的音符,T1计时器所对应的初值不同,即工作频率不同,就使得1、0间的变换频率不同,产生不同频率的交流电,通过蜂鸣器即能发出相应的音符。而600需用来保证该音符持续的时间。在执行该音符时,利用语句audio_dura=music_dataaudio_ptr1/5,之后每次执行T0计时器中断程序时,若audio_dura不为零,则程序将运行audio_dura-,而跳过复杂的对音符的处理部分,在这段时间内,定时器T1将一直以根据这个音符已确定的初值进行工作,直到audio_dura=0,程序将进入下一个音符。也就是这个频率在audio_dura不为零的时间内被保持,而T0计时器工作频率不变,又保证了audio_dura改变相同值时的时间间隔相同,最终实现,该音符被执行的时间和audio_dura的初值成正比关系。图4-3.5 为拓展任务T1计时器中断服务程序流程图由图易知,该终端服务的任务为根据fre 和 form两个变量对P1和P3进行赋值,已达到所需输出。 图4-3.54.4 拓展任务定时器T1的中断程序描述4.4.1 功能描述当作为函数发生器时,根据form 以及fre的值来确定定时器T1的初值及相应输出P1和P3的值,已完成方波、正弦波、锯齿波的输出。 4.4.2 输入输出项描述中断函数并不需要输入,其输出为相应的P1和P3的值,P1和P3分别为两个8位的二进制数,每个位都对应着单片机的一个输出端口,例如 当P3.5=1时,P3.5端口输出+5v电压,反之,若P3.5=0,p3.5端口输出电压为0伏。4.4.3 相关算法的描述本作品拓展任务所涉及的函数发生均采用逐点赋值法,未使用位运算,所以并未能归纳出算法。采用逐点赋值的原因1. 若采用位运算,必然会产生关于四舍五入的误差,这样输出正弦波时,波形的偏差可能会比较大,比如正弦波的波峰和波谷处会出现直线而非平滑曲线。2. 本小组电路中只连入了6个CD4066的开关,能够实现的最小倍率为0.02,相比之下精度仍显不足,所以为避免误差,人为为点赋值。4.5 基础任务main()函数描述4.5.1 功能描述Main函数主要功能为初始化单片机,接收4个按键的输入信号,并改变电压增益 相关调用函数4.5.2 main()函数中主要涉及的2个函数的调用void delay(void) 该函数用于按键的去抖。具体实现过程为使程序对某个变量进行空加操作,例如从1加到10000,此过程中按键的一切输入信号都将被忽略,因此可以达到去抖效果。使用此函数后,若长时间按住按键,则会发现,晶体管上的显示数字将在一定时间后改变,间隔相同时间后,数字会发生下一次改变。关于delay函数在主函数中调用而非在中断函数中调用的解释:中断函数直接关系数码管的显示,若中断函数的工作频率改变,则会使四个七段数码管显示处于不稳定的状态,即如果在中断函数中调用delay函数,在delay函数执行的较长时间中,中断函数不执行,七段管将会产生闪烁效果,直到delay函数执行过后,七段管才恢复正常。void foutput(void) 该函数用于根据test_counter的值来确定P1和P3的输出值,以达到电压产生增益的效果。5. 系统功能及技术指标测试5.1 测试项目基础任务:当按下P1的四个按键时改变运放输出端的放大增益,并在七段管上显示当前增益大小。拓展任务:播放喀秋莎,并以三种频率输出正弦波、锯齿波、和方波。同时七段管上显示相对应的数字。5.2 测试的资源测试所需电源三个,分别为+5V和+1V和-5V。需万用表一个 电源引线三双 示波器探头一个测试时在实验室中,并在电脑上进行少量的工作,例如,向单片机中拷入程序5.3 测试方法基础任务的调试图使用的电路大板上的接线方法为:从左到右 +5V,-5V,+1V万用表一端接地,一端接我们的测量引脚,并调至直流电压档。通过调节单片机上的四个按钮,实现控制功能。第一个键为+0.1倍,第二个键位-0.1,第三个键位到0倍,第四个键为到1.5倍。拓展部分图使用的电路大板上的接线方法为:从左到右 +5V,-5V,+1V示波器一端接地,一端接我们的测量引脚。调节第二个键为下一个函数信号,第三个键位上一个函数信号,第四个键为切换频率。函数信号列表为:方波,三角,锯齿,正弦波。5.4 测试结果及分析基础部分,测试数据及结果如表 ,由表可知,单片机基础任务完成较好,各电压增益误差都小于1%,且测试数据都大于理论值。根据上文中已给出的计算增益的公式,可知,基础电阻Rf=8kohm,选取稍大,若在其两端并联一较大电阻,则能够更小的减小误差。表5-4.1 基础部分测试结果序列号输入电压(V)输出电压(V)显示增益实测增益误差(%)11.1040 0.1113 0.1 0.1008 0.8152%21.1040 0.2220 0.2 0.2011 0.5435%31.1040 0.3329 0.3 0.3015 0.5133%41.1040 0.4450 0.4 0.4031 0.7699%51.1040 0.5550 0.5 0.5027 0.5435%61.1040 0.6660 0.6 0.6033 0.5435%71.1040 0.7760 0.7 0.7029 0.4141%81.1040 0.8880 0.8 0.8043 0.5435%91.1040 0.9980 0.9 0.9040 0.4428%101.1040 1.1080 1.0 1.0036 0.3623%111.1040 1.2220 1.1 1.1069 0.6258%121.1040 1.3320 1.2 1.2065 0.5435%131.1040 1.4420 1.3 1.3062 0.4738%141.1040 1.5520 1.4 1.4058 0.4141%151.1040 1.6640 1.5 1.5072 0.4831%拓展任务的测试结果见图3.2.3(1),3.2.3(2),3.2.3(3)(方波,三角波,正弦波的三种换频输出)。6. 致谢首先感谢指导老师袁焱对我们的指导。由于我们是完全的新手,之前也没有使用单片机的经验,所以一开始全要靠老师带领我们入门。老师给的ppt与上课的讲解大大简化了我们自己探索的步骤,让我们少走了很多弯路。我记得一开始时我们完全不知怎么办,但是看到老师的电路设计图纸后,我们对我们的任务有了感性上的认识。于是我们慢慢的解出了电阻值,考虑了去除内阻的干扰等等问题。老师告诉我们理解放大器时要把它想成那种理想中的物理模型,于是我们更好的理解了虚短,虚断,虚地的概念。在我们困惑的时候,老师的课程常常让我们有灵感。感谢检测的老师,感谢你耐心的等待我们完成检测,并给出指导意见。我们的检测并不是一帆风顺的。犹豫我们组的万用表有些问题,检测的过程中出现了故障,老师在一旁等待我们排除故障,很有耐心。另外,我们的示波器在检测中也出了问题,后来不得不换一个工作台进行测试。在整个过程中,老师都很和蔼,是我们放松了原来紧张的心情。最后测试比较圆满的完成了。我们认为,如果不是检测老师的耐心,我们可能会因为急躁而做错事情。我们组都十分感谢老师!最后是器材室的负责人。在整个课程中,我们更换了不少器件,每次去更换时,器材室的老师都能准确地找到我们的部件。虽然说起来惭愧,但是我们几次零件换下来,也和那边的老师混熟了,想想这件事也丰富了我们的实验过程。总之,一个项目的完成,有很多人的帮助。包括哪些管理实验室的老师们,那些我们没有提到的人。没有你们,我们的项目不会如此顺利的做出来。在这里,我们再一次像各位老师表达衷心的感谢!7. 参考资料 1赵建领 薛圆圆等. 零基础学习单片机C语言程序设计机械工业出版社,2009-4.2 胡汉才 单片机原理及其接口技术清华大学出版社 19963 Intersil CD4066 DATASHEET4 Intel LM741 DATASHEET5 TI uA741 DATASHEET 6 上海交大电子工程系. 工程实践与科技创新2A讲义EB/OL.48.8. 附录如果有需要,另可附上如电原理图、实物照片等其他资料8.1 课程学习心得和建议意见组员一:通过科创二中对单片机的学习,我基本了解了一些单片机基础的知识,认识到单片机编程与c+不同的地方,并且了解到了一些简单运用的方法。在电路的设计过程中,也对一些电子元件的特性有了进一步的认识。其中曾经有一周的时间但偏见输出电压完全不对,自己在寻找其中问题的过程中获益良多,在通过改变老师所给的基准电路而使一切恢复正常,也让自己对电路板和单片机的的兴趣大增。 组员二:首先在知识上,首先我对单片机有了大致的了解。之前并未接触过单片机,所以可以说是从零开始。经过了这学期的摸索,逐渐知道了单片机的主要构成。对单片机能实现的功能有了一定的认识。另外一个重点是单片机的编程。单片机的编程与一般的C语言编程有一定的区别。他所面对的是机器而不是对象。所以常常要一些16进制地址和位操作。所以对我们而言是全新的一种编程思想。我们用了一段时间来熟悉,而如今,我们应该说对于这个难度级别的编程已经比较得心应手了。对于电路设计也是一个全新的考验,上学期的科创电路都是已经确定下来的,今年的科创开放性比较强,设计时不仅要考虑到界面的美观,更要考虑到数字信号与模拟信号之间的干扰。此外,这学期我们的焊接技能也有所提升。8.2 程序清单#include #include /*/*/*/常量定义 /*/*/*/* 定时器初值*/#define V_T1 0xfd /*SCOM 9600 baud, ! notice: crystal 11.0592MHz */#define V_TH0 0xee /* 5ms , ! notice: crystal 11.0592MHz */#define V_TL0 0x00/* 数码管段驱动寄存器地址*/#define ADDR_8SEGXBYTE0x2000/* 数码管位驱动和指示灯驱动寄存器地址*/#define ADDR_SELXBYTE0x4000/* 按键*/sbit KEY1=P10;sbit KEY2=P11;sbit KEY3=P12;sbit KEY4=P13;/*/*/*/变量定义 /*/*/*/* 数码管位驱动和指示灯驱动信号输出缓存,定义了一个可位寻址的变量*/unsigned char bdata output_sel;sbit led_1 = output_sel5;sbit led_2 = output_sel6;sbit led_3 = output_sel7;sbit led_4 = output_sel4;/* 数码管扫描驱动指针,为测试外部存储器(U3 6264),特使用xdata类型*/unsigned char xdata digi_scaner;/* 测试用计数器,为测试外部存储器(U3 6264),特使用xdata类型*/unsigned int xdata test_counter;/* 测试用计数值十进制表示,为测试外部存储器(U3 6264),特使用xdata类型*/unsigned char xdata digi4;/void delay(void)int xdata i;for(i=0;i=5) digi_scaner = 1;switch (digi_scaner)case 1: /* 驱动第一个数码管*/output_sel |= 0x01;ADDR_8SEG = NUMTOSEG7(digi0); /*输出到锁存器U5(在电路图中找)*/break;case 2: /* 驱动第二个数码管*/output_sel |= 0x02;ADDR_8SEG = NUMTOSEG7(digi1); /*输出到锁存器U5*/break;case 3: /* 驱动第三个数码管*/output_sel |= 0x04;ADDR_8SEG = NUMTOSEG7(digi2); /*输出到锁存器U5*/break;case 4: /* 驱动第四个数码管*/output_sel |= 0x08;ADDR_8SEG = NUMTOSEG7(digi3); /*输出到锁存器U5*/break;ADDR_SEL = output_sel; /*输出到锁存器U6(在电路图中找)*/EA=1; /*开中断*/* 主程序*/main()/* 单片机系统初始化*/ P1=0XFF; P3=0XC7; /* 中断工作寄存器初始化*/ IE=0X80; IP=0; IT0=0; IT1=0; /* 定时器工作寄存器初始化*/TMOD=0X21;TH1=V_T1; TL1=V_T1; TH0=V_TH0; TL0=V_TL0; /* 串行通信口工作初始化,注:本例中虽未使用到串行通信口,但本段程序无妨保留*/SM0=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 病历书写要求
- 水风光一体化多场景运行模式适配改造方案
- 注塑线设备故障应急预案制定
- 机加工工序首件检验管控规范
- 铸造段紧急需求排程控制方案
- 医技科室药品管理制度实施细则
- 医疗设备预防性维修制度
- 比熊犬美容修毛指引
- 套餐卡销售接待规范
- 仓库甲醇泄漏应急处置流程
- DBJT15-188-2020 城市综合管廊工程技术规程
- 凯恩斯主义课件
- APQP第三版及CP第一版介绍
- 2025年人教版七年级数学下册期中复习题(基础版)(范围:相交线与平行线、实数、平面直角坐标系)解析版
- 武侯祠历史讲解
- 眼健康知识科普讲座
- 癌痛患者的健康宣教
- 2025年广东省高考政治试卷真题(含答案解析)
- 一例猫泛白细胞减少症的诊断与治疗
- 2025年高考数学全国一卷试题真题及答案详解(精校打印)
- 2024年河北省高考政治试卷(真题+答案)
评论
0/150
提交评论