




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数字化语音存储与回放系统摘 要语音信号处理属于信息科学的一个重要分支,大规模集成技术的高度发展和计算机技术的飞速前进,推动了这一技术的发展。在数字音频技术和多媒体技术迅速发展的今天,传统的磁带语音录放系统因体积大、使用不便、放音不清晰而受到了巨大挑战。本组提出的体积小巧,功耗低的数字化语音存储与回放系统,可以有效的解决传统的语音录放系统在电子与信息处理的使用中受到的限制。本文提出了以SST89E554RC芯片为核心的单片机小系统,用它来实现整个数字化语音存储与回放系统的逻辑控制。单片机将通过模数转换器A/D转换的数字信号送入外部存储器中,在回放时,单片机再从存储器中读出,送到数模转换器D/A转
2、换成模拟信号输出。系统采用了键盘选择压缩方式,在字符型显示器上显示,并可实现实时语音存储与回放,性能稳定,并且界面友好。多次的测试实验表明,本系统基本满足设计要求。文中重点讨论了小系统的设计过程、硬件流程和软件的调试问题,研究了采用DPCM编码方式以解决因存储空间不够而引起的存储时间不够的问题。关键词 单片机小系统,模/数转换,数/模转换,程序运行中编程,差值编码AbstractThe speech signal processing belongs to an important branch of information science, large-scale integration t
3、echnology development and the height of the rapid progress in the computer technology, promote the development of this technology. In digital audio technology and multimedia technology rapid development, the traditional tape voice recording system for large size, use inconvenience, playback not clea
4、r and a huge challenge. Group of small size, low power consumption of digital voice storage and playback system, can effectively solve the traditional voice recording system in electronic and information processing in the use of the limit.In SST89E554RC chip is proposed in this paper is the core of
5、singlechip processor system, using it to make the digital voice storage and playback system logic control. Adc chip will be through the A/D conversion of digital signals into the external memory chip in A replay, and again from memory to read, dac D/A converted into analog signal output. System USES
6、 a keyboard, choose compression in the character screen display, and can realize real-time speech storage and playback, stable performance, and friendly interface. Many of the test experiments show that this system basically meet the design requirements.In this paper, the design process of small sys
7、tem, hardware and software of debugging process, research using DPCM coding method to solve the lack of storage space for storage time enough to cause problems.Key Words Singlechip processor system ,A/D conversion,D/A transformation, In Application Programming,Differential Pulse Code Modulation.-I-目
8、 录摘 要IAbstractII目 录III1 引言11.1 数字化语音存储与回放系统设计要求11.2 系统方案论证12 数字化语音存储与回放系统硬件设计32.1语音前置放大器设计32.1.1 语音输入32.1.2 双话筒语音输入级电路32.1.3 中间放大级电路52.1.4 采用仪表放大器电路作为双话筒语音输入放大电路72.1.5 话筒的安装方法82.2 带通滤波器电路设计82.2.1 低通滤波器82.2.2 高通滤波器112.3 A/D和D/A转换器电路设计152.3.1 A/D转换器电路设计152.3.2 单片机和D/A转换器电路设计183 总体电路设计223.1 幅频特性校正电路设计2
9、23.2 音频放大器和自动增益控制电路(AGC)电路设计233.3 数字化语音存储与回放系统方框图254 数字化语音存储与回放系统软件设计264.1 单片机程序流程图264.2 初始化子函数设计294.3 产生波形数据子函数294.4 系统设计主函数30结 论34致 谢35参考文献36附 录37-III-1 引言目前,随着数字化信号处理技术的不断提高,单片机,数字信号处理器以及语音处理大规模集成电路的进步,语音合成,语音识别,语音存储和回放技术的应用越来越广泛,尽管现在各种语言合成芯片,语音处理应用电路有许多,但都需要增加硬件投资,在一些由单片机构成的测控系统中,由于单片机接口有限,还需要扩宽
10、硬件接口线路,本文介绍的语音存储与回放系统中,没有使用专用的语音处理芯片,不需扩宽接口电路,只利用一般的单片机测控系统中都有的硬件电路(如A/D、 D/A、,存储器等)就能完成语音信号的数字化处理,即能完成语音的存储与回放,实现单片机测控系统的语音提示报警及语音提示操作。因此特别适用于单片机测控系统,为单片机测控系统的语音报警及语音提示操作在几乎不需增加硬件投资情况下的语音处理提供了一种思路。传统的磁带语音录放系统因其体积大、使用不便,在电子与信息处理的使用中受到许多限制。本文提出的体积小巧,功耗低的数字化语音存储与回放系统将完全可以替代它。数字化语音存储与回放系统的基本原理是对语音的录音与放
11、音的数字控制。其中,关键技术在于:为了增加语音存储时间,提高存储器的利用率,采用了非失真压缩算法对语音信号进行压缩后再存储,而在回放时再进行解压缩;同时,对输入语音信号进行数字滤波以抑制杂音和干扰,从而确保了语音回放的可靠质量1.1 数字化语音存储与回放系统设计要求设计并制作一个数字化语音存储与回放系统,其示意图如图1.1所示拾音器放大器1带通滤波器ADC微处理器存储器DAC耳机放大器2带通滤波器图1.1数字化语音存储与回放系统示意图1.2 系统方案论证方案一: 语音编码方案:人耳能听到的声音是一种频率范围为20 Hz20000 Hz ,而一般语音频率最高为3400 Hz。语音的采集是指语音声
12、波信号经麦克风和高频放大器转换成有一定幅度的模拟量电信号,然后再转换成数字量的全过程。根据“奈奎斯特采样定理”, 采样频率必须大于模拟信号最高频率的两倍, 由于语音信号频率为3003 400 Hz ,所以把语音采集的采样频率定为8 kHz。从语音的存储与压缩率来考虑,模型参数表示法明显优于信号波形表示法4。但要将之运用于单片机,显然信号波形表示法相对简单易实现。基于这种思路的算法,除了传统的一些脉冲编码调制外,目前已使用的有VQ技术及一些变换编码和神经网络技术,但是算法复杂,目前的单片机速度底,难以实现。方案二: 所设计的数字化语音存储与回放系统方框图如图1.2所示。系统由语音输入、A/D转换
13、数据存储、微控制器系统、D/A转换、语音播放系统等电路组成。本设计采用的是方案二。前置放大电路·带通滤波器²¨取样/采样电路末级放大器高频校正´带通滤波器A/律扩张电路微控制器锁存器´存储器A/DS/HAGCD/AP1P2P3X/sinXX=f/fs自动增益控制A/律压缩电路图1.2 数字化语音存储与回放系统方框图2 数字化语音存储与回放系统硬件设计2.1语音前置放大器设计2.1.1 语音输入语音输入采用驻极体电容话筒(简称ECM)。驻极体电容话筒是一种体积小、频带宽、噪音小和灵敏度高的话音传感器。其内部结构和连接形式如图2.1所示。驻极体电容
14、话筒的主要技术参数有:灵敏度典型值为-66-56dB或515mV/Pa;频率响应典型值为50Hz12kHz;输出阻抗典型值不大于2k;工作电压DC为1.512V。2.1.2 双话筒语音输入级电路为抵消语音输入背景噪声,可采用两个特性相同的驻极体电容话筒,将它们在空间上背对背安放,并在电气上通过适当的连接,使其输出信号幅度相等、相位相反地叠加起来,就能将两个话筒在所处环境下拾入的背景噪声抵消掉;由于说话人只对准其中一个话筒讲话,因此有用的语音信号并不会被抵消掉。图2.2为双话筒语音输入级的电原理图,运算放大器采用了低噪声高输入阻抗的运算放大器OP27/37。该输入级的电压增益由电阻R3和R4的比
15、值决定,即A=1+R3/R4=1+100/1100(40dB)在图2.2中,ECM1采用源级(S)输出方式接法,其输出为同相信号;ECM2采用漏极D输出方式接法,其输出为反相信号。当ECM1和ECM2同时拾到同源声波时,他们就会输出波形一样而相位相反的两个信号,起到了相互抵消的作用。调节电位器Rw可使输出端的背景噪声电压为最小。OP27/37引脚端封装形式和偏移调节电路如图2.3所示。(a)外形结构(b)内部电路 DGS (c)接法1 DGS +(d)接法2图2.1驻极体电容话筒内部结构和连接形式C47F+R2IC-+100F1KR4C2OP27+输出100KR3+C4100F47F+5VC3
16、+R1C1ECM1DSRw5.1KDCSECM2R1=R1=200K图2.2双话筒语音输入级电路2.1.3 中间放大级电路中间放大电路如图2.3所示,最大增益为40dB,增益可通过电位器Rw进行调节。元件R1和R2的参数应满足R2=(1100)R1关系。图中运算放大器采用NE5532N、NE5534等芯片12348765OP27OP37BALIN-IN+V-BALOUTV+N.C.(a)引脚端封装形式+-41输入23V-V+输出6Rp10K87(b)偏移调节电路图2.3OP27/37引脚段封装形式和偏移调节电路R1R1/R2R1+15V-15VR1R1RwR1运算放大器R1图2.4中间放大级电
17、路2.1.4 采用仪表放大器电路作为双话筒语音输入放大电路如果设计者购买的是只有两个外引脚驻极体话筒(其S与G引脚端在内部已连接在一起),则可采用如图2.5所示的仪表放大器电路作为双话筒语音输入放大电路。电压输出为Vout=(R3/R)(2R2/R1)+1 V。ECM1和ECM2都采用漏极D输出方式接法,如图2.6所示。¡÷V+-+-+-+-25KRR3+15VR2A1 LF355+15V23-15V416RR2R1R332+154-15100pF8Vout67A2 LF355A3 LM3084732-15V75图2.5 仪表放大器电路作为双话筒语音输入放大电路+15VDS
18、驻极体电容话筒1图2.6 ECM采用漏极D输出方式2.1.5 话筒的安装方法将ECM1和ECM2背对背分别安装在同一圆柱形套筒上,话筒的两背之间用隔音材料填充起来,用屏蔽线将输出信号送到放大器的输入端。使用时先调节电位器Rw使输出噪声达到最小,录音时只要将ECM1和ECM2中任意一个对着说话人即可。2.2 带通滤波器电路设计根据设计要求,带通滤波器的同代范围为300Hz3.4kHz,上下截止频率之比为3400/300=11.32,是一个宽带滤波器,无法采用一般的带通滤波器的设计方法来实现,但可采用低通滤波器级联高通滤波器的方法来实现。2.2.1 低通滤波器从设计要求可知,低通滤波器的通带(上限
19、)频率fc=3.4kHz,阻带频率fs/2=4kHz,通带内的衰减不大于-3dB,阻带内的衰减不小于-40dB。通过查表或者使用相关的滤波器设计软件可以计算出该低通滤波器的阶数:巴特沃兹滤波器需要29阶;切比雪夫滤波器需要10阶;椭圆滤波器需要5阶;贝塞尔滤波器大于20阶。1) 采用专用滤波器芯片的低通滤波器电路1Hz10kHz,在阻带频率初可达-60dB的衰减,采用+5V电压供电。MAX7403的引脚端封装形式和应用电路如图2.7所示。通过改变连接到芯片的时钟频率,即可获得所要求技术指标的低通滤波器,滤波器时钟信号CLK可采用自建始终或者是通过外部输入时钟。若采用外部始终,则fc=fclk/
20、100;若采用内部时钟发生器,则连接到引脚端CLK和GND之间的电容Cosc=K×10³/fosc。 12348765MAX7403COMINGNDVddCLKOSSHDNOUT(a) 引脚端封装形式MAX7403INCLKOUTCOMSHDNOS输出时钟输入0.1FVsupplyGNDVdd(b)应用电路图2.7 MAX7403引脚端封装形式和应用电路MAX7403滤波器的输入阻抗为Zin=1000/0.85fclk(M)其中,fclk的单位为kHz。MAX7403具有较低的输出阻抗,可驱动1k与500pF并联的负载阻抗。2) 采用运算发达器构成的低通滤波器电路一个采用运
21、算放大器构成的5阶椭圆低通滤波器电路如图2.8所示。由设计软件分析结果可知:该滤波器第一级电路的截止频率为819.86Hz,增益为1;第二级电路的品质因数Q=16.82,fp=3.347kHz,fz=4.105Hz,增益为1.0093;第三级电路的品质因数Q=2.75.fp=2.506kHz,fz=5.576kHz,增益为1.1286。图中运算放大器可采用NE5532N、NE5534等芯片。U188.24k2.2nF-20.90k2.42nF2.299k1.15nF89.36k833.3k120nF83.21k678nF9.922k15nF-Uo6.667k51.83k2.05nF2.299k
22、9.922k图2.8 5阶椭圆低通滤波器电路2.2.2 高通滤波器从设计要求可知,高通滤波器的通带(起始)频率fL=300Hz。为了抑制工频干扰,可将阻带频率定为50Hz,通带内衰减不待遇-3dB,阻带内的衰减不小于-40dB。由于fL/502,可用下列方法估算出该高通滤波器的阶数;由fL=2n ,解得倍频程n=2.58,并计算出过渡带内一个倍频程的衰减为-6dB,所以可计算得No=-15.47/-62.6阶。可使用一个3阶的高通滤波器达到设计要求。1)采用专用滤波器芯片的高通滤波器电路高通滤波器可采用双2阶通用开关电容有源滤波器MAX260芯片,通过 单片机精确地控制MAX260滤波器的功能
23、,实现低通、高通、带通、电阻及全通之类的各种滤波器。MAX260可采用单电源(+5V)或者双电源(±5V)供电。对于滤波器的编程,需要确定3个参数:模式MODE、中心频率fo和品质因数Q。MAX260的引脚端封装形式及与单片机的接口电路如图2.9。MAX260的模式选择关系如表2.1所列,高通滤波器应用选择模式MODE3。 123456789101112131415161718192021222324MAX260BPaN.C.HPaN.C.INaD1A3CLK OUTV+A2CLKaLPaINaLPaBPaD0GNDV-_WRA0HPaA1CLKb(a)引脚端封装形式(b)与微控制器
24、接口电路图2.9 MAX260的引脚端封装形式及与单片机的接口电路表2.1 MAX260的滤波器模式选择(2阶滤波器形式)模式M1、M2滤波器功能fNHOLPHOBPHON1(f0)HON2(ffCLK/4 )其他10、0LP、BP、Nf0-1-Q -1-120、1LP、BP、Nf0-Q-0.5-131、0LP、BP、HPf0-QHOHP=1-Q+RG/RL+RG/RHHOHP=-141、1LP、BP、AP-2QHOAP=-1f2=f0,Q2=Q表中:fo为中心频率:fN 为陷波频率;HOLP 为在DC的低通增益;HOBP 为在fo带通增益;HOAP为全通增益;fz,Qz为复合极对的f和Q。为
25、了实现设计要求的高通滤波器,需要使用2个中心频率、品质因数等参数完全相同的2阶滤波器级联来实现。为了使该开关电筒滤波器的响应尽量接近连续型滤波器的响应,比值fCLK/fo以及Q值应尽量取大一些。由于采用了2个完全相同的滤波器进行级联来实现高通滤波器,因此级联之后带宽会缩小。2个滤波器级联后,带宽将缩小为原来的0.644,因此,应将每一个滤波器的截止频率fc预扩为300Hz/0.644466Hz,通常比值fCLK/fo应在150以上。当取fCLK/fo=150,并取fCLK=75Hz时,可计算得fo的数值为500Hz根据MAX260的使用资料可计算和查找fo、Q、模式(MODE)的配置数据,在上
26、电时通过单片机写入芯片内部的寄存器中去,实现满足预定指标要求的高通滤波器。将MAX260滤波器A的高通输出端(HP)连接滤波器B的输入端,滤波器B的高通输出端(HP)作为信号的输出可实现一个4阶高通滤波器,电路如2.11所示。图2.11 MAX260实现的4阶高通滤波器电路2) 采用运算放大器构成的高通滤波器电路一个采用运算放大器构成的3阶Butterworth高通滤波器电路如图2.12所示。由Multisim7仿真软件的分析结果可知:该滤波器第一级电路的截止频率为299.763Hz,增益为1;第二级电路的品质因数Q=1,f=299.763Hz,增益为1,图中运算放大器可采用NE5532N、N
27、E5534等芯片。图2.12 3阶Butterworth高通滤波器电路2.3 A/D和D/A转换器电路设计2.3.1 A/D转换器电路设计A/D转换器电路采用ADC0804(字长为8位,转换速率为10kHz)芯片。ADC0804与单片机接口电路如图2.13所示,时钟频率可通过选择外接RC元件值将其设置为不小于800kHz(fCLK1/1.1RC,R10k),也可采用外部时钟。由于ADC0804完成一次摸/数转换需要100s的时间,在此期间送到ADC0804输入端的模拟信号样本必须保持不变,否则会引起转换误差,因此在ADC0804之前还必须加上一级采样/保持电路(S/H),可选用LF398集成S
28、/H芯片。由LF398的技术参数表中得知,当保持电容CH=1000pF时,该器件的捕获时间tAC=4s,孔径不确定时间tAU=20ns。上述指标完全可满足语音信号(300Hz3.4kHz)处理要求。LF398的引脚端封装形式和应用电路如图2.14所示。图2.13 ADC0804引脚端封装形式和与单片机接口电路(a) 引脚端封装形式(b)应用电路图2.14 LF398的引脚端封装形式和应用电路2.3.2 单片机和D/A转换器电路设计1) 单片机电路单片机电路采用AT89S52单片机,AT89S52是一个低功耗、高性能的CMOS8位单片机,内含8KB可反复擦写(大于1000次)ISP Flash
29、ROM;256×8位内部RAM;3个16位可编程定时器/计数器;32个双向I/O口;全双工UART串行中断口线;2个外部中断源;3级加密位;双线据寄存器指针;看门狗(WDT)电路;软件设置空闲和省电功能,中断唤醒省电模式;时钟频率为333MHz;工作电压为4.55.5V。器件采用Atmel公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构。2) D/A转换器电路D/A转换器电路可采用双8位乘法数/模转换器AD7258芯片,具有单独的片内数据锁存器,数据通过公共输入口传送至两个DAC数据锁存器的任一个,控制输入端DACA/DACB决定哪一个DAC被装载
30、,工作电源为515V功耗小于15mW。AD7528的引脚端封装形式有DIP/SOIC封装,时序图如图2.15所示,应用电路和与单片机的接口电路如图2.18所示,输入数据与输出电压关系如表2.2和2.3所列。图2.15 AD7528的时序图注:1.所有的输入信号上升和下降时间测量为VDD=+5V,tR=tF=20ns:VDD=+15V,tR=tF=40ns; 2.时间测量参考电平是(VIH+VIL)/2表2.2 单极性应用电路输入数据与输出电压关系DAC锁存内容MSB LSB模拟输出(DAC A 或 DAC B)11111111-VIN (255/256)10000001-VIN(129/256
31、)10000000-VIN(128/256)=-VIN /201111111-VIN (127/256)00000001-VIN (1/256)00000000-VIN (0/256)表2.3 双极性应用电路输入数据与输出电压关系DAC锁存内容MSB LSB模拟输出(DAC A 或 DAC B)11111111+VIN (127/128)1000000110000000001111111-VIN (1/128)00000001-VIN (127/128)00000000-VIN (128/128) (a)单极性应用电路(b)双极性应用电路(c)与单片机的接口电路图2.18 AD7528应用电路
32、和与单片机的接口电路3 总体电路设计3.1 幅频特性校正电路设计幅频特性校正电路采用一阶RC网络,电路如图3.1所示,该一阶RC网络科补偿因D/A恢复语音信号时引入的高频分量的损失,对高频分量稍作提升,实现近似校正。根据公式sin(f/fs)/(f/fs)计算可得,在采样频率为8kHz时,当频率为300Hz时衰减为0.02dB;在频率为3.4kHz处衰减为-2.75dB。选择适当的阻容元件,可近似满足在3.4kHz处提升2.75dB要求,经计算可得电阻R1=R2=1k,电容C为0.061F。图3.1采用一阶RC网络的幅频特性校正电路3.2 音频放大器和自动增益控制电路(AGC)电路设计音频放大
33、器电路采用电压放大和功率放大两级组成。电压放大级可采用2.4所示电路,功率放大级可采用专用芯片TDA2040等芯片来实现。TDA2040应用电路如图3.2所示,该电路最大可提供22W的输出功率。(a)应用电路(双电源供电)(b)应用电路(单电源供电)图3.2 TDA2040引脚端封装形式和应用电路AGC电路时利用场效应管工作在可变电阻区,漏极电阻受到栅极电压控制的特性来实现的。整个电路由包括场效应管在内的压控电压增益放大器、整流滤波电路、直流放大器和比较器组成,实现增益的闭环控制。AGC电路如图3.3所示。运放A1构成压随器,作为输入级。运放A2构成反相放大器,其增益由场效应管的源极和漏极之间
34、的电阻决定。电阻R1、R2以及R3使得场效应管的伏安特性呈线性化。输出电压uop经过整流器和滤波器形成控制电压。当uop发生变化时,控制电压随之发生变化,因此,场效应管的导通电阻发生改变,放大器的放大倍数发生改变,音频信号强时自动减小放大倍数,信号弱时自动增大放大倍数,从而实现音量的自动调节。A/律压扩电路可采用专用的集成电路实现,竞赛中由于工作量大、时间紧等关系,一般难以完成。这部分电路略。+-+-+-+-Uip1¦ÌF1MIC174115KR15.6KIC2100nF+6.3V4.7K4.7K4.7K4.7K4.7K47K4.7KIC3741D20A810A81IC47
35、41Uop100K100K-15V39KVR110K增益调节0A81D1R422010K100KR5图3.3 AGC电路3.3 数字化语音存储与回放系统方框图所设计的数字化语音存储与回放系统方框图如图3.4所示。系统由语音输入、A/D转换数据存储、微控制器系统、D/A转换、语音播放系统等电路组成。前置放大电路·带通滤波器²¨取样/采样电路末级放大器高频校正´带通滤波器A/律扩张电路微控制器锁存器´存储器A/DS/HAGCD/AP1P2P3X/sinXX=f/fs自动增益控制A/律压缩电路图3.4 数字化语音存储与回放系统方框图4 数字化语音存储
36、与回放系统软件设计4.1 单片机程序流程图单片机程序主流程图如4.1所示。录音字程序流程图4.2所示;放音子程序流程图如4.3所示。语音压缩编码方式种类比较多。增量调制(AM)和差分脉码调制(DPCM)是两种常用的语音压缩编码方式,分别可达到8倍和2倍的压缩比。增量调制是一种实现简单且压缩比高的语音压缩编码方法,该方法只用一位码记录前后语音采样值S(n)、S(n-1)的比较结果,若S(n)S(n-1),则编为“1”码;反之,则为“0”码。这种技术可将语音转换的数码率由64kbps降低至8kbps,存储时间可加长至128s但噪声大,信号失真明显。本设计选用DPCM压缩编码方案。DPCM是一种比较
37、成熟的压缩编码方法,可把数码率由64kbps压缩至32kbps,从而使语音存储时间增加一倍,达到32s,并且信噪比损失小。其数学表达式如下: -8 (S(n)-A(n-1)-8) e(n)= S(n)-A(n-1) (-8S(n)-A(n-1)7) 7 (S(n)-A(n-1)7) A(n)=A(n-1)+e(n) (4-1)其中;S(n)表示当前采样值;A(n)表示增量累加值;A(n-1)作为预测值;e(n)表示差分值。开机或按RESET键系统复位初始化:设置定时器工作方式、时间常数和中断功能,停止定时器的工作,对开关电容滤波器编程,开键盘中断.等待键盘中断图4.1 主程序流程图录音子程序入
38、口判断模式=0?读ADC上次数据启动本次ADC转换写上次ADC数据到存储器数码管计数显示换页(视需要)存储器是否溢出停止定时器工作开键盘中断返回返回等待定时器再次中断YN读ADC上次数据启动本次ADC转换计算CV-PV,求出带符号的差值写入到缓冲器中缓冲器中一个字节准备好?将缓冲器中的字写入到存储器当中数码管计数显示换页(视需要)存储器是否溢出?NYNYNY图4.2 录音子程序流程图放音子程序入口判断模式=0?从RAM读取语音数据送给D/A转换器换页(视需要)数码管计数显示放音是否结束停止定时器工作开键盘中断返回返回等待定时器再次中断YN从RAM读取语音数据数码管计数显示写入到缓冲器中缓冲器当
39、前数据处理完毕?由PV于DIFF计算出语音样本的实际值送给D/A转换器换页(视需要)放音是否溢出?NYNNY换页(视需要)Y 图4.3 放音子程序流程图4.2 初始化子函数设计初始化子函数的主要工作是设置定时器的工作模式、初值预置、开中断和打开定时器等。在这里,定时器T1工作于16位定时模式,单片机按定时时间重复地把波形数据送到DAC0832的寄存器。其程序流程图如图4.4所示:开 始T1置初值,设为16位定时模式T1中断允许,开定时器,开总中断返 回图4.4初始化子函数程序流程图4.3 产生波形数据子函数 波形数据产生函数是定时器T1的中断程序。当定时器计数益出时,发生一次中断。当发生中断时
40、,单片机按次序将波形数据表中的波形数据一一送入DAC0832,DAC0832根据输入的数据大小输出对应电压。波形数据产生子函数程序流程图如图4.5所示:图4.5波形数据产生子函数程序流程图4.4 系统设计主函数主函数的任务是进行上电初始化,并在程序运行中不断查询按键情况执行相应的功能。以下是简易低频信号源发生器C51源程序清单:#include"reg51.h"#define uchar unsigned char#define uint unsigned int#define key P3#define dataout P1uchar code sin_tab256= 0
41、x80,0x83,0x85,0x88,0x8A,0x8D,0x8F,0x92, 0x94,0x97,0x99,0x9B,0x9E,0xA0,0xA3,0xA5,0xA7,0xAA,0xAC,0xAE,0xB1,0xB3,0xB5,0xB7,0xB9,0xBB,0xBD,0xBF,0xC1,0xC3,0xC5,0xC7,0xC9,0xCB,0xCC,0xCE,0xD0,0xD1,0xD3,0xD4,0xD6,0xD7,0xD8,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF,0xE0,0xE1,0xE2,0xE3,0xE3,0xE4,0xE4,0xE5,0xE5,0xE6,0xE6,
42、0xE7,0xE7,0xE7,0xE7,0xE7,0xE7,0xE7,0xE7,0xE6,0xE6,0xE5,0xE5,0xE4,0xE4,0xE3,0xE3,0xE2,0xE1,0xE0,0xDF,0xDE,0xDD,0xDC,0xDB,0xDA,0xD8,0xD7,0xD6,0xD4,0xD3,0xD1,0xD0,0xCE,0xCC,0xCB,0xC9,0xC7,0xC5,0xC3,0xC1,0xBF,0xBD,0xBB,0xB9,0xB7,0xB5,0xB3,0xB1,0xAE,0xAC,0xAA,0xA7,0xA5,0xA3,0xA0,0x9E,0x9B,0x99,0x97,0x94,
43、0x92,0x8F,0x8D,0x8A,0x88,0x85,0x83,0x80,0x7D,0x7B,0x78,0x76,0x73,0x71,0x6E,0x6C,0x69,0x67,0x65,0x62,0x60,0x5D,0x5B,0x59,0x56,0x54,0x52,0x4F,0x4D,0x4B,0x49,0x47,0x45,0x43,0x41,0x3F,0x3D,0x3B,0x39,0x37,0x35,0x34,0x32,0x30,0x2F,0x2D,0x2C,0x2A,0x29,0x28,0x26,0x25,0x24,0x23,0x22,0x21,0x20,0x1F,0x1E,0x1D,
44、0x1D,0x1C,0x1C,0x1B,0x1B,0x1A,0x1A,0x1A,0x19,0x19,0x19,0x19,0x19,0x19,0x19,0x19,0x1A,0x1A,0x1A,0x1B,0x1B,0x1C,0x1C,0x1D,0x1D,0x1E,0x1F,0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x28,0x29,0x2A,0x2C,0x2D,0x2F,0x30,0x32,0x34,0x35,0x37,0x39,0x3B,0x3D,0x3F,0x41,0x43,0x45,0x47,0x49,0x4B,0x4D,0x4F,0x52,0x54,0x56,
45、0x59,0x5B,0x5D,0x60,0x62,0x65,0x67,0x69,0x6C,0x6E,0x71,0x73,0x76,0x78,0x7B,0x7D;uchar code thr_tab256= 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87, 0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0
46、xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF,0xBF,0xBE,0xBD,0xBC,0xBB,0xBA,0xB9,0xB8,0xB7,0xB6,0xB5,0xB4,0xB3,0xB2,0xB1,0xB0,0xAF,0xAE,0xAD,0xAC,0xAB,0xAA,0xA9,0xA8,0xA7,0xA6,0xA5,0xA4,0xA3,0xA2,0xA1,0xA0,0x9F,0x9E,0x9D,0
47、x9C,0x9B,0x9A,0x99,0x98,0x97,0x96,0x95,0x94,0x93,0x92,0x91,0x90,0x8F,0x8E,0x8D,0x8C,0x8B,0x8A,0x89,0x88,0x87,0x86,0x85,0x84,0x83,0x82,0x81,0x80,0x7F,0x7E,0x7D,0x7C,0x7B,0x7A,0x79,0x78,0x77,0x76,0x75,0x74,0x73,0x72,0x71,0x70,0x6F,0x6E,0x6D,0x6C,0x6B,0x6A,0x69,0x68,0x67,0x66,0x65,0x64,0x63,0x62,0x61,0
48、x60,0x5F,0x5E,0x5D,0x5C,0x5B,0x5A,0x59,0x58,0x57,0x56,0x55,0x54,0x53,0x52,0x51,0x50,0x4F,0x4E,0x4D,0x4C,0x4B,0x4A,0x49,0x48,0x47,0x46,0x45,0x44,0x43,0x42,0x41,0x40,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5A,0
49、x5B,0x5C,0x5D,0x5E,0x5F,0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6A,0x6B,0x6C,0x6D,0x6E,0x6F,0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7A,0x7B,0x7C,0x7D,0x7E,0x7F;uint data THHL=65535;uchar data keyword,n=0;bdata sinthr;sbit sin_thr=sinthr0;sbit ww=key7;keyscan()keyword=key&
50、0x07;if(keyword!=0x07) while(key&0x07)!=0x07); switch(keyword) case 6:if(THHL>=65235)THHL=65535;elseTHHL=THHL+255;break; case 5:if(THHL<=500)THHL=0;elseTHHL=THHL-255;break; case 3:sin_thr=sin_thr;break; default:break; clearmen()key=0xff;dataout=0x00;THHL=65535;TH1=THHL/256;TL1=THHL%256;TMOD=0X11;ET1=1;TR1=1;EA=1;main()clearmen();while(1) keyscan(); void time_intt1(void) interr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省常州市天宁区博爱路小学2024-2025学年数学四下期末考试模拟试题含解析
- 江苏省徐州地区2024-2025学年三下数学期末考试模拟试题含解析
- 上海电影艺术职业学院《西方思想文化专题研究》2023-2024学年第二学期期末试卷
- 盐城师范学院《现代通信技术概论》2023-2024学年第二学期期末试卷
- 2025年河南洛阳栾川钼业集团股份有限公司招聘笔试参考题库附带答案详解
- 2025年云南玉溪新能源汽车推广发展有限公司招聘笔试参考题库含答案解析
- 江苏盐城公开招聘社区工作者考试高频题库带答案2025年
- 2024年青海西宁事业单位招聘考试真题答案解析
- 2025年贵州施秉县城镇建设投资开发有限公司招聘笔试参考题库含答案解析
- 2024年广东湛江事业单位招聘考试真题答案解析
- 《永辉超市营运能力现状、问题及优化建议探析》10000字【论文】
- 2024铁路通信线路施工合同规范范本3篇
- 2025年拉杆箱项目可行性研究报告
- 双全日培训课件
- 个人北京租房合同范本下载
- 甲油胶行业报告
- 露天矿排土场初步设计
- DB51T 692-2018 中小学实验室设备技术规范
- 山东省莱西市2024-2025学年高一语文下学期3月月考试题含解析
- 中医院手术麻醉科介绍
- 给甲方发工程报告范文
评论
0/150
提交评论