1、理解A/D转换的工作原理;
2、理解掌握ADC0809的A/D转换原理和并行A/D转换器接口的编程方法; 3、学习使用并行模/数转换芯片ADC0809进行电压信号的采集和数据处理。
二、设计任务书
河南农业大学单片机课程设计任务书
题目:A/D转换设计及实验 姓名 地点 设(1)掌握A/D转换与单片机接口的方法; 李世隆、郭清乾、何进学、许丹阳 专业班级 12级电信一班 工程楼八楼实验室 起止时间 2015.6.1-2015.6.12 目的: 计 (2)了解A/D芯片0809转换性能及编程方法; 目 (3)通过实验了解单片机如何进行数据采集。 的内容:利用已有的实验系统上的0809 A/D转换器,实验电位器提供模拟量输入,编制程序,、将模拟量转换成数字,通过数码管显示出来。 内要求: 容(1)编制电路图; 与(2)程序框图; 要(3)写明实验步骤; 求 (4)分析实验结果。 (1) 系统时钟: 设计参(2) 机器周期: (3) AD转换时钟频率: (4) AD转换时间: 数 (5) 输入电压: (6) 显示器显示值。 进度要
要求写到每2天一个进度 (1)布置课题,落实任务,确定课题,收集相关资料。 (2)设计电路,用proteus仿真 1
求 (3)编写程序,调试程序 (4)整理实验材料,撰写实验报告 (5)制作ppt 列出至少5个参考文献! 参考资料 [1]《新概念51单片机C语言教程》郭天祥 [2]《单片机原理与接口技术》邓宏贵 [3]《数字电子技术基础》阎石 [4]《模拟电子技术基础》童诗白 [5]《基于AT89C51的多功能智能实验测试仪器的设计与实现》王正兰 其它 89C516RD+实验开发板
三、实验内容描述
利用已有的实验系统上的0809 A/D转换器,实验电位器提供模拟量输入,编制程序,将模拟量转换成数字,通过数码管显示出来。
四、硬件接线图
2
五、程序设计流程图
六、程序清单 #include\"reg51.h\" #include 3 #define pb8255 XBYTE[0xff21] #define ad0809 XBYTE[0xff80] unsigned char code mon51[3] _at_ 0x3b;//保留0X3B开始三个程序空间作全速中断用 void delay(unsigned int i); void main(void) { uchar idata disbuf[6]={0,8,0,9,0,0}; uchar code table[20]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xFF,0x0C,0x89,0xDE}; com8255=0x81; while(1) {uchar x=6,y=0x20,m,n,t=0x0f; y=~y; ad0809=0x00; delay(1); m=ad0809; n=m; m=m&t; //low 4 bit disbuf[5]=m; n=n>>4; //high 4 bit disbuf[4]=n; for(x=0;x<6;x++) //led display 4 {pb8255=table[disbuf[x]]; pa8255=y; delay(2); y=_cror_(y,1); } } } void delay(unsigned int i) { unsigned int j,k; for(k=0;k七、调试过程中的难点及解决思路 1、在实验室的电脑上没有找到SST89516RD2,最开始用其他型号的单片机做实验,最终发现用SST89E554RC可以仿真。 2、在用keil4仿真的时候,软件不稳定,有时会无法单步运行,最后必须把软件关闭再打开才可以。 3、读程序的时候,遇到一些不懂得地方找学长请教。 八、课程设计总结与体会 在这次的实验中,我成功的理解掌握了ADC0809的A/D转换原理和并行A/D转换器接口的编程方法,也学习了并行模/数转换芯片ADC0809进行电压信号的采集和数据处理的使用方法。。最重要的一点是,我在这次设计中培养了自己的学习能力。由于好多知识超出了我们的课本范围,这就要求我们自己通过资料来增加我们的知识,解决遇到的一些问题。在短时间内从书本资料中筛选出我们所需要的知识,对我们的自主学习能力有很大的帮助。 5 九、参考文献 [1]《新概念51单片机C语言教程》郭天祥 [2]《单片机原理与接口技术》邓宏贵 [3]《数字电子技术基础》阎石 [4]《模拟电子技术基础》童诗白 [5]《基于AT89C51的多功能智能实验测试仪器的设计与实现》王正兰 6 因篇幅问题不能全部显示,请点此查看更多更全内容