版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、通信与信息工程学院2011 /2012 学年 第 二 学期 单片机原理与应用 实验报告专 业 网络工程 学 生 班 级 b090115 学 生 学 号 b09011512 学 生 姓 名 任 课 教 师 日 期 2012 年 4月 12 日目录实验目的1方案设计与方案比较1单元电路设计6整体电路设计11调试与运行结果13实验小结17参考文献18附件19实验名称:基于简单i/o口的led显示(综合类)1、 实验目的按照实验提供的单片机原理图,设计一个函数信号发生器。该函数信号发生器能够产生四种波形数据(正弦、方波、三角、锯齿),四种波形可通过按键进行切换调节,同时能够实现函数信号的频率可调并可通
2、过led数码管进行显示,以及函数信号的幅度的可调。2、 方案设计与方案比较2.1 方案一:基于软件的函数信号发生器用c+编程得到信源波形数据。现将得到的波形数据形成table表存放到51单片机的程序存储器中,然后用51单片机中的定时器,每定时一定时间就从单片机中送出一个波形数据到dac0832中进行数模转换然后送到示波器显示,循环进行,即可可到周期信号。信号选择控制即是使单片机从不同的函数表中进行取数,频率控制可设置两个按键,一个加键和一个减键,每按一次使频率所对应的计数初值加减一个单位,并送到led数码管上进行显示。80c51dac0832波形输出显示频率控制信号选择控制频率显示幅度控制 图
3、2.1 总体设计框图图2. 2 程序流程2.2 方案二:基于硬件的函数信号发生器用c+编程得到信源波形数据和产生100-10000hz方波所需要的计数器的计数初值。首先,将存储在51单片机中的信源数据存储到存储器6264中;然后,由单片机产生100-10000hz可变频率的方波,产生的方波作为8位计数器的时钟频率,可计数范围为0-255,即可把波形数据的一个周期读出,波形的选择可通过51单片机p2口的两位控制6264的高位a8、a9,其中00表示正弦,01表示三角波,10表示方波,11表示锯齿波;当检测到频率键发生改变时,单片机就会输出相应频率的方波并输出到led数码管进行频率显示,这样404
4、6就可以输出不同频率扫描的波形值,之后再经过dac0832数模转换,即可得到所要的波形,此波形通过一个幅度调节环节,最终送到示波器显示。其中存储器6264中, 0000-00ff存放的是正弦信号数据,0100-01ff、0200-02ff、0300-03ff分别存放的是三角波、方波和锯齿波的数据;程序是先从p1口读入按键值,设定变化范围是1-100(即按1表示100hz),从table表中得到相应的计数初值后,即可实现在p3.0口产生所需方波。80c51波形控制频率控制锁存器74ls373数模转换dac0832计数器led显示存储器6264幅度控制图2.3 总体设计框图将波形数据载入6264开
5、始dptr指向计数初值表头设定计数器为工作方式1从p1口读入频率值频率送led显示并取出对应计数初值初始化计数器启动计数器计数器计满否波形选择重置计数初值p3.0取反输出方波频率改变否是图2.4 程序流程图 2.3 方案比较 方案一主要基于软件来实现函数信号发生器,函数的周期主要通过由读取波形数据前的指令时间决定,不能实现1000hz的波形输出并且编程复杂;方案二主要基于硬件实现函数信号发生器,函数的周期由计数器的扫描频率决定,即由51单片机产生的方波决定,若再在51单片机和计数器中增加一个256倍的倍频器,就可以得到100-10000hz频率可变的信号输出,而且程序只需要完成将波形数据载入存
6、储器6264和产生频率可变的方波,也得到了大大的简化。综上所述,选择方案二。3 单元电路设计3.1 单片机正常工作电路图3.1 单片机工作电路图3.2 波形数据载入存储器6264 80c51单片机p2口低5位(p2.0、p2.1、p2.2、p2.3、p2.4)直接连接到存储器6264的地址高5位(a8、a9、a10、a11、a12),80c51单片机p0口一方面通过地址锁存器连接到6264的地址低8位,一方面直接连到6264的地址端,即p0口既是地址端又是数据端。当由单片机的地址总线确定出6264存储地址后,由数据总线将波形数据送到6264中进行存储。80c51锁存器74ls373存储器626
7、4图3.2 实现框图开始函数表指针r0置0dptr指向函数表头r0=存储器6264指针r1取出函数表中波形数据dptr指向存储器中相应波形存储区头r1=0dptr指针加1否指针r1减1将波形数据送入指定存储单元是指针r0加1r0=0否结束是图3.3 程序流程图图3.4 实现电路图3.3 存储器及函数表存储器6264中, 0000-00ff存放的是正弦信号数据,0100-01ff、0200-02ff、0300-03ff分别存放的是三角波、方波和锯齿波的数据。生成这些数据是通过c+编程实现的。以正弦波为例,由于存储区中存放的均为正数,故现将波形往上平移,则可避免存储负的数据。将波形幅度量化成255
8、个单元,一个周期中抽取256个数据,可得到下面的波形数据生成公式:h=127.5+127.5*sin(2*i*pi/256),生成波形数据见附表。3.4 地址计数器设计74ls393是4位二进制计数器,将其中一片的q3端输出接到另一片的时钟端,即可级联扩展成8位二进制计数器。整个计数器的时钟信号由80c51单片机的p3.0口输出。要产生时钟信号,即要实现产生100-10000hz的方波,实现频率可调。table表即是通过软件编程算出的相应频率的计数初值(table表中的第一个数据0000h无实际意义,主要是使在编程过程中指针简化)。程序是先从p1口读入按键值,我们设定变化范围是1-100(即按
9、1表示100hz),从table表中得到相应的计数初值后,即可实现在p3.0口产生所需方波。这样,当计数器以不同的频率去扫描存储器6264时就可以得到不同频率的输出波形。图3.5 计数器实现电路图3.5 d/a电路d/a电路用于产生函数波形,其原理就是将由8位二进制数表示的数字信号转换成模拟信号输出显示。out1是单一极性信号,其电压值由下面的公式得出(以正弦波为例)。out1=vr*sinwt图3.6 函数波形产生电路3.6 数字幅度控制电路 幅度控制电路由分压衰减电路和模拟开关组成。衰减电路可提供8中不同的衰减值,模拟开关在幅度开关的控制下选择其中一个输出。其原理就是由8个阻值相同的电阻对
10、out1进行分压,从不同的电阻间引出一个抽头就可以实现不同的波形幅度值。可选择的幅值分别为(、)out1,分别对应的幅度开关值为000、001、010、011、100、101、110、111。图3.7 幅度控制电路3.7 显示电路显示电路是用来显示输出波形频率的,本程序使用两位数码管显示器,利用扫描方式显示所需频率,可显示的范围为0063(即频率键最高两位不使用)。单片机p0端口并行连接两只共阳极数码管显示器。数码管的8个引脚依照a、b、c、d、e、f、g顺序依次与p0端口的7个引脚p0.0、p0.1、p0.2、p0.3、p0.4、p0.5、 p0.6、相连,r是限流电阻,取值为10k。v0、
11、v1是两只共阳极数码管的控制三极管,三极管的基极分别接在单片机p3.2和p3.3引脚上。也就是说,p3.2输出为0时三极管v1导通,与其相连的共阳极数码管显示器开始工作;p3.3输出为1是三极管v1截至,与其相连的共阳极数码管显示器停止工作。三极管v0的作用与 v1三极管相同。图3.8 显示电路图图3.9 显示流程图4 整体电路设计4.1 整体电路图程序分两个部分,顺序执行。第一部分是把数据装入6064中,其中0000-00ff存放的是正弦信号数据,0100-01ff、0200-02ff、0300-03ff分别存放的是三角波、方波和锯齿波的数据;第二部分是实现产生100-10000hz的方波,
12、实现频率可调。table表即是通过软件编程算出的相应频率的计数初值(table表中的第一个数据0000h无实际意义,主要是使在编程过程中指针简化)。程序是先从p1口读入按键值,我们设定变化范围是1-63(即按1表示100hz),从table表中得到相应的计数初值后,即可实现在p3.0口产生所需方波。在硬件实现的过程中,最主要考虑的问题是总线隔离问题,用三片74ls245解决了这个问题。一开始有效工作的只有80c51、74ls373和6264,当将波形数据载入存储器6264后,必须屏蔽掉74ls373,以使80c51的输出不再对6264中存储好的波形数据产生影响。然后,启动计数器和数模转换电路,
13、由80c51单片机输出的方波信号作为计数器的时钟信号,当由单片机确定出显示哪种波形后,计数器就对选定的数据区进行扫描输出显示,只要波形选择不发生改变,计数器就会对同一片波形数据区(256个波形数据)进行循环扫描。进行了总线隔离后,只要将各单元电路按一定的输入输出关系串联起来即可。而软件实现主要是将波形选择和频率显示嵌套到产生可变频率方波那段程序中即可。参见图2.4 程序流程图。图4.1 无显示有幅度控制整体电路图图4.2 有显示无幅度控制整体电路图4.2 元件明细表元件 数量80c51 1crystal(12m) 16264 174ls245 374ls373 174ls393 2dac083
14、2 17seg-com-anode 2dipsw_8 1dipsw_3 1sw-spst 2cap(30p) 2cap(600000p) 1cap(30p) 2res(1k) 1res(1) 1res(100) 1res(10k) 2pnp 24.3 测试用仪表oscilloscope5 调试运行结果5.1写入存储器6264中波形数据测试图5.1 存储器6264存放的波形数据可见,存储器6264中, 0000-00ff存放的是正弦信号数据,0100-01ff、0200-02ff、0300-03ff分别存放的是三角波、方波和锯齿波的数据,这与所希望得到的结果完全一致,数据写入正确。5.2 频率按
15、键与显示测试当频率按键选择一定的频率值时,数码管相应显示此频率值。如频率选择为00000011(十进制表示03),数码管显示值应为03(3表示300hz,以此类推);频率选择为00111111(十进制表示63),数码管显示值应为63。此处仅给出63的运行结果,运行结果如下:图5.2 频率显示测试结果 可见,测试结果与所设计预想完全一样,设计正确。5.3 波形输出测试6264中存放了四种波形数据,其中0000-00ff存放的是正弦信号数据,0100-01ff、0200-02ff、0300-03ff分别存放的是三角波、方波和锯齿波的数据。因此当波形选择为00时,输出正弦波,01、10、11分别对应
16、三角波、方波和锯齿波。图5.3 正弦波测试结果图5.4 三角波测试结果图5.5 方波测试结果图5.6 锯齿波测试结果 可见,测试结果与所设计预想完全一样,设计正确。5.4 幅度测试可选择的幅值分别为(、)out1,分别对应的幅度开关值为000、001、010、011、100、101、110、111。下面给出两组测试:111为原信号输出(即5v),011为x3输出(即2.5v)。图5.7 5v方波测试保持示波器的设置不变,测试011。图5.8 2.5v方波测试 由图5.7可见,每格幅度为0.5v,共10格,即5v,测试正确。而由两幅图也可看出,在相同的测试条件下,幅度按键改变,波形幅度确实发生了
17、变化。6 实验小结这次做的课题是基于i/o的led显示。由于是首次进行单片机的课程设计,毫无经验可言,也因此在设计初期毫无头绪。后来的设计思路来自于大二时期的课程设计,设计数控函数信号发生器。经过整合重新考虑,然后在细节上完善之后得到本次设计的思路:1,编程得到10010000hz的方波的计数初值,并将之写入单片机的存储器; 2,读取输入端p1口的数值,将之作为地址偏移读取相应初值,这里设计一个对应关系即:输入1,读取的初值为100hz信号所对应的计数初值。 3,编程得到正弦信号、三角信号、锯齿信号以及方波信号的源代码,即对信号进行等间隔采样,这里取256样点; 4,单片机外扩一片数据存储器,
18、并将波形数据存入,通过设定得到000000ff单元存储正弦信号,010001ff存储三角信号以此类推,并在此基础上完成信号的切换 5,以不同频率的方波通过256计数器扫描6264的地址端,并将输出的信号经d/a转换之后输出,期间加入幅度控制 当然这只是一个大致的思路,在实际操作过程中,很多细节的处理也是相当的棘手。譬如在设计过程中,i/o口不够用,以及信号的同端控制问题,由于是基于i/o,因此不能用i/o口的扩展芯片,在此基础上就要考虑i/o口的复用问题。后来在林老师的帮助下,使用74245芯片,来完成一个总线隔离的功能,此类问题也就迎刃而解。、另一个问题就是参数的现实问题,双位数码显示,需要用延迟以及循环完成,我们将此程序嵌套在第一步的扫描程序段里面,因为查询扫描是一个查询的过程,如果加上显示的循环,软件的运行将会非常的吃力,应此我们不涉及延时程序,直接通过程序运行的延时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年合伙市场拓展协议
- 2025年仲裁裁决合同范本
- 2025年剑术表演协议
- 2025年度高端商业街区门面店铺转让及租赁合作协议书3篇
- 二零二五版首付款分期购房借款合同样本3篇
- 2025年度木地板翻新与保养服务合同4篇
- 2025年新型节能厨房电器研发与销售合作协议4篇
- 2025年度个人分红协议书包含金融科技分红条款4篇
- 二零二五年度新型木托盘租赁及信息化管理服务合同4篇
- 2025年度上市公司合规管理法律顾问合同
- 湖北省石首楚源“源网荷储”一体化项目可研报告
- 医疗健康大数据平台使用手册
- 碳排放管理员 (碳排放核查员) 理论知识考核要素细目表四级
- 撂荒地整改协议书范本
- 诊所负责人免责合同范本
- 2024患者十大安全目标
- 会阴切开伤口裂开的护理查房
- 实验报告·测定鸡蛋壳中碳酸钙的质量分数
- 部编版小学语文五年级下册集体备课教材分析主讲
- 电气设备建筑安装施工图集
- 《工程结构抗震设计》课件 第10章-地下建筑抗震设计
评论
0/150
提交评论