PHILIPS 的P89LPC900 系列FLASH 单片机部分型号提供了8 位精度的AD 转换器,为许多控制系统带来方便,诸如温度控制、运动控制等,在MCU 发出控制指令后,常常需要将执行机构的情况反馈给MCU,从而构成一个闭环系统,达到精细控制的目的。这一检测过程一般由各种传感器完成,在某些对成本有高要求的场合,为了控制成本,也常使用一些简单的分立元件替代数字传感器,通常送到MCU 接口的都是一些经过处理的电压信号,内带ADC 的芯片能够简化设计,并使成本进一步降低。一般来说,8 位的AD 精度已经足以应对,但是在一些对精度要求比较高的场合,可能会需要10 位或者更高精度,细心的用户通过仔细研究P89LPC900 单片机的特点,发现P89LPC900 系列单片机ADC 的特点非常适合进行ADC 过采样,本文正是结合P89LPC900 的特点,介绍该单片机在高精度模数转换场合的应用,以及使用过采样技术需要满足的条件和需注意事项。使这种低成本高精度的AD技术得以应用。
上传时间: 2013-10-11
上传用户:gokk
用单片机AT89C51改造普通双桶洗衣机:AT89C2051作为AT89C51的简化版虽然去掉了P0、P2等端口,使I/O口减少了,但是却增加了一个电压比较器,因此其功能在某些方面反而有所增强,如能用来处理模拟量、进行简单的模数转换等。本文利用这一功能设计了一个数字电容表,可测量容量小于2微法的电容器的容量,采用3位半数字显示,最大显示值为1999,读数单位统一采用毫微法(nf),量程分四档,读数分别乘以相应的倍率。电路工作原理 本数字电容表以电容器的充电规律作为测量依据,测试原理见图1。电源电路图。 压E+经电阻R给被测电容CX充电,CX两端原电压随充电时间的增加而上升。当充电时间t等于RC时间常数τ时,CX两端电压约为电源电压的63.2%,即0.632E+。数字电容表就是以该电压作为测试基准电压,测量电容器充电达到该电压的时间,便能知道电容器的容量。例如,设电阻R的阻值为1千欧,CX两端电压上升到0.632E+所需的时间为1毫秒,那么由公式τ=RC可知CX的容量为1微法。 测量电路如图2所示。A为AT89C2051内部构造的电压比较器,AT89C2051 图2 的P1.0和P1.1口除了作I/O口外,还有一个功能是作为电压比较器的输入端,P1.0为同相输入端,P1.1为反相输入端,电压比较器的比较结果存入P3.6口对应的寄存器,P3.6口在AT89C2051外部无引脚。电压比较器的基准电压设定为0.632E+,在CX两端电压从0升到0.632E+的过程中,P3.6口输出为0,当电池电压CX两端电压一旦超过0.632E+时,P3.6口输出变为1。以P3.6口的输出电平为依据,用AT89C2051内部的定时器T0对充电时间进行计数,再将计数结果显示出来即得出测量结果。整机电路见图3。电路由单片机电路、电容充电测量电路和数码显示电路等 图3 部分组成。AT89C2051内部的电压比较器和电阻R2-R7等组成测量电路,其中R2-R5为量程电阻,由波段开关S1选择使用,电压比较器的基准电压由5V电源电压经R6、RP1、R7分压后得到,调节RP1可调整基准电压。当P1.2口在程序的控制下输出高电平时,电容CX即开始充电。量程电阻R2-R5每档以10倍递减,故每档显示读数以10倍递增。由于单片机内部P1.2口的上拉电阻经实测约为200K,其输出电平不能作为充电电压用,故用R5兼作其上拉电阻,由于其它三个充电电阻和R5是串联关系,因此R2、R3、R4应由标准值减去1K,分别为999K、99K、9K。由于999K和1M相对误差较小,所以R2还是取1M。数码管DS1-DS4、电阻R8-R14等组成数码显示电路。本机采用动态扫描显示的方式,用软件对字形码译码。P3.0-P3.5、P3.7口作数码显示七段笔划字形码的输出,P1.3-P1.6口作四个数码管的动态扫描位驱动码输出。这里采用了共阴数码管,由于AT89C2051的P1.3-P1.6口有25mA的下拉电流能力,所以不用三极管就能驱动数码管。R8-R14为P3.0-P3.5、P3.7口的上拉电阻,用以驱动数码管的各字段,当P3的某一端口输出低电平时其对应的字段笔划不点亮,而当其输出高电平时,则对应的上拉电阻即能点亮相应的字段笔划。
上传时间: 2013-12-31
上传用户:ming529
多路电压采集系统一、实验目的1.熟悉可编程芯片ADC0809,8253的工作过程,掌握它们的编程方法。2.加深对所学知识的理解并学会应用所学的知识,达到在应用中掌握知识的目的。 二、实验内容与要求1.基本要求通过一个A/D转换器循环采样4路模拟电压,每隔一定时间去采样一次,一次按顺序采样4路信号。A/D转换器芯片AD0809将采样到的模拟信号转换为数字信号,转换完成后,CPU读取数据转换结果,并将结果送入外设即CRT/LED显示,显示包括电压路数和数据值。2. 提高要求 (1) 可以实现循环采集和选择采集2种方式。(2)在CRT上绘制电压变化曲线。 三、实验报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、总体设计设计思路如下:1) 4路模拟电压信号通过4个电位器提供0-5V的电压信号。2) 选择ADC0809芯片作为A/D转换器,4路输入信号分别接到ADC0809的IN0—IN4通道,每隔一定的时间采样一次,采完一路采集下一路,4路电压循环采集。3) 利用3个LED数码管显示数据,1个数码管用来显示输入电压路数,3个数码管用来显示电压采样值。4) 延时由8253定时/计数器来实现。 五、硬件电路设计根据设计思路,硬件主要利用了微机实验平台上的ADC0809模数转换器、8253定时/计数器以及LED显示输出等模块。电路原理图如下:1.基本接口实验板部分1) 电位计模块,4个电位计输出4路1-5V的电压信号。2) ADC0809模数转换器,将4路电压信号接到IN0-IN3,ADD_A、ADD_B、ADD_C分别接A0、A1、A2,CS_AD接CS0时,4个采样通道对应的地址分别为280H—283H。3) 延时模块,8253和8255组成延时电路。8255的PA0接到8253的OUT0,程序中查询计数是否结束。硬件电路图如图1所示。 图1 基本实验板上的电路图实验板上的LED显示部分实验板上主要用到了LED数码管显示电路,插孔CS1用于数码管段码的输出选通,插孔CS2用于数码管位选信号的输出选通。电路图如图2所示。
上传时间: 2013-11-06
上传用户:sunchao524
在WCDMA 网络建设初期、网络发展期,为了节省投资,一般不会形成全国性连续覆盖网络,这时可以使用WCDMA 和GSM 双模终端, 充分利用GSM 网络的连续覆盖,避免WCDMA 用户的覆盖盲区,同时又能保证GSM 用户可以很好的享受3G 高端业务的服务,因此未来WCDMA和GSM 商用网络共存是必然趋势。为了节省WCDMA 网络的投资和加快网络建设速度,在未来的WCDMA 网络建设中, 可以考虑WCDMA 和GSM 基站共站点。
上传时间: 2014-01-09
上传用户:z1191176801
Arduino 是一块基于开放原始代码的Simple i/o 平台,并且具有使用类似java,C 语言的开发环境。让您可以快速 使用Arduino 语言与Flash 或Processing…等软件,作出互动作品。Arduino 可以使用开发完成的电子元件例如Switch 或Sensors 或其他控制器、LED、步进电机或其他输出裝置。Arduino 也可以独立运作成为一个可以跟软件沟通的平台,例如说:flash processing Max/MSP VVVV 或其他互动软件… Arduino 开发IDE界面基于开放原始码原则,可以让您免费下载使用开发出更多令人惊奇的互动作品。 什么是Roboduino? DFRduino 与Arduino 完全兼容,只是在原来的基础上作了些改进。Arduino 的IO 使用的孔座,做互动作品需要面包板和针线搭配才能进行,而DFRduino 的IO 使用针座,使用我们的杜邦线就可以直接把各种传感器连接到DFRduino 上。 特色描述 1. 开放原始码的电路图设计,程式开发界面免费下载,也可依需求自己修改!! 2. DFRduino 可使用ISP 下载线,自我將新的IC 程序烧入「bootloader」; 3. 可依据官方电路图,简化DFRduino 模组,完成独立云作的微处理控制器; 4. 可简单地与传感器、各式各样的电子元件连接(如:红外线,超声波,热敏电阻,光敏电阻,伺服电机等); 5. 支援多样的互动程式 如: Flash,Max/Msp,VVVV,PD,C,Processing 等; 6. 使用低价格的微处理控制器(ATMEGA168V-10PI); 7. USB 接口,不需外接电源,另外有提供9VDC 输入接口; 8. 应用方面,利用DFRduino,突破以往只能使用滑鼠,键盘,CCD 等输入的裝置的互动內容,可以更简单地达成单人或多人游戏互动。 性能描述 1. Digital I/O 数字输入/输出端共 0~13。 2. Analog I/O 模拟输入/输出端共 0~5。 3. 支持USB 接口协议及供电(不需外接电源)。 4. 支持ISP 下载功能。 5. 支持单片机TX/RX 端子。 6. 支持USB TX/RX 端子。 7. 支持AREF 端子。 8. 支持六組PWM 端子(Pin11,Pin10,Pin9,Pin6,Pin5,Pin3)。 9. 输入电压:接上USB 时无须外部供电或外部5V~9V DC 输入。 10.输出电压:5V DC 输出和3.3V DC 输出 和外部电源输入。 11.采用Atmel Atmega168V-10PI 单片机。 12.DFRduino 大小尺寸:宽70mm X 高54mm。 Arduino开发板图片
上传时间: 2013-10-30
上传用户:wangzhen1990
特点 精确度0.05%滿刻度 可显示与产生精密直流毫安電流,直流电压,頻率(脈波) 可模擬90度相位差脈波输出功能 高解析度类比输出功能(15bit DAC) 类比输出范围0至20.000毫安培(0至10.000伏特) 宽范围频率输出功能10Hz至4KHz 宽范围脈波输出功能1至10000個 尺寸小,稳定性高
上传时间: 2013-11-03
上传用户:yy_cn
设计的温度采集模块是应用一个滑动变阻器通过改变电阻值进行模拟的温度值改变情况;模数转换模块是运用ADC0809芯片进行模数的转换,把采集到的模拟电压值变为数字值;单片机控制系统通过程序判断此数字值的大小,这样控制温度报警模块,一方面控制发光二极管的亮灭情况,另一方面控制蜂鸣器的报警;温度显示模块应用四位数码管显示模拟的温度值。因此,构成了此模拟的温度控制系统。本系统主要实现了模拟的温度值在30到60的一个设定范围内,正常显示温度,一旦超过了此范围,就会有报警。
上传时间: 2015-08-18
上传用户:linlin
八路电压表程序(使用AT89C52单片机,12MHZ晶振,P0口读入AD值,P2口作AD控制,用共阳LED数码管)
上传时间: 2013-12-22
上传用户:CHENKAI
DAC714是美国BB公司生产的16位高精度数模转换器,单通道。串行通讯方式。宽温。工作电压+-12V和0-10V输出。附有DAC714的中文资料和C51原代码。本人刚调试出来。精度能达到mV级别。
上传时间: 2015-10-27
上传用户:lo25643
程序能够实现将十二位的二进制数5V对应fffH变换成一路0~5V的电压。 精度方面:在使用时上下波动范围大约是0~2fH能保证高位寄存器准确; 调试过程中遇到了一系列问题:(1)p0口的使用需接上拉电阻,内部没有带电阻;(2)调试的过程最好使用单步运行,以便于察看寄存器的内容;(3)对系统板不熟悉,一些硬件方面容易出问题,像口连接,电源、地的连接。(4)直流电源使用不准确,内部的各个电源输出是独立的,需要共地。
上传时间: 2015-11-10
上传用户:一诺88