单片机论坛

 找回密码
 立即注册

QQ登录

只需一步快速开始

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

Proteus仿真ARM7 LPC2101 AD转换器源程序

[复制链接]
调试时首先观察待测电阻是否工作正常在电阻的变化端插入电压探针具体方式在
左边工具探针中选取电压探针Voltage运行仿真点击电阻观察探针电压是否在不断
变化
调试流程


绘制 ADC 接口电路
1.在器件库中找到 ADC 转换芯片ADC0801如图连接 ADC0801 和总线信号其中 ADC0801数据线连接数据总线最低字节D0-D7列信号接总线列信号NRDNWR其他信
号请按照下图进行连印
2.片选信号 AD_CS 接译码电路输出采用部分译码对应地址为 0x03XXXXXX
3.连接模拟输入在器件库找到可变电阻POT-HG
完成 ADC0801 工作流程编程
现在我切要用程序控制 ADC 正常工作主要操作就是先写一次作为 AD 转换触发信
号再读取转换结果为了保证结果能够显示在终端上我们是使用的上节课设频 8251
串行通信口

仿真原理图如下proteus仿真工程文件可到本帖附件中下载


LPC2101源程序如下:
  1. area init,code,readonly
  2. entry
  3. ldr r3,=0x04000000 ;//芯片 8251 数据端口
  4. ldr r4,=0x04000004 ;//芯片 8251 控制状态端口
  5. ldr r7,=0x03000000 ;//芯片 AD0801 的端口地址
  6. ldr r6,=0x0
  7. ;//8251 初始化 1. 首先向控制端发送 3 个 0
  8. ldr r1,=0x0
  9. strb r1,[r4]
  10. ldr r1,=0x0
  11. strb r1,[r4]
  12. ldr r1,=0x0
  13. strb r1,[r4]
  14. ;//2. 软件复位
  15. ldr r1,=0x40
  16. strb r1,[r4]
  17. ;//3. 方式控制字
  18. ldr r1,=0x4d ;//0b01001101 1 位停止位 无校验 8 位数据 波特率系数*1
  19. strb r1,[r4]
  20. ;//4. 命令控制字
  21. ldr r1,=0x01;//0b00000001 发送使能
  22. strb r1,[r4]
  23. ;//查询式输出
  24. lp
  25. ldr r1,[r4]
  26. tst r1,#0x01;//读状态检查 TxRdy 是否准备好
  27. beq lp
  28. str r2,[r7]
  29. ldr r2,[r7]
  30. str r2,[r3]
  31. Delay
  32. add r6,#1
  33. cmp r6,#0x2000
  34. bne Delay
  35. ldr r6,=0x0
  36. b lp
  37. end
复制代码

所有资料51hei提供下载:
AD转换器.zip (106.29 KB, 下载问: 0)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励

查看全部评分

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

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|单片机论坛 |51Hei单片机16群 联系QQ:125739409;技术交流QQ群7344883

Powered by 单片机教程网

快速回复 返回顶部 返回列表
ձһhƬձƵ ձƵɫwww ձƵ:ɫ