17437

Ознайомлення з принципом роботи аналого-цифрових перетворювачів порозрядного зрівноваження

Лабораторная работа

Коммуникация, связь, радиоэлектроника и цифровые приборы

Мета роботи :Ознайомлення з принципом роботи аналогоцифрових перетворювачів порозрядного зрівноваження. Теоретичні відомості Аналогоцифрове перетворення використовується для обробки зберігання або передачі аналогових сигнал в цифровій формі. Наприклад швидкі в

Украинкский

2013-07-01

402 KB

6 чел.


Мета роботи :Ознайомлення з принципом роботи аналого-цифрових перетворювачів порозрядного зрівноваження.

Теоретичні відомості

Аналого-цифрове перетворення використовується для обробки, зберігання або передачі аналогових сигнал в цифровій формі. Наприклад швидкі відео АЦП використовуються, наприклад, в ТБ тюнерах. Повільні вбудовані 8, 10, 12, або 16 бітові АЦП часто входять до складу мікроконтролерів.

АЦП послідовного наближення або АЦП з порозрядним зрівноваженням містить компаратор, допоміжний ЦАП і регістр послідовного наближення. АЦП забезпечує перетворення вхідного аналогового сигналу в цифровій за N кроків, де N — розрядність АЦП. На кожному кроці визначається по одному біту шуканого цифрового коду, починаючи від старшого значущого розряду і закінчуючи молодшим. При визначенні кожного біту виконується наступна послідовність дій:

  •  на допоміжному ЦАП виставляється аналогове значення, утворене з бітів, вже визначених на попередніх кроках, біт, який визначається на даному кроці, встановлюється в 1, а всі молодші біти скинуті в 0;
  •  отримане на допоміжному ЦАП значення порівнюється з вхідним аналоговим значенням;
  •  якщо компаратор не спрацював (значення вхідного сигналу більше значення на допоміжному ЦАП), то біт, який визначається на даному кроці, отримує значення 1, інакше 0.

АЦП цього типу забезпечують одночасно відносно високу швидкістю і велику роздільну здатність. Для усунення впливу зміни вхідної напруги за час перетворення на результат аналого-цифрового перетворення на вході таких АЦП встановлюють пристрій вибірки-зберігання. Приклад схеми АЦП порозрядного зрівноваження та діаграма роботи представлені на рис. 1 та рис.2 відповідно.

Рис.1 – Структурна схема АЦП порозрядного зрівноваження

Рис.2 – Діаграма роботи АЦП порозрядного зрівноваження

Завдання:

№ варіанту

1

2

3

4

5

6

7

8

9

0

Тип ЦАП

MAX504

MAX515

MAX517

MAX518

MAX519

MAX5820

MAX5821

MAX5822

MAX5839

MCP4725

Програмна реалізація

#include <REG51.H>

#include <stdio.h>

#include "iic_mast.h"

sbit comparator_out=P0^5;

bit comparator_off;

#define DAC_bits 8

#define Uref 5

float u;

unsigned char volt_pos;

void delay(unsigned int n);

/*-----------------------------------*/

#include "lcd.h"

/*-----------------------------------*/

void main(void)

{

unsigned char tt,n,nt;

sda=1;

scl=1;

write(0x58,0,0);

delay(2);

comparator_off=comparator_out;

init_LCD();

printf("\nLab N3 Zablotskyy ");

volt_pos=print_ram_adres_lcd;

while(1)

 {

 n=0;

 nt=0;

 for(tt=0;tt<DAC_bits;tt++)

   {

n=1<<(DAC_bits-tt);

nt=nt|n;

   write(0x58,0,nt);

   delay(3);

if(comparator_out!=comparator_off)nt=nt&(~n);

   }

 u=(float)Uref/(1<<DAC_bits)*nt;

 print_ram_adres_lcd = volt_pos;

 printf("N=%bX U=%.3f",nt,u);

 }

}

/*-----------------------------------*/

void delay(unsigned int n)

{

unsigned int i,j;

for(i=0;i<n;i++)

 for(j=0;j<500;j++);

}

/*-----------------------------------*/

#include<intrins.h>

/*--------------------------------------------------*/

sbit sda=P0^7;

sbit scl=P0^6;

/*--------------------------------------------------*/

void start_condition(void)

{

sda=1;scl=1;

if((sda)&&(scl))

  {

  _nop_();

  sda=0;

  _nop_();_nop_();

  _nop_();_nop_();_nop_();

  scl=0;

  }

}

/*--------------------------------------------------*/

void stop_condition(void)

{

sda=0;

_nop_();_nop_();

scl=1;

_nop_();_nop_();

_nop_();_nop_();_nop_();

sda=1;

}

/*--------------------------------------------------*/

void ACK(void)

{

sda=0;

_nop_();_nop_();

scl=1;

_nop_();_nop_();

_nop_();_nop_();

scl=0;

}

/*--------------------------------------------------*/

void NAK(void)

{

sda=1;

_nop_();_nop_();

scl=1;

_nop_();_nop_();_nop_();_nop_();

scl=0;

}

/*--------------------------------------------------*/

unsigned char rbyte(void)

{

unsigned char tt,c=0,cc;

sda=1;

for(tt=0;tt<8;tt++)

 {

 _nop_();_nop_();_nop_();

 scl=1;

 _nop_();_nop_();

 if(sda)cc=(1<<7-tt);

 c=c|cc;

 scl=0;

 }

 return c;

}

/*--------------------------------------------------*/

unsigned char wbyte(unsigned char dd)

{

unsigned char tt=0;

unsigned char a,i;

sda=0;

for(i=0;i<8;i++)

 {

 a=dd&(1<<(7-i));

 if(a)sda=1;

   else sda=0;

 _nop_();

 scl=1;

 _nop_();_nop_();

 _nop_();_nop_();

 scl=0;

 }

sda=1;

_nop_();_nop_();

scl=1;

_nop_();_nop_();

_nop_();_nop_();

if(sda)tt=1;

scl=0;

return tt;

}

/*--------------------------------------------------*/

unsigned char read(unsigned char device,unsigned char address)

{

unsigned char t;

start_condition();

t=device&0xFE;

wbyte(t);

wbyte(address);

start_condition();

t=device|(0x01);

wbyte(t);

t=rbyte();

NAK();

stop_condition();

return t;

}

/*--------------------------------------------------*/

void write(unsigned char device,unsigned char address,unsigned char dd)

{

start_condition();

wbyte(device&0xFE);

wbyte(address);

wbyte(dd);

stop_condition();

}

/*--------------------------------------------------*/

#include <intrins.h>

#include <stdio.h>

/*---------------------------------*/

#define LCD_DAT P2

#define LCD_RS P3_5

#define LCD_RW P3_6

#define LCD_E P3_7

/*---------------------------------*/

void init_LCD(void);

void out_com_lcd(char out);

void inc_kursor_pos_lcd(unsigned char n);

 

unsigned char print_ram_adres_lcd;

/*---------------------------------*/

void delay(unsigned int n);

/*---------------------------------*/

void init_LCD(void)

{

//unsigned char init_comand[]={0x20,0x20,0x20,0x28,0x0F,0x1,0x6};

unsigned char init_comand[]={0x30,0x30,0x30,0x38,0x0F,0x1,0x6};

unsigned char i;

LCD_RS=0;

LCD_RW=0;

LCD_E=0;

delay(100);

for(i=0;i<7;i++)

 out_com_lcd(init_comand[i]);

print_ram_adres_lcd=0;

}

void out_com_lcd(char out)

{

unsigned char a;

LCD_RS=0;

LCD_RW=0;

LCD_DAT &= 0x0F;   //4-bit interface

LCD_DAT |= out & 0xF0;

for(a=0;a<200;a++);

LCD_E=1;

for(a=0;a<200;a++);

LCD_E=0;

for(a=0;a<200;a++);

LCD_DAT &= 0x0F;

LCD_DAT |= (out <<4) & 0xF0;

for(a=0;a<200;a++);

LCD_E=1;

for(a=0;a<200;a++);

LCD_E=0;

for(a=0;a<200;a++);

delay(5);

}

/*---------------------------------*/

char putchar(unsigned char out)

{

unsigned char a;

if(out=='\n')

 {

 print_ram_adres_lcd=0x2;

 out_com_lcd(0x80+print_ram_adres_lcd);

 return out;

 }

out_com_lcd(0x80+print_ram_adres_lcd);

LCD_RS=1;

LCD_RW=0;

LCD_E=0;

LCD_DAT &= 0x0F;   //4-bit interface

LCD_DAT |= out & 0xF0;

for(a=0;a<200;a++);

LCD_E=1;

for(a=0;a<200;a++);

LCD_E=0;

for(a=0;a<200;a++);

LCD_DAT &= 0x0F;

LCD_DAT |= (out <<4) & 0xF0;

for(a=0;a<200;a++);

LCD_E=1;

for(a=0;a<200;a++);

LCD_E=0;

inc_kursor_pos_lcd(1);

return out;

}

/*---------------------------------*/

void inc_kursor_pos_lcd(unsigned char n)

{

unsigned char i;

for(i=0;i<n;i++)

 {

 print_ram_adres_lcd++;

 if(print_ram_adres_lcd==0x11)print_ram_adres_lcd=0x42;

 if(print_ram_adres_lcd==0x51)print_ram_adres_lcd=0x12;

 if(print_ram_adres_lcd==0x21)print_ram_adres_lcd=0x52;

 if(print_ram_adres_lcd==0x61)print_ram_adres_lcd=0x2;

 }

}

Результати  даної  роботи

Висновок

На даній лабораторній роботі я ознайомився з принципом роботи аналого-цифрових перетворювачів порозрядного зрівноваження.


 

А также другие работы, которые могут Вас заинтересовать

64045. Социальные функции виртуальных сетей на примере межличностной коммуникации молодежи Волгограда 842.5 KB
  Цель курсовой работы предполагает решение ряда взаимосвязанных задач: выявить особенности процесса трансформации коммуникационных практик актора; проанализировать основные теоретические подходы к изучению интернет-пространства и виртуальных социальных сетей...
64047. Регрессионный анализ влияния ВВП на уровень безработицы 1.89 MB
  Для достижения указанной цели выпускной квалификационной работы были поставлены следующие задачи: Изучить теоретические концепции безработицы; Изучить модель парной регрессии; Оценить регрессионную зависимость между уровнем безработицы и ВВП...
64048. Разработка сайта МАДОУ детского сада «Айгуль» с.Максютово Кугарчинского района 5.01 MB
  Актуальность работы обусловлена тем, что в соответствии со статьей 32 «Об образовании», создание и введение официального сайта образовательных учреждений всех типов в сети «Интернет» является обязательным, следовательно, каждый детский сад...
64049. Экспертиза ассортимента и качества кофе, особенности формирования его рынка в районе обслуживания 792.5 KB
  Популярность кофе в современном мире огромна и продолжает расти с каждым годом. Кофейные плантации расположены в 80 странах по всему миру, но мировыми лидерами по производству являются Колумбия, Бразилия и Индонезия. Напиток ценится по всему за свои вкусовые качества и воздействие на организм.
64050. Совершенствование системы информационного обеспечения коммерческой деятельности ЗАО «Мегамарт» 291.5 KB
  Для достижения поставленной цели в работе были поставлены и решены следующие задачи: рассмотрено понятие и сущность коммерчески значимой информации; охарактеризовано понятие информационной системы и информационной технологии...
64052. Разработка генетического алгоритма 1.98 MB
  Целью данной дипломной работы является разработка генетического алгоритма, в котором поэтапно описывается решение задачи о нахождении кратчайшего маршрута в существующей системе дорог. Задачи: проанализировать возможности генетических алгоритмов...