单片机原理及应用课程设计-基于stc89c52的信号发生器内容摘要:
0832 单缓冲方式是控制输入寄存器和 DAC 寄存器同时接收资料 ,或者只用输入寄存器而把 DAC 寄存器接成直通方式。 此方式适用只有一路模拟量输出或几路模拟量异步输出的情形。 波形产生过程 1)方波产生过程 方波的实现只需开始 的时候设置一个初值然后直接输出这个值就行了 ,输出一段时间后 ,然后再重新置一个数据 ,然后再输出这个数据一段时间 ,但是此时的时间一定要等于前面那段时间。 这样才是一个方波。 由此可以调节两个电压维持的时间 ,产生占空比不同的方波 ,相比于模拟电驴 ,这样的方式输出的方波占空比更加精确 ,且电压更加稳定。 2)三角波产生过程 三角波的输出的基础是锯齿波 ,将锯齿波的产生当作是三角波的前半部分 ,然后再相反的举行减法 ,逐渐减为零 ,如此循环 ,即可产生三角波。 类似的 ,通过改变延时时间可以改变输出的频率 ,通过改变最大值 ,可以改变输 出的电压。 输出的波形连续性好 ,且波形很光滑。 3)正弦波产生过程 正弦波的实现实际上是一个查表过程 ,所查的每一个值都对应着一个电压 ,并且对应着的电压汇成图形即为正弦波 ,然后重复这样一个过程即可产生连续的正弦波 .产生的正弦波 ,波形光滑且频率可调。 Protues 仿真 1 仿真连接图 图 8 仿真连接图 2 仿真波形图 图 9 三角波仿真图 图 10 方波仿真图 图 11 正弦波仿真图 调试及实验结果 1 开始时 ,我们并未接低通滤波电路。 因此所得到的波形误差很大 ,但是基本形状大致一样。 图 12 实际方波图 1 图 13 实际三角波图 1 图 14 实际正弦波图 1 最终 ,我们加入低通滤波电路之后 ,所得到的波形图得到了很大的改善 ,但是由于我们设计的波形频率范围在 1000Hz 以下 ,所以还是有一些误差。 图 15 修改后的实际三角波 图 16 修改后的实际方波 图 17 修改后的实际正弦波 实验中遇到的问题 错误 1) 最初 LCD1602 显示错误 ,总是一排黑方块。 后来通过搜索 ,终于知道是因为初始化程序有问题 ,改正之后正常显示。 2) 在实验室调试波形时 ,最开始因为没有加低通滤波器 ,导致输出波形失真严重。 后来加了低通滤 波电路后 ,效果大大改善。 3) 开始复位电路不起作用 ,后来经检查是因为线路连接时出现问题 ,最后复位电路正常。 不足 1)由于我们设计的低通滤波电路截止频率为 1500Hz,而信号发生器的频率范围在 1000Hz 以下 ,因此还是有噪声的影响。 2)由于运放的参数是理想值 ,实际有差距 ,因此幅度误差比较大。 3)本设计只能频率可调 ,幅度无法调整。 心得体会 通过这次课程设计 ,令我们对单片机有了更好的掌握 ,锻炼了我们的编程能力 ,在课程设计中 ,我们遇到的最大的挑战 ,就是对程序的调试 ,我们收获最大的地方也 在于此 ,我们需要逐条运行每一小段调试程序 ,逐段逐句进行编程调试 ,我们尝试用汇编和 C 语言两种语言进行编程 ,将课上的学习的知识进行了运用。 在此次试验中 ,我们还深刻体会到了理论与现实的差别。 在 Protues 仿真中 ,只要将线路连接好后 ,所得的仿真结果便是理想中的波形 ,而现实中还必须考虑到电路中的噪声 ,电磁干扰等。 通过此次课程设计 ,我们真的学到了许多课堂上学不到的实战经验。 参考文献 《单片机原理与应用设计》 ,张毅刚 , 电子工业出版社 , 2020 年。 《单片微机原理及其接口技术》 ,胡汉才 ,清华大学出版社 ,2020 年。 《单片机原理与应用》 ,孙亟芳 ,北京航空航天大学出版社 ,2020 年。 《单片机程序设计基础》 ,周航慈 ,北京航空航天大学出版社 ,2020 年。 附录 程序清单 1 波形生成数组 () ifndef __PLTABLE_h__ define __PLTABLE_h__ /***********这两组数组很重要 ,需要根据波形来调试 ,选择合适的值 ,使输出波形达到频率要求 ************/ uchar code waveTH[] 0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xec,0xf6,0xf9,0xfb,0xfc,0xfc,0xfd,0xfd,0xfd,0xfe。 uchar code waveTL[]0x16,0x9a,0x20,0x5e,0x88,0xa3,0xb8,0xc3,0xce,0xd6, //正弦波频率调整中间值 0xbc,0xce,0x58,0x8a,0xa9,0xbf,0xcb,0xd8,0xe0,0xee, //三角波频率调整中间值 0x98,0x60,0xa0,0x42,0x44,0xce,0x5a,0xb3,0xf5,0x3c。 /*************************************************************************************************/ uchar code triangle_tab[] //每隔数字 8,采取一次 0x00,0x08,0x10,0x18,0x20,0x28,0x30,0x38,0x40,0x48,0x50,0x58,0x60,0x68,0x70,0x78, 0x80,0x88,0x90,0x98,0xa0,0xa8,0xb0,0xb8,0xc0,0xc8,0xd0,0xd8,0xe0,0xe8,0xf0,0xf8,0xff, 0xf8,0xf0,0xe8,0xe0,0xd8,0xd0,0xc8,0xc0,0xb8,0xb0,0xa8,0xa0,0x98,0x90,0x88,0x80, 0x78,0x70,0x68,0x60,0x58,0x50,0x48,0x40,0x38,0x30,0x28,0x20,0x18,0x10,0x08,0x00。 uchar code sine_tab[256] //输出电压从 0 到最大值 (正弦波 1/4 部分 ) 0x80,0x83,0x8。单片机原理及应用课程设计-基于stc89c52的信号发生器
相关推荐
器是单片机的指挥控制部件,控制器的主要任务是识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动而协调地工作。 单片机执行指令是在控制器的控制下进行的。 首先从程序存储器中读出指令,送指令寄存器保存,然后送至指令译码器进行译码,译码结果送定时控制逻辑电路,由定时控制逻辑产生各种定时信号和控制信号,再送到单片机的各个部件去进行相应的操作。 这就是执行一条指令的全过程
80C51 系列是其中的佼佼者,加之 Intel 公司将其 MCS –51 系列中的 80C51 内核使用权以专利互换或出售形式转让给全世界许多著名 IC 制造厂商,如 Philips、 NEC、 Atmel、 AMD、华邦等,这些公司都在保持与 80C51 单片机兼容的基础上改善了 80C51 的许多特性。 这样, 80C51就变成有众多制造厂商支持的、发展出上百品种的大家族,现统称为
(二) 我单位保证在收到贵单位发出的书面开工令后立即开工,并在 天内竣工。 (三)我单位 保证本工程质量达到。 (四)我单位金额为人民币 (大写)( 165。 : 元) 的投标保证金已按招标文件要求与本投标书一起提交。 (五)如果我单位中标,我单位将在招标人发出中标通知书后 7日内向招标人提交合同价 5%的履约 保证金 ,并按招标文件规定递交中标差额保证金。 (六)我单位没有组织和参与串标围标
图 8 特种车辆控制模块电路图 6 元件清单 表 1 元件清单 符号 型号 参数 数量 备注 芯 片 STC89C52 1 个 单片机主控芯片 8255 1 个 单片机串口扩展芯片 三极管 9015 8 个 LED 闪烁灯 8 个 红灯和绿灯各四个 电阻 1k 若干 作为上拉电阻使用 电容 33PF, 103,104 若干 LED 数码管 八段数码管 2 个 共阳极 系统软件设计 软件总流程图
教育、道德教育和心理教育统称为“德育”(国家教委:《中小学德育工作规程》, 1998),这即是“大德育”的由来。 所谓“小德育”,仅指道德教育,国际上通行的即是“小德育”。 大德育的说法与做法,有其合理性,但也带来了一些问题。 德育之“名”如何解决,目前似乎没有最好的办法。 (二) 传统的德育 观:德育即转化 把社会要求转化为受教育者思想道德品质的过程。 (三) 现代的德育观:建构论的主张
6. n (x)= x vdw = =() 按机床选取 n(w)= 故实际切削速度 v=I=75mm, I (1)=175mm, I(2)=3mm t(m)=工序 1:铣端面, ( 1) 粗铣为 215x140 另一端面。 a(f)= v=(21m/min) 采用高速端面铣刀, d(w)=175mm,齿数 Z=16. n (x)= x vdw = =() 按机床选取 n(w)= 故实际切削速度