Проход по ссылкам навигацииГлавная : Статьи :

DDS-генератор синусоидального сигнала

DDS-генератор синусоидального сигнала

Программный индикатор уровня звука В данном Pic16f628a как включить внутренний генератор проекте рассмотрим изготовление генератора Инвертор 12 220 на tl494 чистый синус синусоидального сигнала Программный индикатор уровня звука при помощи метода Генератор на 300 кгц синус прямого синтеза Электронный выключатель на не555 (DDS-метод). Для Программный индикатор уровня звука реализации этого Pic16f628a как включить внутренний генератор проекта нам не Инвертор 12 220 на tl494 чистый синус потребуется какого-либо дополнительного оборудования Программный индикатор уровня звука кроме самого контроллера Arduino. Генератор на 300 кгц синус Частотный диапазон генератора Программный индикатор уровня звука от Электронный выключатель на не555 0 до 16 кГц, с Программный индикатор уровня звука точностью Программный индикатор уровня звука до 1 Pic16f628a как включить внутренний генератор мкГц! Данное устройство может Инвертор 12 220 на tl494 чистый синус пригодится не Программный индикатор уровня звука только для генерирования Генератор на 300 кгц синус звуковых сигналов, Электронный выключатель на не555 но в Программный индикатор уровня звука тестовом и Pic16f628a как включить внутренний генератор измерительном оборудовании радиолюбителя. Инвертор 12 220 на tl494 чистый синус Например в телекоммуникационном оборудовании Программный индикатор уровня звука DDS генератор можно использовать Генератор на 300 кгц синус для ЧМ и Программный индикатор уровня звука ФМ Электронный выключатель на не555 модуляции (FSK и PSK).

Программный индикатор уровня звука


DDS-метод

Программный индикатор уровня звука В Программный индикатор уровня звука программной части Pic16f628a как включить внутренний генератор проекта, для реализации DDS Инвертор 12 220 на tl494 чистый синус метода, нам Программный индикатор уровня звука понадобится 4 вещи:
Генератор на 300 кгц синус аккумулятор и Электронный выключатель на не555 tuning word, Программный индикатор уровня звука который в Pic16f628a как включить внутренний генератор нашем случае состоит Инвертор 12 220 на tl494 чистый синус из двух long integer Программный индикатор уровня звука переменных;
таблица значений синусоидального Генератор на 300 кгц синус сигнала (один период);
Программный индикатор уровня звука цифро-аналоговый Электронный выключатель на не555 преобразователь, который обеспечивается внутренним ШИМ Программный индикатор уровня звука Arduino Программный индикатор уровня звука (analogWrite);
генератор Pic16f628a как включить внутренний генератор тактовых импульсов (используем внутренний Инвертор 12 220 на tl494 чистый синус hard-таймер от Программный индикатор уровня звука ATMega).
Большинство значащих Генератор на 300 кгц синус байт аккумулятор Электронный выключатель на не555 используется для Программный индикатор уровня звука адресов таблицы Pic16f628a как включить внутренний генератор синусоидального сигнала. Весь Инвертор 12 220 на tl494 чистый синус циклический процесс, работает по Программный индикатор уровня звука прерыванию от внутреннего тактового Генератор на 300 кгц синус генератора.

Программное обеспечение

Программный индикатор уровня звука Для Электронный выключатель на не555 работы данного скетча на Arduino Программный индикатор уровня звука Diecimila Программный индикатор уровня звука или Duemilenove Pic16f628a как включить внутренний генератор подключите потенциометр к аналоговому Инвертор 12 220 на tl494 чистый синус выводу 0 Программный индикатор уровня звука и к GND Генератор на 300 кгц синус и +5В. Электронный выключатель на не555 Выход генератора Программный индикатор уровня звука находится на Pic16f628a как включить внутренний генератор выводе 11, куда Инвертор 12 220 на tl494 чистый синус вы можете подключить активные Программный индикатор уровня звука колонки, или ФНЧ фильтр Генератор на 300 кгц синус описанный ниже.

/Программный индикатор уровня звука Электронный выключатель на не555 *
 *
 * DDS Sine Generator mit Программный индикатор уровня звука ATMEGS Программный индикатор уровня звука 168
 * Pic16f628a как включить внутренний генератор Timer2 generates the  31250 Инвертор 12 220 на tl494 чистый синус KHz Clock Программный индикатор уровня звука Interrupt
 *
 * Генератор на 300 кгц синус KHM 2009 Электронный выключатель на не555 /  Martin Программный индикатор уровня звука Nawrath
 * Pic16f628a как включить внутренний генератор Kunsthochschule fuer Medien Инвертор 12 220 на tl494 чистый синус Koeln
 * Academy of Программный индикатор уровня звука Media Arts Cologne
 
 */
 
Генератор на 300 кгц синус #include "avr/pgmspace.h"
 
Программный индикатор уровня звука // Электронный выключатель на не555 table of 256 sine values Программный индикатор уровня звука / Программный индикатор уровня звука one sine Pic16f628a как включить внутренний генератор period / stored in Инвертор 12 220 на tl494 чистый синус flash memory
Программный индикатор уровня звука PROGMEM  prog_uchar sine256[]  Генератор на 300 кгц синус = {
  Электронный выключатель на не555 127,130,Программный индикатор уровня звука 133,136,Pic16f628a как включить внутренний генератор 139,143,146,Инвертор 12 220 на tl494 чистый синус 149,152,155,158,Программный индикатор уровня звука 161,164,167,170,Генератор на 300 кгц синус 173,176,178,Программный индикатор уровня звука 181,Электронный выключатель на не555 184,187,190,192,195,Программный индикатор уровня звука 198,Программный индикатор уровня звука 200,203,Pic16f628a как включить внутренний генератор 205,208,210,212,Инвертор 12 220 на tl494 чистый синус 215,217,Программный индикатор уровня звука 219,221,223,Генератор на 300 кгц синус 225,227,Электронный выключатель на не555 229,231,Программный индикатор уровня звука 233,234,Pic16f628a как включить внутренний генератор 236,238,239,Инвертор 12 220 на tl494 чистый синус 240,
  242,243,244,Программный индикатор уровня звука 245,247,248,Генератор на 300 кгц синус 249,249,250,251,Программный индикатор уровня звука Электронный выключатель на не555 252,252,253,253,253,Программный индикатор уровня звука Программный индикатор уровня звука 254,Pic16f628a как включить внутренний генератор 254,254,254,254,254,254,Инвертор 12 220 на tl494 чистый синус 253,253,253,Программный индикатор уровня звука 252,252,251,Генератор на 300 кгц синус 250,Электронный выключатель на не555 249,249,248,Программный индикатор уровня звука 247,245,Pic16f628a как включить внутренний генератор 244,243,242,Инвертор 12 220 на tl494 чистый синус 240,239,238,236,Программный индикатор уровня звука 234,233,231,229,Генератор на 300 кгц синус 227,225,223,
  Программный индикатор уровня звука 221,Электронный выключатель на не555 219,217,215,212,210,Программный индикатор уровня звука 208,Программный индикатор уровня звука 205,203,Pic16f628a как включить внутренний генератор 200,198,195,192,Инвертор 12 220 на tl494 чистый синус 190,187,Программный индикатор уровня звука 184,181,178,Генератор на 300 кгц синус 176,173,Электронный выключатель на не555 170,167,Программный индикатор уровня звука 164,161,Pic16f628a как включить внутренний генератор 158,155,152,Инвертор 12 220 на tl494 чистый синус 149,146,143,139,Программный индикатор уровня звука 136,133,130,127,Генератор на 300 кгц синус 124,121,118,Программный индикатор уровня звука 115,Электронный выключатель на не555 111,108,105,102,99,Программный индикатор уровня звука 96,Программный индикатор уровня звука 93,90,Pic16f628a как включить внутренний генератор 87,84,81,78,
  Инвертор 12 220 на tl494 чистый синус 76,73,Программный индикатор уровня звука 70,67,64,Генератор на 300 кгц синус 62,59,Электронный выключатель на не555 56,54,Программный индикатор уровня звука 51,49,Pic16f628a как включить внутренний генератор 46,44,42,Инвертор 12 220 на tl494 чистый синус 39,37,35,33,Программный индикатор уровня звука 31,29,27,25,Генератор на 300 кгц синус 23,21,20,Программный индикатор уровня звука 18,Электронный выключатель на не555 16,15,14,12,11,Программный индикатор уровня звука 10,Программный индикатор уровня звука 9,7,Pic16f628a как включить внутренний генератор 6,5,5,4,Инвертор 12 220 на tl494 чистый синус 3,Программный индикатор уровня звука 2,2,Генератор на 300 кгц синус 1,1,1,Электронный выключатель на не555 0,Программный индикатор уровня звука 0,Pic16f628a как включить внутренний генератор 0,0,0,0,0,Инвертор 12 220 на tl494 чистый синус 1,1,1,2,2,Программный индикатор уровня звука 3,4,5,5,Генератор на 300 кгц синус 6,7,9,Программный индикатор уровня звука 10,Электронный выключатель на не555 11,12,14,15,16,Программный индикатор уровня звука 18,Программный индикатор уровня звука 20,21,Pic16f628a как включить внутренний генератор 23,25,27,29,Инвертор 12 220 на tl494 чистый синус 31,
  33,Программный индикатор уровня звука 35,37,39,Генератор на 300 кгц синус 42,44,Электронный выключатель на не555 46,49,Программный индикатор уровня звука 51,54,Pic16f628a как включить внутренний генератор 56,59,62,Инвертор 12 220 на tl494 чистый синус 64,67,70,73,Программный индикатор уровня звука 76,78,81,84,Генератор на 300 кгц синус 87,90,93,Программный индикатор уровня звука 96,Электронный выключатель на не555 99,102,105,108,111,Программный индикатор уровня звука 115,Программный индикатор уровня звука 118,121,Pic16f628a как включить внутренний генератор 124
 
};
#define cbi(sfr, Инвертор 12 220 на tl494 чистый синус bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
#define Генератор на 300 кгц синус sbi(sfr, bit) Электронный выключатель на не555 (_SFR_BYTE(sfr) |= Программный индикатор уровня звука _BV(bit))
 
int Pic16f628a как включить внутренний генератор ledPin = 13;                 Инвертор 12 220 на tl494 чистый синус // LED pin 7
Программный индикатор уровня звука int testPin = 7;
Генератор на 300 кгц синус int t2Pin = Программный индикатор уровня звука 6;
Электронный выключатель на не555 byte bb;
 
double dfreq;
// Программный индикатор уровня звука const Программный индикатор уровня звука double refclk=31372.Pic16f628a как включить внутренний генератор 549;  // =16MHz / Инвертор 12 220 на tl494 чистый синус 510
const Программный индикатор уровня звука double refclk=31376.6;      Генератор на 300 кгц синус // measured
 
Электронный выключатель на не555 // variables Программный индикатор уровня звука used inside Pic16f628a как включить внутренний генератор interrupt service declared Инвертор 12 220 на tl494 чистый синус as voilatile
volatile byte Программный индикатор уровня звука icnt;              // var inside Генератор на 300 кгц синус interrupt
volatile byte Программный индикатор уровня звука icnt1;             Электронный выключатель на не555 // var inside interrupt
volatile Программный индикатор уровня звука byte Программный индикатор уровня звука c4ms;              // Pic16f628a как включить внутренний генератор counter incremented all 4ms
Инвертор 12 220 на tl494 чистый синус volatile unsigned Программный индикатор уровня звука long phaccu;   // Генератор на 300 кгц синус pahse accumulator
Электронный выключатель на не555 volatile unsigned Программный индикатор уровня звука long tword_m;  Pic16f628a как включить внутренний генератор // dds tuning Инвертор 12 220 на tl494 чистый синус word m
 
void setup()
Программный индикатор уровня звука {
  pinMode(ledPin, OUTPUT);      // Генератор на 300 кгц синус sets the digital Программный индикатор уровня звука pin Электронный выключатель на не555 as output
  Serial.begin(115200);        // Программный индикатор уровня звука connect Программный индикатор уровня звука to the Pic16f628a как включить внутренний генератор serial port
  Serial.println("DDS Инвертор 12 220 на tl494 чистый синус Test");
 
  pinMode(6, Программный индикатор уровня звука OUTPUT);      // sets Генератор на 300 кгц синус the digital Электронный выключатель на не555 pin as Программный индикатор уровня звука output
  pinMode(7, Pic16f628a как включить внутренний генератор OUTPUT);      // sets Инвертор 12 220 на tl494 чистый синус the digital pin as Программный индикатор уровня звука output
  pinMode(11, OUTPUT);     // Генератор на 300 кгц синус pin11= PWM  output Программный индикатор уровня звука / Электронный выключатель на не555 frequency output
 
  Setup_timer2();
 
  // disable Программный индикатор уровня звука interrupts Программный индикатор уровня звука to avoid Pic16f628a как включить внутренний генератор timing distortion
  cbi (TIMSK0,Инвертор 12 220 на tl494 чистый синус TOIE0);              // Программный индикатор уровня звука disable Timer0 !!! delay() Генератор на 300 кгц синус is now Электронный выключатель на не555 not available
  Программный индикатор уровня звука sbi (TIMSK2,Pic16f628a как включить внутренний генератор TOIE2);              // enable Инвертор 12 220 на tl494 чистый синус Timer2 Interrupt
 
  dfreq=1000.0;                    Программный индикатор уровня звука // initial output frequency Генератор на 300 кгц синус = 1000.o Программный индикатор уровня звука Hz
  Электронный выключатель на не555 tword_m=pow(2,32)*dfreq/refclk;  // calulate DDS Программный индикатор уровня звука new Программный индикатор уровня звука tuning word
 
Pic16f628a как включить внутренний генератор }
void loop()
{
  Инвертор 12 220 на tl494 чистый синус while(1) {
     Программный индикатор уровня звука if (c4ms > Генератор на 300 кгц синус 250) {                 Электронный выключатель на не555 // timer Программный индикатор уровня звука / wait Pic16f628a как включить внутренний генератор fou a full Инвертор 12 220 на tl494 чистый синус second
      c4ms=0;
      dfreq=analogПрограммный индикатор уровня звука Read(0);             // read Poti on analog Генератор на 300 кгц синус pin 0 to Программный индикатор уровня звука adjust Электронный выключатель на не555 output frequency from 0..1023 Программный индикатор уровня звука Hz
 
      Программный индикатор уровня звука cbi (TIMSK2,Pic16f628a как включить внутренний генератор TOIE2);              // disble Timer2 Инвертор 12 220 на tl494 чистый синус Interrupt
      tword_m=pow(2,Программный индикатор уровня звука 32)*dfreq/refclk;  // calulate Генератор на 300 кгц синус DDS new Электронный выключатель на не555 tuning word
      Программный индикатор уровня звука sbi (TIMSK2,Pic16f628a как включить внутренний генератор TOIE2);              // enable Инвертор 12 220 на tl494 чистый синус Timer2 Interrupt
 
      Программный индикатор уровня звука Serial.print(dfreq);
      Serial.print("  ");
      Serial.Генератор на 300 кгц синус println(tword_m);
    }
 
   sbi(PORTD,Программный индикатор уровня звука 6); Электронный выключатель на не555 // Test / set PORTD,Программный индикатор уровня звука 7 Программный индикатор уровня звука high to Pic16f628a как включить внутренний генератор observe timing with a Инвертор 12 220 на tl494 чистый синус scope
   cbi(PORTD,Программный индикатор уровня звука 6); // Test Генератор на 300 кгц синус /reset PORTD,Электронный выключатель на не555 7 high Программный индикатор уровня звука to observe Pic16f628a как включить внутренний генератор timing with a Инвертор 12 220 на tl494 чистый синус scope
  }
 }
Программный индикатор уровня звука //******************************************************************
// timer2 Генератор на 300 кгц синус setup
// set prscaler to Программный индикатор уровня звука 1, Электронный выключатель на не555 PWM mode to phase correct Программный индикатор уровня звука PWM,  Программный индикатор уровня звука 16000000/510 = Pic16f628a как включить внутренний генератор 31372.55 Hz clock
Инвертор 12 220 на tl494 чистый синус void Setup_timer2() Программный индикатор уровня звука {
 
// Timer2 Генератор на 300 кгц синус Clock Prescaler Электронный выключатель на не555 to : Программный индикатор уровня звука 1
  sbi Pic16f628a как включить внутренний генератор (TCCR2B, CS20);
  cbi Инвертор 12 220 на tl494 чистый синус (TCCR2B, CS21);
  cbi (TCCR2B, Программный индикатор уровня звука CS22);
 
  // Timer2 PWM Генератор на 300 кгц синус Mode set to Программный индикатор уровня звука Phase Электронный выключатель на не555 Correct PWM
  cbi (TCCR2A, COM2A0);  Программный индикатор уровня звука // Программный индикатор уровня звука clear Compare Pic16f628a как включить внутренний генератор Match
  sbi (TCCR2A, COM2A1);
 
  Инвертор 12 220 на tl494 чистый синус sbi (TCCR2A, Программный индикатор уровня звука WGM20);  // Mode Генератор на 300 кгц синус 1  / Электронный выключатель на не555 Phase Correct Программный индикатор уровня звука PWM
  cbi Pic16f628a как включить внутренний генератор (TCCR2A, WGM21);
  cbi Инвертор 12 220 на tl494 чистый синус (TCCR2B, WGM22);
}
 
Программный индикатор уровня звука //******************************************************************
// Timer2 Interrupt Service Генератор на 300 кгц синус at 31372,550 Программный индикатор уровня звука KHz Электронный выключатель на не555 = 32uSec
// this is Программный индикатор уровня звука the Программный индикатор уровня звука timebase REFCLOCK Pic16f628a как включить внутренний генератор for the DDS generator
Инвертор 12 220 на tl494 чистый синус // FOUT Программный индикатор уровня звука = (M (REFCLK)) Генератор на 300 кгц синус / (2 Электронный выключатель на не555 exp 32)
Программный индикатор уровня звука // runtime Pic16f628a как включить внутренний генератор : 8 microseconds Инвертор 12 220 на tl494 чистый синус ( inclusive push and Программный индикатор уровня звука pop)
ISR(TIMER2_OVF_vect) {
 
  sbi(PORTD,Генератор на 300 кгц синус 7);          Программный индикатор уровня звука // Test / Электронный выключатель на не555 set PORTD,7 high to Программный индикатор уровня звука observe Программный индикатор уровня звука timing with Pic16f628a как включить внутренний генератор a oscope
 
  phaccu=phaccu+tword_m; // Инвертор 12 220 на tl494 чистый синус soft DDS, Программный индикатор уровня звука phase accu with Генератор на 300 кгц синус 32 bits
  Электронный выключатель на не555 icnt=phaccu >> Программный индикатор уровня звука 24;     // Pic16f628a как включить внутренний генератор use upper 8 Инвертор 12 220 на tl494 чистый синус bits for phase accu Программный индикатор уровня звука as frequency information
                         // Генератор на 300 кгц синус read value fron Программный индикатор уровня звука ROM Электронный выключатель на не555 sine table and send to Программный индикатор уровня звука PWM Программный индикатор уровня звука DAC
  OCR2A=pgm_read_byte_near(sine256 Pic16f628a как включить внутренний генератор + icnt);   
 
  if(icnt1++ == Инвертор 12 220 на tl494 чистый синус 125) {  Программный индикатор уровня звука // increment variable Генератор на 300 кгц синус c4ms all Электронный выключатель на не555 4 milliseconds
    Программный индикатор уровня звука c4ms++;
    icnt1=0;
   Pic16f628a как включить внутренний генератор }  
 
 cbi(PORTD,7);            Инвертор 12 220 на tl494 чистый синус // reset PORTD,7
Программный индикатор уровня звука }


Результат

Ниже представлена Генератор на 300 кгц синус осциллограмма, на верхней Программный индикатор уровня звука части Электронный выключатель на не555 которой изображен ШИМ-сигнал на 11 Программный индикатор уровня звука выходе, Программный индикатор уровня звука а в Pic16f628a как включить внутренний генератор нижней части этот же Инвертор 12 220 на tl494 чистый синус сигнал после Программный индикатор уровня звука фильтра низких частот Генератор на 300 кгц синус (ФНЧ). Синусоида Электронный выключатель на не555 выглядит не Программный индикатор уровня звука очень чистой, Pic16f628a как включить внутренний генератор но это в Инвертор 12 220 на tl494 чистый синус основном из-за ограниченной разрешающей Программный индикатор уровня звука способности цифрового осциллографа.

Программный индикатор уровня звука


Спектрограмма Генератор на 300 кгц синус показала неожиданно хороший Программный индикатор уровня звука результат. Электронный выключатель на не555 Большой пик - это на Программный индикатор уровня звука частоте Программный индикатор уровня звука около 1000 Pic16f628a как включить внутренний генератор Гц. Все нежелательные искажения Инвертор 12 220 на tl494 чистый синус находятся ниже Программный индикатор уровня звука 50 дБ, возникшие Генератор на 300 кгц синус из-за того, Электронный выключатель на не555 что использовался Программный индикатор уровня звука 8 битный Pic16f628a как включить внутренний генератор ЦАП (1/256 = Инвертор 12 220 на tl494 чистый синус 48 дБ).

Программный индикатор уровня звука


Выходной фильтр Программный индикатор уровня звука низких частот

Для начала, Генератор на 300 кгц синус вы можете подсоединить Программный индикатор уровня звука 11 Электронный выключатель на не555 пин контроллера к активным колонкам. Программный индикатор уровня звука Но Программный индикатор уровня звука скорее всего, Pic16f628a как включить внутренний генератор вам еще понадобится ФНЧ-фильтр, Инвертор 12 220 на tl494 чистый синус который также Программный индикатор уровня звука будет отфильтровывать частоту Генератор на 300 кгц синус дискретизации 32 Электронный выключатель на не555 кГц. Ниже Программный индикатор уровня звука представлена схема Pic16f628a как включить внутренний генератор такого фильтра с Инвертор 12 220 на tl494 чистый синус частотой среза 12 кГц.

Программный индикатор уровня звука


Программный индикатор уровня звука Аппаратная реализация DDS

Данная Генератор на 300 кгц синус программная реализация алгоритма Программный индикатор уровня звука DDS Электронный выключатель на не555 имеет некоторые недостатки, связанные с Программный индикатор уровня звука ограниченной Программный индикатор уровня звука скоростью алгоритма Pic16f628a как включить внутренний генератор программы, а также возможностями Инвертор 12 220 на tl494 чистый синус микроконтроллера ATMega. Программный индикатор уровня звука Специализированные DDS-микросхемы лишены Генератор на 300 кгц синус этих недостатков Электронный выключатель на не555 и покрывают Программный индикатор уровня звука диапазон от Pic16f628a как включить внутренний генератор 0 до 100 Инвертор 12 220 на tl494 чистый синус МГц.

WSPR

Извещатель о Программный индикатор уровня звука прохождении слабого сигнала (Weak Генератор на 300 кгц синус Signal Propagation Reporter) Программный индикатор уровня звука - Электронный выключатель на не555 программное обеспечение позволяющее передавать и Программный индикатор уровня звука принимать Программный индикатор уровня звука сигналы радиомаяков, Pic16f628a как включить внутренний генератор задействуя не только передатчик, Инвертор 12 220 на tl494 чистый синус но и Программный индикатор уровня звука интернет. При помощи Генератор на 300 кгц синус данного DDS-генератора Электронный выключатель на не555 можно генерировать Программный индикатор уровня звука 4 тоновых Pic16f628a как включить внутренний генератор последовательности частотой 1497.Инвертор 12 220 на tl494 чистый синус 8 1499.3 1500.Программный индикатор уровня звука 7 1502.2 Гц.

Генератор на 300 кгц синус Источник: http://interface.khm.Программный индикатор уровня звука de/