17436

Ознайомлення з принципом роботи частотомірів

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

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

Мета роботи Ознайомлення з принципом роботи частотомірів Теоретичні відомості Вимірювання частоти та періоду сигналів по методу прямого перетворення базується на реалізації двох операцій: перетворенні вимірюваного сигналу в послідовність дискретних імпульсів ц

Украинкский

2013-07-01

701 KB

5 чел.


Мета роботи

Ознайомлення з принципом роботи частотомірів

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

Вимірювання частоти та періоду сигналів по методу прямого перетворення базується на реалізації двох операцій: перетворенні вимірюваного сигналу в послідовність дискретних імпульсів цієї ж самої частоти та підрахунку кількості цих імпульсів на протязі відомого та строго-визначеного часового інтервалу. Принцип дії таких частотомірів, на прикладі часового інтервалу, який формується за 10 періодів тактового генератора відомого періоду Т0, ілюструється часовою діаграмою представленою на рис.1.

Рис. 1 – Часова діаграма роботи частотоміра, який працює
по методу прямого перетворення

Для вимірювання частоти з допомогою мікроконтролера необхідно:

  •  з допомогою одного з таймерів сформувати часовий інтервал відомої тривалості Т0;
  •  на протязі цього часового інтервалу лічильником підрахувати кількість імпульсів сформованих формувачем NX;
  •  розрахувати частоту вхідного сигналу fX згідно виразу .

Якщо сформований часовий інтервал 1 с., то

Завдання:

  •  Виміряти частоту вихідної напруги мультивібратора напруги та відобразити виміряне значення на рідкокристалічному дисплеї;

№ варіанту

1

2

3

4

5

6

7

8

9

0

Частота кварцу, МГц

11,5

11

10,5

10

9,5

9

8,5

8

7,5

12

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

#include <REG51.H>

#include <stdio.h>

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

#define Fclc 10000000

#define TREF 1.0

unsigned char idata THH0;

unsigned char idata TL0_T;

unsigned char idata TH0_T;

unsigned char idata THH0_T;

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

#define LCD_DAT P2

#define LCD_RS P2_1

#define LCD_RW P2_2

#define LCD_E P2_3

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

void init_LCD(void);

void out_com_lcd(char out);

char putchar(unsigned char out);

void inc_kursor_pos_lcd(unsigned char n);

unsigned char print_ram_adres_lcd;

unsigned char freq_pos;

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

void init_T0(void);

void init_T1(void);

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

void delay(unsigned int n);

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

void main(void)

{

init_LCD();

printf("\n   ");

freq_pos=print_ram_adres_lcd;

init_T0();        //Timer

init_T1();        //Counter

EA=1;

while(1)

 {

 }

}

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

void delay(unsigned int n)

{

unsigned int i,j;

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

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

}

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

void init_LCD(void)

{

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;

 }

}

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

void init_T0(void)

{

long t,NT0;

t=TREF*Fclc/12.0;

NT0=0xFFFFFF-t;

TL0_T=NT0;

TH0_T=(NT0&0xFF00)>>8;

THH0_T=(NT0&0xFF0000)>>16;

TL0 = TL0_T;

TH0 = TH0_T;

THH0= THH0_T;

TMOD &= 0XF0;                    /* clear Timer 0   */

TMOD  |= 0X1;

ET0 = 1;        /* IE.1*/

TR0 = 1;                /* TCON.4 start timer  */

}

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

void init_T1(void)

{

TMOD  &= 0XF;       /* clear Timer 1 control    */

TMOD = 0X51 ;

TL1 = 0X0 ;                  /* value set by user         */

TH1 = 0X0 ;                 /* value set by user          */

ET1 = 1 ;          /* ET0 is IE.3         */

TR1 = 1;                /* TCON.6  start timer      */

}

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

void int_T0(void) interrupt 1

{

unsigned int N,Freq;

THH0++;

if(THH0==0)

 {

 TR0=0;

 TR1=0;

 TL0 = TL0_T;

 TH0 = TH0_T;

 THH0=THH0_T;

 N=(TH1<<8);

 N=N|TL1;

 TH1=0;

 TL1=0;

 Freq = N/TREF;

 print_ram_adres_lcd=freq_pos;

 printf("%d Hz",Freq);

 TR0=1;

 TR1=1;

 }

}

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

void int_T1(void) interrupt 3

{

TR1=0;

TR1=1;

}

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

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

Висновок

На даній лабораторній роботі я   ознайомився з принципом роботи частотомірів, 

а також   з його застосуванням. Розробив програму  яка відповідає вихідному результату.


 

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

59031. Позакласна робота з математики. Логічні задачі 48 KB
  Завжди робіть таблицю, у ній ви зможете враховувати всі ймовірні варіанти. Уважно читайте кожне твердження. По-справжньому уважно. Звичайно кожне твердження містить щось таке, що дозволить вам спростувати хоча б один із варіантів.
59032. Матеріали до вивчення творів Ернеста Хемінгуея (1899-1961). Людина не для того створена, щоб терпіти поразки 40.5 KB
  Старий рибалка Сантьяго спіймав велику рибину але додому привіз тільки хребет бо рибу зїли акули. Чому хлопець пішов від Сантьяго Звелів тато. Який звичай був у Сантьяго Базікати в морі самим з собою. Яка єдина зброя є у Сантьяго Воля і розум.
59033. М. Метерлінк. Синій птах - лірична оповідь про пошуки щастя 38 KB
  Мета: проаналізувати філософські роздуми автора про велич навколишнього світу в якому живе людина про бажання пізнати таємниці речей і щастя постановку ним питань загальнолюдської моралі; донести учням гуманізм письменника...
59034. Мій рідний край у думах та піснях 60 KB
  Українська мова дуже багата на казки та пісні але найхарактернішими для творчості цього народу є дума епічна поема. І над чим він тяжко в пісні плаче Що він знає а не знаєм ми. Що ж можуть розповісти дослідникові Одещини українські народні пісні та думки Багато аби ми хотіли в ті пісні вслухатися або вчитатися.
59035. Містер початкових класів. Струнко дуть солдати 29.5 KB
  Привітання учасників 10 балів 2.Кожен отримує ту кількість балів скільки разів відіжметься 4. Найбільша кількість балів 5. Перший хто склав отримує 8 балів.
59036. Сценарій виховного заходу. Масляна 51 KB
  Весна Вбігають блазні. Допоможе нам у цьому Масляна. Ведуча: Масляна Масниця Колодій одне з календарно-побутових свят яке повязане із давнім народним звичаєм проводами зими і зустріччю весни. Пісня Масляна Муз.
59037. Матеріальна культура українців 53 KB
  На сьогоднішній урок дослідницькі групи готували повідомлення у вигляді тематичних виписок за темою Матеріальна культура українців. Робота дослідницьких груп Прошу представника першої групи Господарі доповісти.
59038. Мене війна веде все далі 52.5 KB
  Перший юнак. Другий юнак Сніги Не сніги а ріллі Наорані смертю за мить. Третій юнак І руки його обгорілі Не хочуть такого кінця І зуби аж сяють білі На спаленій масці лиця Бо то ж недомріяна мрія То ж вірність його комусь Напис на танку біліє: Жди я вернусь На фоні мелодії пісні...
59039. Методична розробка заходу. Конституція України у моєму житті 45 KB
  Вихователь. Ось уже 9 років ми живемо з вами в незалежній державі, яка знаходиться в Європі, кожної весни цвіте калиновим цвітом і молодіє вербовими гілками, улітку співає соловїним голосом і шелестить достиглим пшеничним колоссям. Кожного дня вона все впевненіше стає на ноги, усе гучніше звучить її голос.