实验六_单片机DA输出实验.doc_第1页
实验六_单片机DA输出实验.doc_第2页
实验六_单片机DA输出实验.doc_第3页
实验六_单片机DA输出实验.doc_第4页
实验六_单片机DA输出实验.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验五 单片机DA输出实验1、 实验目的1、了解D/A转换的基本原理。2、了解D/A转换芯片0832的性能及编程方法。3、了解单片机系统中扩展D/A转换的基本方法。二、实验说明利用DAC0832,编制程序产生锯齿波、三角波、正弦波。三种波轮流显示,用示波器观看。 3、 实验仪器计算机伟福实验箱( lab2000P )示波器 4、 实验内容1、D/A转换是把数字量转换成模拟量的变换,实验台上D/A电路输出的是模拟电压信号。要实现实验要求,比较简单的方法是产生三个波形的表格,然后通过查表来实现波形显示。 2、产生锯齿波和三角波的表格只需由数字量的增减来控制,同时要注意三角波要分段来产生。要产生正弦波,较简单的方法是造一张正弦数字量表。即查函数表得到的值转换成十六进制数填表。 D/A转换取值范围为一个周期,采样点越多,精度越高些。本例采用的采样点为256点/周期。 3、8位D/A转换器的输入数据与输出电压的关系为 U(0-5V)=Uref/256N U(-5V+5V)=2Uref/256N-5V (这里 Uref为+5V)5、 思考题 1、改变输出波形的周期和幅度,缩小或者提高; 2、程序改为查表方式输出;如何计算出数据表;6、 源程序修改原理及其仿真结果思考题一:改变输出波形的周期和幅度,缩小或者提高CS0832 equ 0a000hSTART: MOV A, 00H MOV DPTR, CS0832 ; 0832 的地址送DPTR MOV R1, 64H ; 台阶数为64LP: MOVX DPTR, A ; 送数据至 0832 CALL DELAY ; 1 ms延时 DJNZ R1, NEXT ; 不到 10 台阶转移 SJMP START ; 产生下一个周期NEXT: ADD A, 20 ; 台阶增幅CALLDELAY SJMP LP ; 产生下一台阶DELAY: MOV 20H, 249 ; 1 ms延时程序上述程序修改了三处,第一,台阶数,当台阶数较多且每个台阶的持续时间减小时输出波形更平滑,更接近钜齿波;第二,台阶增幅,台阶数和台阶增幅都能影响输出波形的振幅,且都与振幅成正比关系,即其他不变台阶数增多振幅增大或者其他不变台阶增幅增大振幅也增大;第三,增加延时,在台阶增幅和产生下一台阶之间增加延时,可以改变钜齿波的周期。思考题二:程序改为查表方式输出;如何计算出数据表产生数据表:取点NA=2*3.14/50*NB=4*SIN(A)C=(B+5)*256/1000012810.12560.50108 141 20.25120.99427 153 30.37681.47179 166 40.50241.92612 177 50.6282.35011 188 60.75362.73707 198 70.87923.08092 207 81.00483.37622 214 91.13043.61833 221 101.2563.80344 225 111.38163.92862 229 121.50723.99191 230 131.63283.99231 230 141.75843.92982 229 151.8843.80541 225 162.00963.62104 221 172.13523.37963 215 182.26083.08497 207 192.38642.74172 198 202.5122.35526 188 212.63761.93170 177 222.76321.47771 166 232.88881.00044 154 243.01440.50740 141 253.140.00637 128 263.2656-0.49476 115 273.3912-0.98809 103 283.5168-1.46586 90 293.6424-1.92054 79 303.768-2.34495 68 313.8936-2.73242 58 324.0192-3.07685 49 334.1448-3.37280 42 344.2704-3.61561 35 354.396-3.80146 31 364.5216-3.92742 27 374.6472-3.99150 26 384.7728-3.99270 26 394.8984-3.93100 27 405.024-3.80736 31 415.1496-3.62374 35 425.2752-3.38303 41 435.4008-3.08903 49 445.5264-2.74635 58 455.652-2.36041 68 465.7776-1.93728 78 475.9032-1.48363 90 486.0288-1.00660 102 496.1544-0.51372 115 506.28-0.01274 128 上表是用EXCEL产生的正弦数据表,其中N表示取点的顺序,即在一个周期取点显示是的横坐标对应顺序,A=2*3.14/50*N表示的是所取的51个点将横轴分成了50份,每一个点所对应的横坐标;B=4*SIN(A)表示的是所取的每一个点对应的纵坐标,也即期望DA转换出的结果,其中4表示的是输出正弦波的振幅可以通过改变这个值来改变正弦波的输出振幅;C=(B+5)*256/10表示的是将B化为DA转换输入的数字量的结果,也即DA转换的输入,该公式是由U(-5V+5V)=2Uref/256N-5V 公式反推得到的。编写DA根据数据表输出波形的程序:ORG 000HMAIN: MOV R1,#50;定义显示点的个数LOOP: MOV A,R1;从第50个点开始显示 MOV DPTR,#SINTAB;指针指向SIN表地址 MOVC A,A+DPTR;取表内数据 MOV DPTR,#0a000h;指针指向8032地址 MOVX DPTR,A;向DA输入数据 ACALL DELAY;延时一段时间,保证转换完毕 DJNZ R1,LOOP;R1不为零,表示一个周期未取完,继续去下一个点数据 AJMP MAIN;R1=0,表示一个周期的点已经取完,循环回去再取一个周期DELAY: MOV R0,#3DELAY1: NOP NOP NOP DJNZ R0,DELAY1 RETSINTAB:db 128,141,153,166,177,188,198,207db 214,221,225,229,230,230,229,225db 221,215,207,198,188,177,166,154db 141,128,115,103,90,79,68,58db 49,42,35,31,27,26,26,27db 31,35,41,49,58,68,78,90db 102,115,128END上述为取的点较少的程序,在循环上需要判断是否取完整周期,如果从网上下载一个SIN表生成软件则可以迅速取到想要的多组数据,以下为去256点的程序,在循环上就少去了很多麻烦,并且显示也更为清晰。ORG 000HMAIN: MOV R1,#00H LOOP: MOV A,R1 MOV DPTR,#SINTAB MOVC A,A+DPTR MOV DPTR,#0a000h MOVX DPTR,A INC R1 ACALL DELAY AJMP LOOP DELAY:MOV R3,#3 D1: NOP NOP NOP DJNZ R3,D1 RETSINTAB: DB 80H,83H,86H,89H,8DH,90H,93H,96HDB 99H,9CH,9FH,0A2H,0A5H,0A8H,0ABH,0AEHDB 0B1H,0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5HDB 0C7H,0CAH,0CCH,0CFH,0D1H, 0D4H,0D6H,0D8HDB 0DAH,0DDH,0DFH,0E1H,0E3H, 0E5H,0E7H,0E9HDB 0EAH,0ECH,0EEH,0EFH,0F1H, 0F2H,0F4H,0F5HDB 0F6H,0F7H,0F8H,0F9H,0FAH, 0FBH,0FCH,0FDHDB 0FDH,0FEH,0FFH,0FFH,0FFH, 0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH, 0FFH,0FEH,0FDHDB 0FDH,0FCH,0FBH,0FAH,0F9H, 0F8H,0F7H,0F6HDB 0F5H,0F4H,0F2H,0F1H,0EFH, 0EEH,0ECH,0EAHDB 0E9H,0E7H,0E5H,0E3H,0E1H, 0DEH,0DDH,0DAHDB 0D8H,0D6H,0D4H,0D1H,0CFH, 0CCH,0CAH,0C7HDB 0C5H,0C2H,0BFH,0BCH,0BAH, 0B7H,0B4H,0B1HDB 0AEH,0ABH,0A8H,0A5H,0A2H, 9FH, 9CH, 99HDB 96H, 93H, 90H, 8DH, 89H, 86H, 83H, 80HDB 80H, 7CH, 79H, 78H, 72H, 6FH, 6CH, 69HDB 66H, 63H, 60H, 5DH, 5AH, 57H, 55H, 51HDB 4EH, 4CH, 48H, 45H, 43H, 40H, 3DH, 3AHDB 38H, 35H, 33H, 30H, 2EH, 2BH, 29H, 27HDB 25H, 22H, 20H, 1EH, 1CH, 1AH, 18H, 16HDB 15H, 13H, 11H, 10H, 0EH, 0DH, 0BH, 0AHDB 09H, 08H, 07H, 06H, 05H, 04H, 03H, 02HDB 02H, 01H, 00H, 00H, 00H, 00H, 00H, 00HDB 00H, 00H, 00H, 00H, 00H, 00H, 01H, 02HDB 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09HDB 0AH, 0BH, 0DH, 0EH, 10H, 11H, 13H, 15HDB 16H, 18H, 1AH, 1CH, 1EH, 20H, 22H, 25HDB 27H, 29H, 2BH, 2EH, 30H, 33H, 35H, 38HDB 3AH, 3DH, 40H, 43H, 45H, 48H, 4CH,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论