找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4249|回复: 0
打印 上一主题 下一主题
收起左侧

51单片机ADC0809,DAC0832转换汇编语言代码 液晶显示模拟多通道数据采集系统

[复制链接]
跳转到指定楼层
楼主
ID:552214 发表于 2019-5-31 23:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
《液晶显示模拟多通道数据采集系统》
第一节:实验接线示意图


ADC0809接线图【图一】


DAC0832接线图

1


液晶显示器接线图【图二】
第二节:实验内容:
采用总线方式构架一个多路数据采集系统。并将采样数据分二行在液晶显示模块上进行实时显示。随着被采样电压值的变化液晶显示器显示的值跟随变化(即连续采样)。显示数值为实际的电压值。


第三节:实验要求:
  • ADC0809 对三路数据【通道4、通道5、通道6】进行采样,同时将通道4的采样结果送人DAC0832进行DA转换,再将DA输出电压接到AD的通道0进行转换并将4个通道的实际值分分二行发送到液晶显示器上进行显示。显示效果如上图所示。
  • 通过实验建立微处理器总线构架及系统内地址选择的等基本概念
  • 掌握A/D转换器ADC0809、DAC0832及液晶显示模块的工作原理。
  • 编写A/D、D/A转换及液晶显示模块的实验程序。

第四节:相关知识的回顾及编程注意事项
重点提示:
1):掌握和理解单片机总线工作模式下各信号线的跳变及相应的时序。特别要了解ALE及RD、WR信号线在总线方式下的时序。
2):在总线方式下各相应指令的结构。
3):外围接口芯片的地址选择方式。
  4):了解LCD模块的使用说明及特别是指令说明。
参考例程:
说明:
1:由于CPU的运行速度大大高于液晶显示器的工作频率,因此每次向液晶显示器传输数据或命令时必须检测显示器的工作状态。
2:dptr为显示器的地址。
3:参考例程是将起始地址为30H的16个片内RAM中的数据进行显示

单片机汇编语言源程序如下:
  1. main:              nop
  2. nop
  3. main_1:              nop
  4.                             acall              jianc
  5.                             nop
  6.                             acall              lcd
  7. nop
  8. mov                            dptr                            ,#2300H                            ;液晶显示模块命令缓冲区地址
  9. mov                            a              ,#80h              ;置第一行显示位置
  10. movx                            @dptr              ,a
  11. nop
  12. acall   jianc
  13. nop
  14. mov              dptr              ,#2302h                            ;液晶显示模块数据缓冲区地址

  15. mov                            r3              ,#10h              ;显示的个数
  16. mov     r0               ,#30h              ;显示吗(ASCII)的起始地址
  17. main_2:              nop
  18. nop
  19. mov              a              ,@r0
  20. movx              @dptr              ,a
  21. nop
  22. acall   jianc
  23. nop
  24. inc              r0
  25. djnz              r3              ,main_2
  26. nop
  27. nop

  28. mov     dptr    ,#2300h
  29. mov              a              ,#0c0h              ;置第二行显示位置
  30. movx              @dptr              ,a
  31. nop
  32. nop
  33. acall   jianc
  34. mov              dptr              ,#2302h
  35. mov              r3              ,#10h
  36. mov     r0      ,#30h
  37. main_3:              nop
  38. nop
  39. mov              a              ,@r0
  40. movx              @dptr              ,a
  41. nop
  42. nop
  43. acall   jianc
  44. nop
  45. nop
  46. inc              r0
  47. djnz              r3              ,main_3
  48. nop
  49. end

  50. ;***************  液晶初始化子程序  **********************
  51. Lcd:                            mov              dptr              ,#2300h              ;写命令
  52. mov              a              ,#3fh              ;功能设置:总线宽度为8、两行显示、八位点阵显示
  53. movx              @dptr              ,a
  54.                             acall              jianc
  55. mov              a              ,#01h              ;清除屏幕
  56. movx              @dptr              ,a
  57. acall   jianc
  58. mov              a              ,#0fh              ;开显示
  59. movx              @dptr              ,a
  60. acall   jianc
  61. mov              a              ,#06h              ;移动光标
  62. movx              @dptr              ,a
  63. acall   jianc
  64. ret

  65. ;***********   检测液晶显示器工作状态子程序  *************
  66. jianc:               nop
  67.         push     dpl
  68. jia_1:              nop
  69. mov                            dptr                            ,#2301H              ;读命令、检测忙标志
  70. movx                            a              ,@dptr
  71. nop
  72. jb                            acc.7              ,jian_1              ;检测忙位是否有效。
  73.                     pop                             dpl
  74.                    nop
  75.                     ret
复制代码


第五节:参考资料

【一】:ADC0809中文资料
1.主要特性
   1)8路8位A/D转换器,即分辨率8位.
   2)具有转换起停控制端.
   3)转换时间为100μs (时钟640k)
   4)单个+5V电源供电
   5)模拟输入电压范围0~+5V,不需零点和满刻度校准.
   6)工作温度范围为-40~+85摄氏度
   7)低功耗,约15mW.
2.内部结构
     ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图13.22所示,它由8路模拟开关,地址锁存与译码器,比较器,8位开关树型D/A转换器,逐次逼近
    寄存器,三态输出锁存器等其它一些电路组成.因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作.输入输出与TTL兼容.
3.外部特性(引脚功能)
    ADC0809芯片有28条引脚,采用双列直插式封装,如图13.23所示.下面说明各引脚功能.
    IN0~IN7:8路模拟量输入端.
    2-1~2-8:8位数字量输出端.
    ADDA,ADDB,ADDC:3位地址输入线,用于选通8路模拟输入中的一路.
    ALE:地址锁存允许信号,输入,高电平有效.
    START: A/D转换启动信号,输入,高电平有效.
    EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平).
     OE:数据输出允许信号,输入,高电平有效.当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量.
     CLK:时钟脉冲输入端.要求时钟频率不高于640KHZ.
     REF(+),REF(-):基准电压.
     Vcc:电源,单一+5V.
     GND:地.
    ADC0809的工作过程是:首先输入3(0-7)位地址,并使ALE=1,将地址存入地址锁存器中.此地址经译码选通8路模拟输入之一到比较器.START上升沿将逐次逼近寄存器复位.下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行.直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请.当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上.
详细说明及管脚排列等数据参考同一文件夹内【ADC0809】 pdf文件

【二】:DAC0832中文资料
详细说明及管脚排列等数据参考同一文件夹中的【DAC0832】 PDF文件

【三】:LCD模块资料:
详细说明参考同一文件夹中的【液晶显示模块使用说明书】 PDF文件,重点是对命令格式及特征码的理解。
运算放大器  LM358中文资料
LM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,
适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工
作条件下,电源电流与电源电压无关。它的使用范围包括传感放大器、直流增益
模组,音频放大器、工业控制、DC增益部件和其他所有可用单电源供电的使用运算放大器的场合。
LM358的封装形式有塑封8引线双列直插式和贴片式。
特性(Features):
*内部频率补偿。
*直流电压增益高(约100dB) 。
*单位增益频带宽(约1MHz) 。
*电源电压范围宽:单电源(3—30V);双电源(±1.5一±15V) 。
*低功耗电流,适合于电池供电。
*低输入偏流。
*低输入失调电压和失调电流。
*共模输入电压范围宽,包括接地。
*差模输入电压范围宽,等于电源电压范围。
*输出电压摆幅大(0至Vcc-1.5V) 。
参数
输入偏置电流45 nA
输入失调电流50 nA
输入失调电压2.9mV
输入共模电压最大值VCC~1.5 V
共模抑制比80dB
电源抑制比100dB


完整的Word格式文档51黑下载地址:
51单片机AD,DA转换代码.rar (204.55 KB, 下载次数: 39)

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶1 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表