《基于单片机的波形发生器的设计与实现》修改意见稿
1、“.....因为正弦波的实现是输出各个点的值就行开始循环开始给赋值延时给赋值延时判断按键是否为了,可是各个点值则要通过正弦函数来求出。输出的数据刚好是个数据,这样则可以直接相加就行了图正弦波产生流程图正弦波发生子程序如下正弦表写入内部,开始定义变量如果把定义为数组判断按键是否为延时为则终止循环开始设置转换器的端口地址设置正弦表指针查表转换延时,等待转换结束正弦表位移量增量第象限输出完查表转换延时,等待转换结束正弦表位移量减量第二象限输出完查表表值取反转换延时,等待转换结束正弦表位移量增量第三象限输出完查表表值取反转换延时,等待转换结束正弦表位移量减量第四象限输出完延时通过开关实现波绍业,王凤翥图书馆目录北京高等教育出版社,刘润华,刘立山模拟电子技术山东石油大学出版社,潘永雄......”。
2、“.....刘向阳电子线路实用教程西安西安电子科技大学出版社,朱定华,戴汝平等,单片微机原理与应用北京交通大学出版社,清华大学出版社彭介华电子技术课程设计指导北京高等教育出版社,张毅刚,彭喜源,谭晓昀,曲春波单片机应用设计哈尔滨哈尔滨工业大学出版社,江思敏,陈明电路设计教程北京清华大学出版社彭楚武微计原理与接口技术长沙湖南大学出版社美著马朝晖等译汇编语言程序设计北京市机械工业出版社形切换和调频调幅通过开关实现波形的切换比较简单只需通过输出波形后不断返回到检测开关的子程序中,判断是否有别的开关拨动,如果有别的开关拨动则执行别的程序,否则输出原来的波形,不过如果要能够识别别的开关发生变化,必须将此开关关掉否则会识别不了别的键按下。当然开关的调频和调幅的实现也样,不过首先先输出个波形,然后再检测开关是否需要调频或者调幅,如果需要则转入到相应的程序中,最后再重新输出波形......”。
3、“.....按下开关通过为则输出锯齿波,为输出三角波,为输出方波,为输出正弦波。图开关切换波形原理开始判断是否为判断是否为判断是否为否否否否是是是是输出响应的波形判断是否为开始判断是否为否是输出各种波形调整下数字量五调试与仿真本次的设计主要应用了和软件进行系统设计和仿真,经过仿真后,结果较好,示波器可以正确的输出方波正弦波三角波锯齿波,并且频率可调。仿真结果三角波和正弦波的仿真结果如下,其他波形省略。图三角波仿真结果图正弦波仿真结果六总结本次的设计中利用和以及放大器完成电路的设计,用开关来控制各种波形的发生及转换,用单片机输出后,经过模数转换器生成波形,最终可以通过示波器观察。在这次的软件设计中,程序设计采用的是汇编语言。汇编语言具有速度快,可以直接对硬件进行操作的优点,它可以极好的发挥硬件的功能......”。
4、“.....不好维护,很容易产生,难于调试的缺点。因此,在大型程序的设计中,多采用语言进行程序编译。语言简洁高效,是最贴近硬件的高级编程语言,经过多年的发展,现在已成熟为专业水平的高级语言。而且,现在单片机产品推出时纷纷配套了语言编译器,应用广泛。不过就本次课程设计来说,汇编语言还是适用的。由于真正意义上的程序设计还不多,因此还不是很得心应手,所以在设计中遇到些问题和些难点。比如在程序设计中如何实现程序结构的最优化,以达到较高的质量。这是以后设计中要注意的问题。通过这次课程设计,我进步了解了波形发生器的原理,在实际动手操作过程中,使我接触了许多我以前没接触过的元件,而且重新温习了刚学不久的汇编语言,使我学得了许多知识,使我获益匪浅。这次课程设计,使我的动手能力得到了很大的提高,更使我们懂得理论知识的重要性,没有理论的指导切实际行动都是盲目的......”。
5、“.....七参考文献朱定华,马爱梅,林卫微机应用系统设计武汉华中科技大学出版社,顾德英,张健,马淑华计算机控制技术北京北京邮电大学出版社,夏扬计算机控制技术北京机械工业出版社,刘国钧,选型设计思路课设需要各个波形的基本输出。如输出锯齿波三角波方波正弦波。这些波形的实现的具体步骤锯齿波实现很简单,只需要开始定义个初值,然后不断的加,当溢出后又重初值开始加起,就这样循环下去。三角波的实验过程是先加后减,实现方法是先是从开始加直到溢出后就执行减操作,就这样不断调用这个循环。方波的实现方法是连续输出个数,到个时候就改变下值,可以把值定义为正极性的,也可以是负极性。正弦波的实现是非常麻烦的。它的实现过程是通过定义些数据,然后执行时直接输出定义的数据就可以了。二通过口和开关相连接来控制各个波形的输出。能根据键状态进行波形切换,开关键向上接,产生波形,向下拔接......”。
6、“.....如键向上拔,键向下拔,产生锯齿波键向上拔,键向下拔,产生三角波以此类推。元件选型单片机系统,片,机台,运算放大器原理图主要芯片介绍芯片介绍采用双缓冲接口方式,其传送控制端接地,输入所存允许断与电源相连,利用个地址码进行二次输出操作,完成数据的传送和激动转换,第次操作室为高电平,将口数据线上的数据锁存于的输入寄存器中。第二次操作是写控制信号由效,传送控制端为低电平,将输入寄存器中的内容锁存入的寄存器中,转换器便开始对锁存于寄存器的位数据进行转换,约经过时钟周期后,在输出端建立稳定的电流输出。运放的作用是将输出的模拟电流信号转换为电压波形。为个位转换器,单电源供电,在范围内均可正常工作。基准电压的范围为,电流建立时间为,工艺,低功耗。的内部结构框图如下图所示。开关转换运放各种波形各种波形输出图工作原理图的外部引脚及功能介绍图如下图引脚图内部结构资料芯片内有两级输入寄存器......”。
7、“.....以便适于各种电路的需要如要求多路异步输入同步转换等。转换结果采用电流形式输出。要是需要相应的模拟信号,可通过个高输入阻抗的线性运算放大器实现这个供功能。运放的反馈电阻可通过端引用片内固有电阻,还可以外接数据输入线,电平。数据锁存允许控制信号输入线,高电平有效。片选信号输入线,低电平有效。为输入寄存器的写选通信号。外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在编程期间,此引脚用于输入编程脉冲。在平时,端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时,将跳过个脉冲。如想禁止的输出可在地址上置。此时,只有在执行,指令是才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态禁止,置位无效。外部程序存储器的选通信号......”。
8、“.....每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。当保持低电平时,则在此期间外部程序存储器,不管是否有内部程序存储器。注意加密方式时,将内部锁定为当端保持高电平时,此间内部程序存储器。在编程期间,此引脚也用于施加编程电源。反向振荡放大器的输入及内部时钟工作电路的输入。来自反向振荡器的输出。硬件连线图图硬件连线图四软件设计总体方框图总体设计功能图锯齿波的产生过程锯齿波的实现过程是首先定义个初值然后进行加法操作,加的步数的多少则根据要求的频率来进行。然后加到个数之后就再重新设置为初值,再重复执行刚刚的操作,如此循环下去。函数发生器的设计键三角波键方波键正弦波键锯齿波流程图如下所示图锯齿波产生流程图锯此波发生子程序如下端口地址间址寄存器为清零写寄存器加空操作转移定义变量判断按键是否为否重新设置变量是开始三角波产生过程三角波的实现是设置个初值......”。
9、“.....同样是加到个数之后再行减数,减到初值之后就再返回到先前的操作,这个操作跟锯齿波的实现是相似的。此程序输入的的电压是,因此该波形输出的最大频率是初值为和最终值为,这样输出的波形是最大的。流程图如下图所示图三角波产生流程图三角波发生子程序如下设置转换器的端口地址清零,定义变量判断是否已满否是延时否是开始判断按键是否为写外部存储器延时加不等与零则转写外部存储器方波的产生过程此波形的实现更加简单,只需开始的时候设置个初值然后直接输出这个值就行了,输出段时间后,然后再重数据传送控制信号输入线,低电平有效。为寄存器写选通输入线。电流输出线。当输入全为时最大。电流输出线。其值与之和为常数。反馈信号输入线,芯片内部有反馈电阻电源输入线基准电压输入线模拟地,摸拟信号和基准电源的参考地数字地......”。