程控音频OCL功率放大器.doc

上传人:精*** 文档编号:860605 上传时间:2023-09-24 格式:DOC 页数:33 大小:568.24KB
下载 相关 举报
程控音频OCL功率放大器.doc_第1页
第1页 / 共33页
程控音频OCL功率放大器.doc_第2页
第2页 / 共33页
程控音频OCL功率放大器.doc_第3页
第3页 / 共33页
程控音频OCL功率放大器.doc_第4页
第4页 / 共33页
程控音频OCL功率放大器.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、题目: 程控音频OCL功率放大器(1)任务 设计一个功率可程控、有输出功率显示的OCL音频功率放大器电路。后 级OCL功率放大部分用分立元件制作,供电电源为15V,输入信号电压幅度为(101000)mVrms,负载为为8欧电阻。其结构框图如下图所示。(2)要求 用仿真软件对电路进行验证,使其满足以下要求: 1)失真度3%时,输出功率P07.5W; 2)频率响应为(2022000)Hz; 3)在信号源的幅度和频率固定为某一值时,可以设置输出功率,并实时 测量、显示输出功率,显示的输出功率(Ps)与设定功率(Pg)的相对误差。 (3)说明 1设计报告必须包括建模仿真结果。 指导教师签名: 年 月

2、日 系主任(或责任教师)签名: 年 月 日 目录摘要1Abstract21 实验原理31.1音频功率程控增益放大电路板块31.2 A/D转换板块与CD液晶显示输出板块32方案论证与选择42.1 增益控制方案的比较与选择42.2 有效值检测方案的比较与选择62.3 A/D 转换方案的比较与选择62.4 显示方式的设计方案的比较与选择93硬件设计93.1 总体设计框图93.2 单元电路设计103.2.1 OCL电路模块103.2.2 程控增益模块113.2.3 真有效值测量模块163.2.4 AC-DC转换模块173.3 总电路图184软件设计204.1 流程图204.2 程序215心得体会306

3、参考文献31 摘要 本程控音频OCL功率放大器用单片机作为主控制器,通过数字电位器AD5220对信号增益进行调整,准确控制OCL输出功率。并实时LCD液晶显示输出功率。 在OCL功率放大部分:用NE5532集成芯片作为前级功率放大,用分立元件制作后级放大电路,实现推挽输出。供电电源为15V,输入信号电压幅度为(101000)mVrms,负载为为8欧电阻。 在程控部分:对放大电路设计深度负反馈,通过数字电位器AD5220对深度负反馈电阻进行大小控制,从而达到对信号增益进行调整的目的,准确控制OCL输出功率。在AC-DC转换部分:利用AD736芯片搭建电路,对输入电压进行“平均取平均值开平方”运算

4、,就能获得交流电压的真有效输出。在A/D模数与液晶显示转换部分:利用TCL549模数转换芯片和LM016L液晶将模拟输出功率转换成数字信号,送入单片机,经过单片机程序处理,送出至LCD液晶显示。关键词:OCL功放 程控 AbstractThe SPC OCL audio power amplifier with single-chip microcomputer as the main controller, through the digital potentiometer AD5220 to adjust the signal gain, accurately control the OC

5、L power output. And LCD liquid crystal display output power in real time.In OCL power amplifier parts: use NE5532 integrated chip as the former power amplification, made of discrete component level after amplifying circuit, realize the push-pull output. Power supply is + 15 v, the input signal volta

6、ge amplitude for mVrms (10 1000), the load for the eight European resistance. In SPC part: the depth of the negative feedback amplifier circuit design, through the digital potentiometer AD5220 size of depth of negative feedback resistance control, so as to adjust the signal gain, the purpose of accu

7、rate control of OCL power output. In AC - DC conversion parts: using AD736 chip set up circuit, the input voltage to the average - average - open square operation, can get really effective output voltage. In A/D module and liquid crystal display conversion parts: using TCL549 modulus conversion chip

8、 and LM016L LCD to analog output power is converted into digital signal, into single chip microcomputer, through single chip microcomputer program processing, sent to the LCD display. Key words: the OCL amplifier SPC.1 实验原理主要分成以下两板块:音频功率程控增益放大电路板块A/D转换板块与LCD液晶显示输出板块1.1音频功率程控增益放大电路板块通过单片机程序数字电位器AD522

9、0对OCL音频功率放大器电路进行功率可程控。后级OCL功率放大部分用分立元件制作,供电电源为15V,输入信号电压幅度为(101000)mVrms,负载为为8欧电阻。我们仿真时设定输入电压有效值为1V:具体是:通过控制放大电路的R10和R13以及数字电位器的电阻来改变增益,也就是通过数字电位器来改变OCL功率放大器的增益。其中,数字电位器的电阻通过单片机用程序控制,即达到“程控目的”。另外,设定三个控制键,修改程序,达到“键盘控制”的目的。在程控与键控之间,设定好延时控制。1.2 A/D转换板块与CD液晶显示输出板块通过芯片AD736将交流输出信号转变成对应的功率有效值,再通过TCL549模数转

10、换器,将模拟信号转化成数字信号,送入单片机,单片机对其处理,送出LM016L LCD显示出实时功率。2方案论证与选择2.1 增益控制方案的比较与选择方案一:使用程控增益调整功能芯片AD603,能够在程序中用软件控制放大器的增益,或者放大器本身能自动将增益调整到适当的范围。AD603的增益控制接口的输入阻抗很高,在很多通道或级联应用中,一个控制电压可以驱动多个运放;同时,其增益接口还具有差分输入能力,设计可根据信号电平和极性选择适合的控制方案。常用于自动化程度要求较高的系统中,但芯片价格昂贵。 图2.1 AD603引脚排列图2.2 AD603典型应用电路方案二:使用非易失性数字电位器X9313

11、控制运放的增益,编程简单,容易操作控制,成本低廉。 图2.3 X9313引脚图 方案三: 使用AD5220增量减量数字电位器控制运放的增益,通过控制反馈电阻的大小从而达到控制运放增益的效果。AD5220是一款单通道、128位、数字控制可变电阻(VR)器件,可实现与电位计或可变化电阻相同的电子调整功能,并针对便携式仪表和测试设备的“按钮”应用进行了优化。端接电阻值(端到端)可以再10k至100K之间选择,以适应从宽带宽到低功耗的各种应用。该10k器件可提供650KHz带宽,100k器件则可将功耗降至微瓦水平。可变电阻由芯片选择CS、计数CLK和U/D方向控制输入设置,利用机械或按钮开关(或其他触

12、点闭合器件),很容易产生这些控制输入。内部上电复位功能可将游标预设为中程量。游标增至POT末端后,不会发生翻转至另一端的现象。 图2.4 AD5220引脚图 图2.5 AD5220功能框图 综合以上方案,由于AD603适用于自动化要求高的电路中,而且芯片价格较贵,所以不选;而X9313,虽然易操作且成本低廉,但是在我手上有的仿真软件中找不到该芯片,所以也不选; 最后选择方案三,采用AD5520控制运放增益。2.2 有效值检测方案的比较与选择方案一:根据A/D 转换的获得电压平均值V,正弦波的有效值与平均值的关系,可求出有效值,但它仅适合测量无失真的正弦波,若波形存在失真,或者被测量对象为非正弦

13、波则会产生测量误差,转换方法精度不高。方案二:,根据真有效值(TRMS)原理。AD736是经过激光修正的单片精密真有效值AC/DC转换器。其主要特点是准确度高、灵敏性好(满量程为200mVRMS)、测量速率快、频率特性好(工作频率范围可达0460kHz)、输入阻抗高、输出阻抗低、电源范围宽且功耗低最大的电源工作电流为200A.用它来测量正弦波电压的综合误差不超过3%.能计算任何复杂的波形的有效值、平均值、均方值和绝对值,具有分贝对输入电压进行“平均取平均值开平方”运算,就能获得交流电压的真有效输出。 图2.6 AD736引脚图比较两种方案,我们选择方案,使用AD736直接获得输出真有效值。2.

14、3 A/D 转换方案的比较与选择(1).按照接口类型的不同可以将A/D 转换器分为串行输出和并行输出。并行转换器的转换速度快,但占用I/O 多。串行转换器输出建立时间相对于并行转换器稍长,但芯片与CPU 连接时使用引线少、电路简单、功耗低、成本低。 (2)按照数字量的位数可以分为8 位、10 位、12 位、16 位等精度的转换器,位数越大分辨率越大,但相应的成本也越高。方案一:计采用Maxim 公司的12 位串行输出型A/D 转换器MAX187/MAX189。MAX187/MAX189串行12位模数转换器可以在单5V电源下工作,接受0-5V的模拟输入。MAX187,189均为逐次逼近式ADC,

15、快速采样/保持(1.5uS),片内时钟高速3线串行接口MAX187/MAX189转换速度为75Ksps。通过一个外部时钟从内部读取数据,并可省却外部硬件而与绝大多数的数字信号处理器或微控制器通讯。接口与SPI,QSPI和Microwire兼容。 图2.7 MAX187/189功能框图图2.8 MAX187/189引脚图方案二:TLC549是 TI公司生产的一种低价位、高性能的8位A/D转换器,它以8位开关电容逐次逼近的方法实现 A/D转换,其转换速度小于 17us,最大转换速率为 40000HZ,4MHZ典型内部系统时钟,电源为 3V至 6V。它能方便地采用三线串行接口方式与各种微处理器连接,

16、构成各种廉价的测控应用系统。 图2.9 TCL549引脚图方案三:采用PCF8591进行A/D转换,PCF8591 是单片、单电源低功耗8 位CMOS 数据采集器件,具有4 个模拟输入、一个输出和一个串行I2C 总线接口。3 个地址引脚A0、A1 和A2 用于编程硬件地址,允许将最多8 个器件连接至I2C总线而不需要额外硬件。器件的地址、控制和数据通过两线双向I2C 总线传输。器件功能包括多路复用模拟输入、片上跟踪和保持功能、8 位模数转换和8 位数模拟转换。最大转换速率取决于I2C 总线的最高速率。 图2.10 PCF8591的引脚图 对于方案一,MAX187/189 虽然引脚少,结构简单,

17、但是在手上的仿真软件中却没有。而方案二,使用TCL549进行A/D转换,它能方便地采用三线串行接口方式与各种微处理器连接,构成各种廉价的测控应用系统。所以选用方案二。2.4 显示方式的设计方案的比较与选择方案一:采用LED 数码管显示。如果需要显示的内容较多,过多增加数码管进行轮流显示则控制复杂,此外,数码管需要较多连线,电路复杂,功耗比较大。方案二:采用液晶模块LM016L显示。可以显示字符、图片,利用单片机直接驱动液晶显示模块,设计简单,且显示界面宽大美观舒适,耗电小。综上所述,本设计选择方案二,采用LM016L实时显示输出功率。3硬件设计3.1 总体设计框图经过以上方案的比较和论证,最终

18、确定的系统组成框图如图所示。单片机控制数字电位器改变运放增益后,信号输入到OCL 功率放大电路,OCL 电路采用运算放大器和大功率对管构成的功率放大电路负载端,负载端经过TRMS/DC 电路可直接检测出负载的有效值,再经过8位的A/D 转换输出,可以计算出设定功率和实际输出功率和相对误差。图3.1 总体设计框图 3.2 单元电路设计3.2.1 OCL电路模块电路图如图所示:图3.1 OCL增益可调功率放大器图13中的Q1 与Q4构成第一级推挽输出电路.Q2与Q3分别是Q1 和Q4 的射级跟随器,构成第二级推挽输出电路. 合理选择V T1 V T4 的额定功率,则可以实现不同的功率输出。 因为N

19、E5532 的开环放大倍数很高,数字电位器AD5520、R10可构成大环电压深度负反馈,所以电压增益为增益A=1+(R10+数字电位器电阻)/R13,以保证输出功率大于7.5W。 仿真结果 : 图3.2 OCL功率放大器仿真图如图所示,OCL功率放大电路的输出电压值为7.98V,则输出功率为7.96W,符合要求。3.2.2 程控增益模块芯片介绍:AT89C52介绍: 图3.3 AT89C52引脚图引脚功能介绍:P0 口 P0 口是一组8 位漏极开路型双向I/O 口, 也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输

20、入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1 口P1 是一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。P2 口P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流

21、)4 个TTL 逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVXRI 指令)时,P2 口输出P2锁存器的内容。Flash编程或校验时,P2亦接收高位地址和一些控制信号。P3 口P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3

22、口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能P3 口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲

23、。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC指令才能将ALE 激活。XTAL1振荡器反相放大器及内部时钟发生器的输入端。XTAL2 振荡器反相放大器的输出端。LM016L介绍: 图3.4 LM016L引脚图第1脚:VSS为地电源。第2脚:VDD接5V正电源。 第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电

24、平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。程控增益模块电路图: 图3.5 程控增益模块电路图原理:通过单片机程序数字电位器AD5220对OCL音频功率放大器电路进行功率可程控。对放大电路设计深度负反馈,通过数字电位器AD5220对深度负

25、反馈电阻进行大小控制,从而达到对信号增益进行调整的目的,准确控制OCL输出功率。通过控制放大电路的R10和R13以及数字电位器的电阻来改变增益,也就是通过数字电位器来改变OCL功率放大器的增益。其中,数字电位器的电阻通过单片机用程序控制,即达到“程控目的”。另外,设定两个个控制键,修改程序,达到“键盘控制”的目的。在程控与键控之间,设定好延时控制。后级OCL功率放大部分用分立元件制作,供电电源为15V,输入信号电压幅度为(101000)mVrms,负载为8欧电阻。仿真结果:如图,当按键没有变化时,OCL功率放大电路的输出电压值为7.99V。 图3.6 程控增益仿真通过计算可知,ocl电路的输出

26、功率为7.98W,而LCD显示的功率为7.96,失真度小于3%。当上面的按键按下再放开时: 图3.7 程控增益控制模块电路仿真图 通过计算可知,ocl电路的输出功率为8.11W,而LCD显示的功率为7.96,失真度小于3%。由此可见OCL功率放大电路的输出电压值改变了,即输出功率发生了变化,从而达到了单片机对OCL功率放大电路的控制。3.2.3真有效值测量模块AD736芯片介绍:其引脚图如图所示: 图3.8 AD736引脚图各管脚的功能如下:+Vs:正电源端,电压范围为2.816.5V;-Vs:负电源端,电压范围为-3.2-16.5V;Cc:低阻抗输入端,用于外接低阻抗的输入电压(200mV)

27、,通常被测电压需经耦合电容Cc与此端相连,通常Cc的取值范围为1020F.当此端作为输入端时,第2脚VIN应接到COM;VIN:高阻抗输入端,适合于接高阻抗输入电压,一般以分压器作为输入级,分压器的总输入电阻可选10M,以减少对被测电压的分流。该端有两种工作方式可选择:第一种为输出AC+DC方式。该方式将1脚(Cc)与8脚(COM)短接,其输出电压为效流真有效值与直流分量之和;第二种方式为AC方式。该方式是将1脚经隔直电容Cc接至8脚,这种方式的输出电压为真有效值,它不包含直流分量。COM:公共端;Vo:输出端;CF:输出端滤波电容,一般取10F;CAV:平均电容。它是AD736的关键外围元件

28、,用于进行平均值运算。其大小将直接响应到有效值的测量精度,尤其在低频时更为重要。此模块的电路图如图所示:图3.9 真有效值转换模块电路图原理:由于AD736只能对不大于5V的电压进行真有效值转换,但是前面的OCL功率放大电路的输出值是大于5V的,所以通过由三个NE5532构成的反相放大器对电压进行改变,使得电压值在通过AD736时的电压值小于5V。然后经由AD736对电压进行真有效值转换。3.2.4 AC-DC转换模块该A/D转换模块使用的芯片是TLC549,TLC549是 TI公司生产的一种低价位、高性能的8位A/D转换器,它以8位开关电容逐次逼近的方法实现 A/D转换,其转换速度小于 17

29、us,最大转换速率为 40000HZ,4MHZ典型内部系统时钟,电源为 3V至 6V。它能方便地采用三线串行接口方式与各种微处理器连接,构成各种廉价的测控应用系统。如图所示是TLC549芯片的引脚: 图3.10 TCL549引脚图其引脚功能为:REF+:正基准电压输入 2.5VREF+Vcc+0.1。REF:负基准电压输入端,-0.1VREF-2.5V。且要求:(REF+)(REF-)1V。VCC:系统电源3VVcc6V。GND:接地端。/CS:芯片选择输入端,要求输入高电平 VIN2V,输入低电平 VIN0.8V。DATA OUT:转换结果数据串行输出端,与 TTL 电平兼容,输出时高位在前

30、,低位在后。ANALOGIN:模拟信号输入端,0ANALOGINVcc,当 ANALOGINREF+电压时,转换结果为全“1”(0FFH),ANALOGINREF-电压时,转换结果为全“0”(00H)。I/O CLOCK:外接输入/输出时钟输入端,同于同步芯片的输入输出操作,无需与芯片内部系统时钟同步。A/D转换模块的电路图如图: 图3.11 A/D转换模块电路原理:前级的真有效值模块电路的输出端接入TL549的AIN输入端,经由TCL549芯片将输入的模拟信号转为数字信号,然后通过单片机送入LCD显示。3.3 总电路图总体电路图如图所示:图3.12 总体电路图原理:本程控音频OCL功率放大器

31、用单片机作为主控制器,通过数字电位器AD5220对信号增益进行调整,准确控制OCL输出功率,并实时LCD液晶显示输出功率。在OCL功率放大部分:用NE5532集成芯片作为前级功率放大,用分立元件制作后级放大电路,实现推挽输出。供电电源为15V,输入信号电压幅度为(101000)mVrms,负载为8欧电阻。 在程控部分:对放大电路设计深度负反馈,通过数字电位器AD5220对深度负反馈电阻进行大小控制,从而达到对信号增益进行调整的目的,准确控制OCL输出功率。在AC-DC转换部分:利用AD736芯片搭建电路,对输入电压进行“平均取平均值开平方”运算,就能获得交流电压的真有效输出。在A/D模数与液晶

32、显示转换部分:利用TCL549模数转换芯片和LM016L液晶将模拟输出功率转换成数字信号,送入单片机,经过单片机程序处理,送出至LCD液晶显示。总体仿真图:图3.13 总体仿真图 通过观看电压表的数值,运用公式得到ocl的输出功率值,然后对比LCD的数值,可以发现他的失真度小于3%。4软件设计4.1 流程图 图4.1 软件流程图4.2 程序#include#include#include/*IO接口定义*/sbit EN=P17;/*使能端口*/sbit RW=P16;/*读写控制端口*/sbit RS=P15;/*命令数据控制端口*/sbit AD5220_CLK=P23;sbit AD52

33、20_CS_LOW=P24;sbit AD5220_U_D=P25;sbit ADCLK=P22; /时钟信号sbit ADOUT=P20; /数据输出脚sbit ADCS=P21; /片选信号sbit key0=P10; sbit key1=P11;#define Vref5.0 /*宏定义*/#define uchar unsigned char#define uint unsigned int#define LCD_data P0#define LCD_Busy 0x80/*函数声明*/void LCD_SendDat(uchar dat);void LCD_SendCmd(uchar

34、cmd);void LCD_Init(void);void LCD_Display(uchar x_addr,uchar y_addr,uchar *pStr,uchar strLen);void delay(uint z);void LCD_WriteOneByte(uchar byte);unsigned char ReadData(void);void VoltConvert(void);void decrease(void);void enlargement(void);void keyscan(void);void resistorinit();/*变量声明*/float Power

35、;/*数据定义*/code uchar str1= The Power is:;uchar str25;/*主函数开始*/void main () /*EA=1;/开启总中断EX1=1; /开启外部中断 1,即P33引脚,EX0为中断1,P32引脚IT1=1; /IT1=1为下降沿触发EX0=1; /开启外部中断 0,即P32引脚,EX1为中断1,P33引脚IT0=1; /T0=1为下降沿触发 */ LCD_Init();resistorinit();LCD_Display(0,0,str1,strlen(str1);while(1)VoltConvert();/delay(1);LCD_Di

36、splay(6,1,str2,5);keyscan();/*写数据*/void LCD_SendDat(uchar dat) RS=1;/写入数据LCD_WriteOneByte(dat);/*写指令*/void LCD_SendCmd(uchar cmd) RS=0;LCD_WriteOneByte(cmd);/*初始化*/void LCD_Init(void)LCD_SendCmd(0x38);LCD_SendCmd(0x38);LCD_SendCmd(0x0c);LCD_SendCmd(0x06);LCD_SendCmd(0x01);/*显示字符串*/void LCD_Display(u

37、char x_addr,uchar y_addr,uchar *pStr,uchar strLen)uchar addr=0,i=0;if(y_addr)addr=x_addr+0xc0;elseaddr=x_addr+0x80;LCD_SendCmd(addr);while(*pStr&i0;x-)for(y=5;y0;y-);/*写入一个字节*/void LCD_WriteOneByte(uchar byte) RW=0;/*写操作*/LCD_data=byte;EN=1;EN=0; delay(1);/* 电压转换函数 * 将读出的八位数据转换成实际电压值 * 为了避免出现浮点数,本例将

38、电压值放大100倍显示 */ void VoltConvert(void) unsigned char ADCvalue;unsigned int temp;ADCvalue=ReadData();Power=(ADCvalue*Vref)/256.0)*(ADCvalue*Vref)/256.0)/8.0)*9.0+0.14;temp=Power*100;if(Power10) str20=temp/100+0;str21=0X2E;str22=temp%100/10+0;str23=temp%10+0;str24=0x20; elsestr20=temp/1000+0;str21=temp

39、/100-temp/1000*10+0;str22=0X2E;str23=temp%100/10+0;str24=temp%10+0; /* 读取ADC内部的数据 */unsigned char ReadData(void)unsigned char temp,i;/ADCS=1;ADCS=0;_nop_();for(i=0;i8;i+)temp=1;ADCLK=0;_nop_();ADCLK=1;if(ADOUT)temp |=0x01;elsetemp |=0x00;ADCLK=0;ADCS=1; /*/延时17us,为下一次转换做准备 for(i=0;i17;i+)_nop_(); */

40、return temp;/数字电位器模块函数/*增大音量功能*/void enlargement(void)AD5220_CS_LOW=0; /片选AD5220_CLK=1; AD5220_U_D=0;AD5220_CLK=0; /下降沿 AD5220_CS_LOW=1;/*减小音量功能*/void decrease(void)AD5220_CS_LOW=0; /片选AD5220_CLK=1; AD5220_U_D=1;AD5220_CLK=0; /下降沿 AD5220_CS_LOW=1;/*数字电位器阻值初始化为满量程的一半*/void resistorinit()int number=0;AD5220_CS_LOW=0; /片选for(;number 128;number+)AD5220_CLK=1; AD5220_U_D=0;AD5220_CLK=0; /下降沿number=0;for(;number 64;number+)AD5220_CLK=1; AD5220_U_D=1;AD5220_CLK=0; /下降沿 AD5220_CS_LOW=1;/键盘扫描程序void keyscan(void)key0=1;key1=1;if(key0=0|key1=0)delay(1);if(key0=0|key1=0)if(key0=0) enlargement(

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922