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;

}

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

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

Висновок

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

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


 

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

37110. Нарастание застойных явлений в жизни СССР в 70-е – начале 80-х гг. и их сущность 27.5 KB
  Сохранилась жёстко централизованная система власти. Костяк этой власти составили аппаратчики. К власти пришло третье поколение советских правителей типичных аппаратчиков исполнителей. В моменты ослабления центрального руководства незаметные исполнители почувствовали мощь власти и те блага которые можно приобрести с её помощью.
37111. Перестройка политической системы СССР 24.95 KB
  В истории СССР начался этап получивший название перестройка . По решению XIX партконференции учреждается новый высший орган законодательной власти Съезд народных депутатов СССР и соответствующие республиканские съезды. Был введен пост Президента СССР первым и последним Президентом СССР стал М.
37112. Россия в СНГ и мире: проблема взаимоотношений. Россия на рубеже XX-XXI вв 16.75 KB
  После распада СССР и провозглашения Содружества Независимых Государств для России сложилась новая внешнеполитическая ситуация. Обустройство этих войск в новых местах дислокации обернулось для России значительными финансовыми затратами. 30 мая 1997 года президентами России и республики Беларусь был подписан Устав нового союза однако противников объединения этих двух славянских государств остается немало как с одной так и с другой стороны. В отношении дальнего зарубежья внешняя политика России ставшей правопреемницей СССР характеризуется...
37113. Социально-экономическое развитие суверенной России: переход к рынку, приватизация 17.41 KB
  Приватизация. Осенью 1992 года началась приватизация. Решению этой задачи была подчинена и объявленная приватизация.
37114. Политические преобразования в РФ в 90-е годы. Октябрьский кризис 1993 г. Принятие Конституции, переход к парламентаризму 16.59 KB
  Принятие Конституции переход к парламентаризму. После октябрьских событий началась ликвидация системы Советов завершившаяся с принятием на всенародном референдуме 12 декабря 1993 новой Конституции Российской Федерации 3в 19901993 гг. Ельциным которая впервые занялась разработкой новой Конституции. Проект подготовленный этой комиссией не был принят ни на первом ни на втором обсуждении на съездах народных депутатов но одобрялась общая концепция Конституции что значительно затягивало переход к новому конституционному строю в...
37115. политических противоречий в Российской Империи в начале XX века. 15.04 KB
  Национальный вопрос в России в начале XX века. Национальный вопрос одно из основных социальнополитических противоречий в Российской Империи в начале XX века. Рост недовольства на окраинах подпитывался как жесткой национальной политикой правительства в частности ограничениями в отношении поляков финнов армян и некоторых других народов так и экономическими неурядицами которые переживала Россия в первые годы XX века. К началу XX века российские этносы представляли собой чрезвычайно разнородную массу.
37116. Общенациональный кризис в стране осенью 1917 г 23.48 KB
  Приход к власти большевиков Осенью 1917 г. Бесспорно что если бы большевики промедлили с взятием власти и не упредили правые силы слабое правительство Керенского сменила бы военная диктатура. В нем объявлялось о низложении Временного правительства и переходе власти к Петроградскому ВРК. Тем самым шанс на спасение буржуазной власти был утрачен.
37117. Брестский мир 17.35 KB
  большевики связывали выход России из войны с мировой революцией. Согласно условиям Брестского мира: от России отторгалась Польша Прибалтика западная часть Белоруссии. Ни одна из стран Антанты союзников России в войне не ответила на эти мирные предложения однако страны германоавстрийского блока в конце ноября согласились вести переговоры о перемирии и мире с представителями Советской республики. Подписания мира в тот момент настоятельно требовали внутренняя и внешняя обстановка в Советской России.
37118. Гражданская война и интервенция: причины, ход и результаты 16.55 KB
  в Мурманске и Архангельске высадились английские американские и французские войска. Войска П. Признав свое поражение в Первой мировой войне Германия согласилась аннулировать Брестский мирный договор и вывела свои войска с территории Украины Белоруссии и Прибалтики. Антанта стала выводить свои войска оказывая белогвардейцам лишь материальную помощь.