一种基于单片机实现简易混合信号发生器的方法技术

技术编号:9838271 阅读:213 留言:0更新日期:2014-04-02 02:02
本发明专利技术公开了一种基于单片机实现简易混合信号发生器的方法。本发明专利技术利用单片机可实现混沌伪随机信号、正弦信号、方波信号、三角波信号及锯齿波信号的数字输出,通过DAC数模转换器实现模拟输出,经过运算放大器实现将DAC数模转换器输出的电流型信号转换为电压型信号。通过按键可以切换输出的信号类型以及信号频率。作为混沌信号发生器时,单片机的数据输出口P1口还可以作为一个有8路输出的随机序列发生器。该方法可以实现频率范围为0.1Hz到500Hz、幅度为0V到4.5V的信号输出。该电路结构简单,调试方便,稳定性好,能够很好地实现不同信号、不同频率的波形输出。

【技术实现步骤摘要】
一种基于单片机实现简易混合信号发生器的方法
本专利技术属于电子通信领域,涉及一种基于单片机产生混合信号的方法,利用该方法可以产生混沌伪随机信号、正弦信号、方波信号、三角波信号以及锯齿波信号。具体涉及一种基于单片机的多用途简易混合信号发生器的实现方法。
技术介绍
混沌信号具有随机性,可用以产生性能良好的伪随机序列而应用于通信、计算机、密码、科学研究和实验室等领域之中。目前已有一些混沌信号发生器模型,一般分为模拟电路和数字电路两种实现方法。其中模拟电路实现较为复杂,电路易受参数难以匹配的影响,混沌信号频率很难做大范围的调整。数字方式实现方法一般借助于嵌入式系统、FPGA和DSP等专用数字信号处理器实现,这些数字实现方法电路也较为复杂,成本较高,体积较大,一般不适合于要求便携等简单应用场合。另外,目前的混沌信号发生器往往只是产生单一混沌伪随机信号,而传统的函数信号发生器又往往仅产生一些诸如正弦波、三角波、方波等模拟或离散信号。针对这些情况,该专利技术采用成本低廉的单片机作为核心处理芯片,用以实现一个简易的多用途混合信号发生器,除能够产生模拟和数字的混沌伪随机序列外,还能够产生正弦波、方波、三角波及锯齿波信号,结构简单,体积轻小,成本低廉,通过按键实现波形输出切换和频率改变,非常适合野外或运动途中的便携与实验研究,学生课外分散实验以及需要多种混合信号的其它场所。
技术实现思路
本专利技术针对现有技术的不足,提供了一种以单片机作为核心处理和控制芯片的多用途混合信号发生器。本专利技术的理论基础:(1)产生混沌信号的理论方法:依据新设计的一种离散迭代数学模型:a当时其迭代解是混沌的。(2)产生正弦信号的方法:为克服单片机处理速度的限制,在此采用查找表法实现正弦信号的输出,即先将一个周期的正弦信号进行256等份离散,将每个离散点的值存贮在一个数据表中,在需要输出正弦信号时依次输出该表中的数据即可。(3)产生方波信号的理论方法:依据的数学模型方程为:b(4)产生三角波信号的方法:依据的数学模型方程为:c(5)产生锯齿波信号的方法:依据的数学模型方程为:d混沌信号发生器由51单片机、DAC数模转换器、按键切换电路和运算放大器组成。由单片机计算产生五种数字信号数据(混沌信号、正弦信号、三角波信号、方波信号和锯齿波信号),该数字信号通过单片机输出后经DAC转换器转换为模拟信号,再由运算放大器将数模转换器输出的电流信号转换为电压信号,电压信号再经过一个增益可调的反相比例电路输出。单片机上电后默认输出混沌信号,首先单片机产生一个随机数,将该随机数通过数学变换让这一随机数的值落在离散混沌方程X(n+1)=aX(n)-b(X(n))3的值域范围(0,1)内。变换后的随机数作为该混沌方程的初始值进行迭代运算,即可得到一个X(n)混沌序列,由于X(n)的值域在(0,1)之间,因此再对X(n)序列进行数学变换让其值落在[0,255)之间的整数点上。最后通过单片机的P1口将数据送出,此时可以得到一个8路输出的数字混沌序列,P1口和DAC转换器连接,亦可通过DAC数模转换器输出一个模拟的混沌信号。通过按键切换可以选择输出一个正弦信号。由于51单片机是一个8位的低端处理器,做正弦运算时很低效,在此通过先存储一个周期的正弦表在单片机中,然后利用查表输出的方式产生正弦信号。单片机输出的正弦表数据经过DAC转换器后即可输出正弦信号,通过按键切换可以选择输出一个方波信号。利用单片机处理器实现方波信号输出比较简单,只需要交替输出0x0和0xFF两个数即可实现,通过按键切换可以选择输出一个三角波信号。首先利用单片机根据方程X(n)=n(n=0,1,2…255)输出256个点;再根据方程X(n)=255-n(n=0,1,2…255)输出256个点即可得到一个周期的三角波信号;最后再周期输出三角波信号,通过按键切换可以选择输出一个锯齿波信号。利用单片机根据方程X(n)=n(n=0,1,2…255)输出256个点即可得到一个周期的锯齿波信号;最后再周期输出锯齿波信号。通过按键可以选择输出信号的频率。单片机在每次输出信号的一组数据后都需要延时一段时间t,然后再输出下一组数据。根据频率设置键增加或者减小延时时间t即可改变信号输出的频率。单片机正常工作时采用外部晶振提供工作频率,单片机STC12C2052AD的第4针脚XTAL2、第5针脚XTAL1之间连接一个11.0592MHz的石英晶体振荡器,且这两个针脚分别通过一个20pF的独石电容连接到地,对晶振提供简单的滤波处理;单片机的第1针脚RST和一个电阻R3、电容C1连接,电阻R3另一端接地,电容C1另一端接5V电源,组成一个RC充放电电路,为单片机提供一个上电复位脉冲;单片机的第10针脚接地;第20针脚接5V电源;采用单片机STC12C2052AD实现所需信号的数据计算,并把计算后的数据通过单片机的P1口送至数模转换芯片。单片机的第12、13、14、15、16、17、18、19针脚和DAC0832的第7、6、5、4、16、15、14、13针脚连接。单片机的第7针脚和DAC0832的第2、18针脚相连,单片机的第8针脚和DAC0832的第19针脚相连,单片机第9针脚和DAC0832的第17针脚连接,单片机第11针脚和DAC0832的第1针脚连接。DAC0832的第8针脚转换参考电压Vref接+5V电源。DAC0832的第10针脚接地,第20针脚接+5V电源。运算放大器TL082的第8针脚接+5V电源,第4针脚接-5V电源。DAC0832的第11、12针脚和TL082的第6、5针脚连接,第9针脚和TL082的第7针脚连接,TL082的第5针脚接地,此时TL082的第7针脚OutB即为DAC0832转换器的模拟信号输出端;TL082的第7针脚和第2针脚之间连接一个电阻R5,第2针脚和第1针脚之间连接一个可调电阻R6,第3针脚接地;此时通过第1针脚输出的信号幅度可由可变电阻R6调节。由R1、R2、R4分别和K1、K2、K3构成三个开关电路,其中单片机STC12C2052AD的第2针脚P3.0和电阻R1、K1相连;第3针脚P3.1和电阻R2、K2相连;第6引脚和电阻R4、K3相连;电阻R1、R2、R4的另一端接+5V电源,开关K1、K2、K3的另一端接地;正常情况下,单片机第2、3、6针脚为高电平,当有按键按下后变为低电平;单片机根据此电平信号判断选择波形输出以及改变输出信号频率。本专利技术的有益效果:本专利技术提供了一种基于单片机实现简易混合信号发生器的方法,利用单片机可实现混沌信号、正弦信号、方波信号、三角波信号及锯齿波信号的数字输出,通过DAC数模转换器实现模拟输出,经过运算放大器实现将DAC数模转换器输出的电流型信号转换为电压型信号。通过按键可以切换输出的信号类型以及信号频率。作为混沌信号发生器时,单片机的数据输出口P1口还可以作为一个有8路输出的随机序列发生器。该电路可以实现频率范围为0.1Hz到500Hz、幅度为0V到4.5V的信号输出。该电路结构简单,成本很低,调试方便,稳定性好,其最大的优势是能够实现不同信号、不同频率的波形输出,即可产生模拟和数字的混沌伪随机信号,又可产生正弦波、方波、三角波及锯齿波信号,可广泛使用在需要本文档来自技高网...
一种基于单片机实现简易混合信号发生器的方法

【技术保护点】
一种基于单片机实现简易混合信号发生器的方法,该信号发生器由单片机、DAC转换器、按键切换电路和运算放大器组成;由单片机计算产生五种数字信号数据,该数字信号通过单片机输出后经DAC转换器转换为模拟信号,再由运算放大器将数模转换器输出的电流信号转换为电压信号,电压信号再经过一个增益可调的反相比例电路输出;所述的五种数字信号数据分别是:混沌信号、正弦信号、三角波信号、方波信号和锯齿波信号;所述的单片机型号为STC12C2052AD;其特征在于:产生混沌信号具体是:单片机上电后默认输出混沌信号,首先单片机产生一个随机数,将该随机数通过数学变换让这一随机数的值落在离散混沌方程X(n+1)=aX(n)‑b(X(n))3的值域范围(0,1)内,                                               ,当时其迭代解是混沌的;变换后的随机数作为该混沌方程的初始值进行迭代运算,即可得到一个X(n)混沌序列,由于X(n)的值域在(0,1)之间,因此再对X(n)序列进行数学变换让其值落在[0,255)之间的整数点上;最后通过单片机的P1口将数据送出,此时可以得到一个8路输出的数字混沌序列, P1口和DAC转换器连接,通过DAC转换器输出一个模拟的混沌信号;产生正弦信号具体是:通过按键切换电路选择输出一个正弦信号,通过先存储一个周期的正弦表在单片机中,然后利用查表输出的方式产生正弦信号;单片机输出的正弦表数据经过DAC转换器后即可输出正弦信号;产生三角波信号具体是:通过按键切换电路选择输出一个三角波信号;首先利用单片机根据方程X(m)=m;m=0,1,2…255输出256个点;再根据方程X(m)=255‑m 输出256个点即可得到一个周期的三角波信号;最后再周期输出三角波信号;产生方波信号具体是:通过按键切换电路选择输出一个方波信号;利用单片机交替输出0x0和0xFF两个数即可实现输出方波信号;产生锯齿波信号具体是:通过按键切换电路选择输出一个锯齿波信号;利用单片机根据方程X(m)=m输出256个点即可得到一个周期的锯齿波信号;最后再周期输出锯齿波信号。2013105680793100001dest_path_image002.jpg,2013105680793100001dest_path_image004.jpg...

【技术特征摘要】
1.一种基于单片机实现简易混合信号发生器的方法,该信号发生器由单片机、DAC转换器、按键切换电路和运算放大器组成;由单片机计算产生五种数字信号数据,该数字信号通过单片机输出后经DAC转换器转换为模拟信号,再由运算放大器将数模转换器输出的电流信号转换为电压信号,电压信号再经过一个增益可调的反相比例电路输出;所述的五种数字信号数据分别是:混沌信号、正弦信号、三角波信号、方波信号和锯齿波信号;所述的单片机型号为STC12C2052AD;其特征在于:产生混沌信号具体是:单片机上电后默认输出混沌信号,首先单片机产生一个随机数,将该随机数通过数学变换让这一随机数的值落在离散混沌方程X(n+1)=aX(n)-b(X(n))3的值域范围(0,1)内,b>0,a∈(1,3),n=0,1,2...N,N为自然数,当a∈(2.3,3.0)时其迭代解是混沌的;变换后的随机数作为该混沌方程的初始值进行迭代运算,即可得到一个X(n)混沌序列,由于X(n)的值域在(0,1)之间,因此再对X(n)序列进行数学变换让其值落在[0,255)之间的整数点上;最后通过单片机的P1口将数据送出,此时可以得到一个8路输出的数字混沌序列,P1口和DAC转换器连接,通过DAC转换器输出一个模拟的混沌信号;产生正弦信号具体是:通过按键切换电路选择输出一个正弦信号,通过先存储一个周期的正弦表在单片机中,然后利用查表输出的方式产生正弦信号;单片机输出的正弦表数据经过DAC转换器后即可输出正弦信号;产生三角波信号具体是:通过按键切换电路选择输出一个三角波信号;首先利用单片机根据方程X(m)=m;m=0,1,2…255输出256个点;再根据方程X(m)=255-m输出256个点即可得到一个周期的三角波信号;最后再周期输出三角波信号;产生方波信号具体是:通过按键切换电路选择输出一个方波信号;利用单片机交替输出0x0和0xFF两个数即可实现输出方波信号;产生锯齿波信号具体是:通过按键切换电路选择输出一个锯齿波信号;利用单片机根据方程X(m)=m输出256个点即可得到一个周期的锯齿波信号;最后再周期输出锯齿波信号;通过按键切换电路选择输出信号的频率;单片机在每次输出信号的一组数据后延时一段时间t,然后再输出下一组数据;根据频率设置键增加或者减小延时时间t即可改变信号输出的...

【专利技术属性】
技术研发人员:王光义彭存建徐进婕王晓炜任国瑞
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1