- 1、本文档共27页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机课设—数字频率计
1 设计任务描述
1.1设计题目:简易信号源的设计
1.2 设计要求
1.2.1 设计目的
基于单片机的简易低频信号源的设计。用单片机设计出一个简易低频信号源。此多路数字电压表完成产生正弦波、三角波、矩形波功能。熟练使用Keil开发环境,具备编写单片机程序(汇编语言或C语言)的初步能力,通过完成本课题的软硬件设计,使同学们了解单片机实例的整个开发流程。
1.2.2 基本要求
设计一个简易低频信号源,该低频信号源基本功能:能输出0.1-50Hz的正弦波、三角波和方波信号,其中正弦波和三角波信号可以用按键选择输出,输出信号的频率可以在0.1-50Hz范围内任意调整。
由于要求的输出信号频率较低,因此考虑使用单片机作为控制器,用中断查表发完成波形数据的输出,再用D/A转换器输出规定的波形信号。方波信号直接由单片机的端口输出。
2 设计思路
低频信号发生器的实现主要有如下几种:
一:利用单片机与精密函数发生器构成的程控信号发生器。这种信号发生器能够克服常规信号发生器的缺陷,保证在某个信号的频带内正弦波的失真度小于0.5%。它的输出信号频率调整和幅值调整都由单片机完成。但是,由于数模转换器的非线性误差和函数发生器本身的非线性误差,这种信号发生器输出信号的频率与理论值会有一定的偏差。
二:利用DSP处理器,根据幅值,频率参数,计算产生高精度的信号所需数据表,经数模转换后输出,形成需要的信号波形。这种信号发生器可实现程控调幅,调频。但这种信号发生器输出频率不能连续可调,计算烦琐,控制也不便。
三:基于单片机,锁相环,可编程分频、相位累加、存储器波形存储以及D/A转换器等组成的数字式函数信号发生器。输出的频率的大小由锁相环和可编程计数器来控制,最终由地址发生器对存储器中的波形数据硬件扫描,单片机提供要输出的波形数据给存储器。这种方案电路简洁,不受单片机的时钟频率的限制,输出信号精度高,频率“连续”,稳定性好,可靠性高,功耗低,调频,调幅都很方便,而且可简化软件设计,实现模块化设计的要求。
四:考虑到输出信号的频率较低,使用单片机作为控制器使用单片机作为控制器,用中断查表法完成波形数据的输出,再用D/A转换器输出规定的波形信号。方波信号直接由单片机的端口输出。结合功能要求情况,使用80C51单片机作为控制器,用DAC0832作为D/A转换器。功能按键使用单片机的3个端口。能使输出频率有较好的稳定性,元器件比较常见,价格低廉,电路设计方便。
综合考虑,方案四各项性能和指标都优于其他几种方案,能使输出频率有较好的稳定性,充分体现了模块化设计的要求,而且这些芯片及器件均为通用器件,在市场上较常见,价格也低廉,样品制作成功的可能性比较大,所以本设计采用方案四。其系统组成原理框图如图2.1所示。
图2.1 简易低频信号源系统结构框图
3 设计方框图
3.1 初始化子函数
初始化子函数的主要工作是设置定时器的工作模式、初值预置、开中断和打开定时器等。在这里,定时器T1工作于16位定时模式,单片机按定时时间重复地把波形数据送到DAC0832的寄存器。其程序流程图如图3.1所示:
3.1初始化子函数程序流程图
3.2 键扫描子函数
键扫描子函数的任务是检查3个按键中是否有键按下,若有键按下,则执行相应的功能。这里3个按键分别用于频率增加、频率减小和正弦波与三角波的选择功能。其程序流程图如图3.2所示:
图3.2 查键子函数程序流程图
3.3 波形数据产生子函数
波形数据产生函数是定时器T1的中断程序。当定时器计数益出时,发生一次中断。当发生中断时,单片机按次序将波形数据表中的波形数据一一送入DAC0832,DAC0832根据输入的数据大小输出对应电压。波形数据产生子函数程序流程图如图3.3所示:
图3.3 波形数据产生子函数程序流程图
3.4主函数
主函数的任务是进行上电初始化,并在程序运行中不断查询按键情况执行相应的功能。
4 参数计算及电路设计
4.1参数计算
4.1.1正弦波参数计算
由于单片机是12位电压输出数/模转换器,所以将其分为两部分,高四位用来调节幅度,低八位用来显示正弦波形,由Vi/VREF=VD/FF可知VD正弦变化则Vi正弦变化,令VD=FF/2*(sinx+1),一个正弦周期取181个点,最后加一个点129判断一个周期是否执行完,所以可得每点间隔为2×3.14/181≈0.04,所以可以算出正弦波数值表,如下:
DB 80H,83H,85H,88H,8AH,8DH,8FH,92H
DB 0A7H,0AAH,0ACH,0AEH,0B1H,0B3H,0B5H,0B7H
DB 0B9H,0BBH,0BDH,0BFH,0C1H,0C3H,0C5H,0C7H
DB 0C
您可能关注的文档
最近下载
- 大气污染防治项目储备库入库要求项目绩效目标申报表.pdf
- ppt课件-2021新中国史党校党课精品课件.pptx VIP
- 纷享销客使用指南试题及答案.doc
- 2023CSCO前列腺癌诊疗指南.docx
- 2024至2030年中国体育健身休闲行业市场深度研究及投资规划建议报告.docx
- 民事再审申请书(物业服务合同纠纷)民事再审申请书(物业服务合同纠纷).pdf
- (完整word版)高考英语作文练习纸(答题卡)6.pdf
- 下三手的判断-中盘篇.清晰一般加藤正夫.pdf
- 《石油化工工程数字化交付标准+GBT+51296-2018》详细解读.pptx
- 《海底100层的房子》绘本教案(内附高清绘本图) .pptx VIP
文档评论(0)