dac0832中文资料引脚图电路原理.docVIP

  • 5
  • 0
  • 约2.55千字
  • 约 4页
  • 2017-06-07 发布于重庆
  • 举报
dac0832中文资料引脚图电路原理

dac0832中文资料引脚图电路原理   DAC0832是采样频率为八位的D/A转换器件,下面介绍一下该器件的中文资料以及电路原理方面的知识。 DAC0832内部结构资料:芯片内有两级输入寄存器,使DAC0832具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。D/A转换结果采用电流形式输出。要是需要相应的模拟信号,可通过一个高输入阻抗的线性运算放大器实现这个供功能。运放的反馈电阻可通过RFB端引用片内固有电阻,海可以外接。 该片逻辑输入满足TTL电压电平范围,可直接与TTL电路或微机电路相接,下面是芯片电路原理图 DAC0832引脚图和内部结构电路图 ? DAC0832应用电路图 电路图如上图所示,此接法是用DAC0832的直通方式,只要二进制数据送到DAC0832的数据口,则会自动把数据转为相应的电压.但运放是如图的电压则输出一般不可能达到基准电压.要想达到基准电压则要提高运放的电压.当基准为负是,只要提高运放的正电压就可以使输出达到基准电压了,当基准为正是,则为提高运放的负电压,一般的运放提高两伏就可以了,但不同的运放会有些区别. 程序如下: 1.输出固定电压的程序 #include reg51.h void DAC0832(unsigned char x) { ? P2=x; } void main() { ? DAC0832(255); ? while(1){ ? ;} } ? 2.输出三角波与正弦波程序. #includeAT89X52.H unsigned char flag;?? //波型输出标置变量 bit time;???????????? unsigned char sin(unsigned char x) { unsigned char code sin_tab[]={125,128,131,134,138,141,144,147,150,153,156,159, ???????? 162,165,168,171,174,177,180,182,185,188,191,193,196,198,201,203, ?? 206,208,211,213,215,217,219,221,223,225,227,229,231,232,234,235, ?? 237,238,239,241,242,243,244,245,246,246,247,248,248,249,249,250, ?? 250,250,250,250,250,250,250,249,249,248,248,247,246,246,245,244, ?? 243,242,241,239,238,237,235,234,232,231,229,227,225,223,221,219, ?? 217,215,213,211,208,206,203,201,198,196,193,191,188,185,182,180, ?? 177,174,171,168,165,162,159,156,153,150,147,144,141,138,134,131, ?? 128,125,122,119,116,112,109,106,103,100,97,94,91,88,85,82,79,76,73, ?? 70,68,65,62,59,57,54,52,49,47,44,42,39,37,35,33,31,29,27,25,27,29,27,25,23,21, ?? 19,18,16,15,13,12,11,9,8,7,6,5,4,4,3,2,2,1,1,0,0,0,0,0,0,0,0,1,1,2, ?? 2,3,4,4,5,6,7,8,9,11,12,13,15,16,18,19,21,23,25,27,29,31,33,35,37, ?? 39,42,44,47,49,52,54,57,59,62,65,68,70,73,76,79,82,85,88,97,94,97, ?? 100,103,106,109,112,116,119,122}; ?? return sin_tab[x]; ?? } void DAC0832(unsigned char x) { ? P2=x; } void main() { unsigned char i; TMOD=0X02;??????? //定时器0用于控制输出波的频率 TH0=256-40; ET0=1;???? //按键接于外部中断0,与中断1 IT0=1; IT1=1; EX0=1; EX1=1; EA=1; TR0=1; flag=0;???? //开始时无输出 i=0; ?while(1) ?? { ????? if(time==

文档评论(0)

1亿VIP精品文档

相关文档