Генератор телевізійних випробувальних сигналів на pic. Генератор сигналів регулювання телевізорів - Телевізійна техніка - Схеми побутових пристроїв. Алгоритм роботи пристрою

Головна / Додатковий функціонал
Зібраний мною прилад призначений для налагодження та налаштування телевізорів та моніторів. За допомогою даного генератора сигналів можна формувати різні випробувальні сигнали, у тому числі кольорові з гарною синхронізацією. Прилад складається з двох функціональних плат, генератора та приставки кольорового зображення. Зовнішній виглядгенератора сигналів для налаштування телевізорів показано на малюнку нижче.

Генератор підключають до антенного входу телевізора, що працює на першому або другому телевізійному каналі. Отримуючи на екрані різні випробувальні зображення, можна звести промені кольорового кінескопа, досягти чистоти кольору та балансу білого, відкоригувати геометричні спотворення, розміри та центрування растру, відрегулювати фокусування тощо. Прилад формує чорне і біле поле, шість і дванадцять вертикальних смуг з градаціями яскравості, вертикальні та горизонтальні лінії, що чергуються, а також шахове і сітчасте поля та багато інших комбінацій, у тому числі можлива інверсія сигналу. З метою спрощення, генератор формує рядковий растр з числом рядків 315. Частота кадрів дорівнює 49,6 Гц. Принципова схемагенератора показано малюнку. Він складається з кварцового генератора зразкової частоти (DD5.1, DD5.2), формувача телевізійних сигналів (DD1 - DD4, DD5.3, DD5.4, DD6, DD7), пристрої додавання (VD5 - VD7, R17 - R19) і генератора РЧ (VT1) Кварцовий генератор виробляє імпульси із частотою прямування 4 МГц.


В результаті її поділу на виході 15 лічильника VD2 на кожен 16 вхідний імпульс формується імпульс 0.1 мкс, утворюючи сигнали частотою 250 Гц. створює на екрані вертикальні лінії. Він відбувається на перемикач SB5. Частоту повторення цієї послідовності лічильник D1 ділить до малої (15625 Гц), на виході 1 отримуємо сигнал вертикальних смуг, що надходить на перемикач SB4.1. Резистори R2 - R5 перетворюють сигнали двійкового кодуна виходах 1, 2, 3, 4 лічильника DD1 в ступінчасто змінюється напруга градацій яскравості. Рядкові гасять і синхронізують імпульси з періодом проходження 64 мкс. формуються тригерами мікросхеми D3. До появи імпульсу на вході R тригер DD3.1 знаходиться в одиничному стані. Надходить на вхід R імпульс, встановлює його в нульовий стан, що відповідає початку формування рядкового імпульсу, що гасить. Тригер повертається в вихідний станпід впливом з його вхід З другого позитивного перепаду, що виникає виході 1 лічильника DD1. На інверсному виході тригера виходять позитивні гасять імпульси тривалістю 12 мкс. Тригер DD3.2 формує малі синхроімпульси тривалістю 4 мкс, фронт яких зрушений на 2 мкс щодо фронту гасять. Забезпечують це елементи VD1 і R6, що виконують операцію АБО і управляючі входом D. У цьому ж тригері в рядковий синхросигнал вводяться кадрові синхроімпульси, що надходять на вхід R, в результаті чого на його виході формується суміш синхроімпульсів. На мікросхемах DD4, DD6 та елементах DD5.3, DD5.4 виконано формувач кадрових синхроімпульсів та сигналів горизонтальних ліній та смуг. Формування сигналу горизонтальних смуг відбувається при проходженні імпульсів, що знімаються з виходу лічильника S1 DD4, через тригер DD6. При цьому частота їхнього прямування зменшується вдвічі, а шпаруватість стає рівною 2.


На елементах DD7.1, DD7.2, R14, VD3 виконано пристрій, у якому із двох вихідних сигналів, що надходять на вхід елемента DD7.1, формується третій. Для отримання шахового або сіткового поля одночасно натискають на кнопки SB4, SB6 (вертикальні та горизонтальні смуги). Якщо натиснути кнопку SB8, отримаємо точкове поле. Різні комбінації натиснутих кнопок SB1 – SB9 дозволяють отримати багато інших зображень на екрані. Повний відеосигнал позитивної полярності утворюється у пристрої додавання на елементах VD5 – VD7, R17 – R19. При одночасному натисканні кнопок SB3, SB4 та SB6 у пристрої формується сигнал шахового поля, квадрати якого заповнені смугами градацій яскравості. Відеосигнал знімається з резистора R19, надходить з конденсатора С3 на генератор РЧ, де відбувається модуляція колектора транзистора VT1. Приставка до приладу зібрана в тому ж корпусі на окремій друкованій платі. Вона дозволяє перевіряти роботу колірної синхронізації і весь тракт проходження кольорових сигналів, налаштовувати частотні детектори в блоках кольоровості. Приставка забезпечує формування випробувальних зображень кольорових смуг, що чергуються. У режимі перевірки частотних детекторів та встановлення їх нулів, по всьому полю через рядок передаються сигнали піднесених кольорів.


Функціонування всього тракту цветоразностных сигналів контролюють зображення на екрані кольорових смуг. При цьому, включаючи різні випробувальні сигнали самого генератора. Принципова схема приставки показана малюнку. Вона складається з кварцових генераторів частот синхронізації колірної 3900 кГц (елементи DD4.1, DD4.2) і 4756 кГц (DD5.1, DD5.2) і кольорових піднесучих 4250 кГц (DD3.1, DD3.2) і 4406 кГц ( DD8.1, DD8.2), комутаторів частот колірної синхронізації (DD4.3, DD4.4, DD5.3, DD6) та колірних піднесучих (DD3.3. DD8.3, DD10), суматора (DD7, R4 – R6 , R9 – R11), генератора часового інтервалу (DD9) та формувачів імпульсів (DD1, DD2, DD3,4, DD5.4). Приставка вмикається кнопкою QB1. З малих синхроімпульсів, що надходять у приставку з генератора, тригер DD2.2 формує імпульси піврядкової частоти. І тривалістю (64 мкс) для комутації сигналів синхронізації кольорів. З виходу тригера вони впливають безпосередньо на елемент DD5.3 через інвертор DD1.3 на DD4.3, які по черзі, через рядок пропускаю сигнали частот колірної синхронізації 4756 і 3900 кГц. Після підсумовування цих сигналів в елементі DD4.4 пакети частот синхронізації кольорів приходять на елементи DD6.1 і DD6.2. Крім того з виходів тригера DD2.2 та інвертора DD1.3 імпульси піврядкової частоти через контакти SB2.1 і SB2.2 перемикають елементи DD8.3 та DD3.3 , які також по черзі пропускають сигнали частот піднесених кольорових 4406 і 4250 кГц з на елементи DD10.1 та DD10.2. У суматорі на елементах DD7, R4 – R6, R9 – R11 сигнали колірної синхронізації та колірної піднесучі складаються і через конденсатор C1 надходять у точку з'єднання резисторів R17, R18 і діод VD7 генератора і потім на автогенератор РЧ, йодулюючи повний телевізійний сигнал. На рис.5 зображено двосторонню друковану плату на якій зібрано приставку.


Живиться генератор сигналів джерела стабілізованого напруги, схема якого зображено малюнку. Світлодіод HL1 відображає увімкнення пристрою. Деталі. Котушка генератора L1 містить 8 витків дроту ПЕВ-2 0.23 і намотана виток до витка на каркасі діаметром 5 і довжиною 15 мм з серцевиком підлаштування СЦР-1. На цьому каркасі розташований виток зв'язку L2 з того ж дроту. Трансформатор Т1 – будь-який малогабаритний, розрахований на струм у вторинній обмотці не менше 0.3 А при вихідній напрузі 8 В. Усі деталі сигналів генератора змонтовані на двосторонній друкованій платі. Плата зображена з двох сторін на малюнку 4. Кварцові резонатори в приставці можна замінити послідовними контурами котушки яких намотують на виток до витка дротом ПЕВ-2 0.23 на ребристих каркасах діаметром 7 мм з підстроювальниками СЦР-1 (від радіоприймача Меридіан). На частоту 3900 кГц у приставці та 4мГц у генераторі котушки контурів містять по 75 витків, ємність конденсаторів 62 пф. На частоту 4756 кГц котушка містить 60 витків, ємність конденсатора 51 пф. На частоту 4250 кГц – 58 витків, конденсатор 68 пф. На частоту 4406 кГц – 48 витків, конденсатор 82 пф.


Налаштування генератора сигналів. При налаштуванні контуру 4 МГц у генераторі, підключеному до телевізора, його підстроювачем спочатку домагаються стійкої рядкової синхронізації на екрані телевізора, а потім увімкнувши кнопками SB5, SD7 сітчасте поле досягають рівності сторін квадратів. Для налаштування контурів у приставці включають у генераторі кнопку SB9 – інвертування, а на приставці QB1 та SB1 (сині та зелені смуги). Обертовий підстроєчник контуру 4756 кГц досягає стійкого зображення кольорових смуг спочатку бірюзового, а потім при налаштуванні контуру 3900 кГц – яскраво зеленого кольору. Після цього віджати кнопку SB1 і налаштовують контури на 4250 і 4406 кГц отримують свічення червоних і цих смуг. Слід зазначити, якщо в телевізорі неправильно відрегульовано АРУ при підключенні генератора сигналів, зображення може бути спотворене. Необхідно спочатку відрегулювати АРУ у телевізорі. Автор конструкції – Валерій Іванов. E-mail: [email protected]

Таймер формує часові інтервали заданої тривалості, Лічильник 1 вважає ці імпульси, і при необхідності змінює часові інтервали, що генеруються таймером. Лічильник 2 відраховує необхідну кількість імпульсів і, розрахувавши і заданого значення, зупиняє таймер.

Алгоритм роботи пристрою

Таймер Т1 формує часові інтервали заданої тривалості, після закінчення інтервалу він формує переривання, в якому його значення оновлюється. Таким чином, можна сформувати будь-яку послідовність імпульсів із будь-якими параметрами (період, тривалість, шпаруватість).

Підпрограма переривання починається з перевірки - чи не останній це імпульс, якщо останній, таймер зупиняється. Якщо не останній, проводиться перевірка, це імпульс або пауза між імпульсами (тривалість імпульсу – 2500 мкс, тривалість паузи – 7500 мкс), таким чином, по черзі формуються часові інтервали імпульсу та паузи.

Опис режиму CTC

Режим скидання таймера під час збігу (СТС)


Рис. 1. Блок-схема T0

У режимі СТС (WGM01, WGM00 = 0b10) регістр OCR0 використовується для завдання роздільної здатності лічильника. Якщо заданий режим CTC і значення лічильника (TCNT0) збігається зі значенням регістра OCR0, лічильник обнуляється (TCNT0=0). Таким чином, OCR0А задає вершину рахунку лічильника, а, отже, і його роздільну здатність. У даному режимізабезпечується ширший діапазон регулювання частоти генерованих прямокутних імпульсів.

У режимі скидання таймера при збігу (WGMn3-0 = 0b0100 або 0b1100) межі рахунку таймера задаються регістром OCR0A. У режимі СТС відбувається скидання лічильника (TCNT0), якщо його значення збігається з регістром OCR0A. У даному режимі забезпечується можливість регулювання частоти прямокутних імпульсів, що генеруються. Тимчасова діаграма роботи таймера в режимі СТС показана малюнку 1. Лічильник (TCNTn) інкрементує свій стан до того часу, поки виникне збіг зі значенням OCR0A , потім лічильник (TCNT0) скидається.


Рис. 2 Тимчасові діаграми режиму СТС

Крім скидання при цьому може генеруватися переривання за допомогою прапорів OCF0A, відповідним регістрів, що використовується для завдання верхньої межі рахунку. Якщо переривання дозволено, процедура переривання може використовуватися для оновлення верхньої межі рахунку.

Для генерації сигналу в режимі CTC вихід OC0A може використовуватись для зміни логічного рівня при кожному збігу, для чого необхідно встановити режим перемикання (COM0A1, COMA0 = 0b01). Значення OC0A буде присутнє на виведенні порту, тільки якщо для цього висновку задано вихідний напрямок. Максимальна частотагенерованого сигналу дорівнює fOC0 = fclk_I/O/2, якщо OCRnA = 0x0000. Для інших значень OCRn частоту сигналу, що генерується, можна визначити за формулою:

де змінна N задає коефіцієнт предделителя (1, 8, 32, 64, 128, 256 чи 1024).

Програма

Include"m16def.inc"

rjmp RESET; ResetHandler

reti; IRQ0 Handler

reti;;rjmp EXT_INT1 ;IRQ1 Handler

reti; reti; jmp; TIM2_COMP; Timer2 Compare Handler

reti;; reti; jmp; TIM2_OVF; Timer2 Overflow Handler

reti; ;reti;jmp;TIM1_CAPT ; Timer1 Capture Handler

jmp TIM1_COMPA; Timer1CompareA Handler

reti;reti;jmp;TIM1_COMPB; Timer1 CompareB Handler

reti;reti;jmp; TIM1_OVF; Timer1 Overflow Handler

reti;; reti; jmp; TIM0_OVF; Timer0 Overflow Handler

reti;; reti; jmp; SPI_STC; SPI Transfer Complete Handler

reti;;reti;jmp;USART_RXC; USART RX Complete Handler

reti;;reti;jmp;USART_UDRE ; UDR Empty Handler

reti;reti;jmp; USART_TXC; USART TX Complete Handler

reti;reti;jmp; ADC; ADCConversion Complete Handler

reti;reti;jmp ;EE_RDY ;EEPROM Ready Handler

reti; reti; jmp; ANA_COMP; Analog Comparator Handler

reti;reti;jmp ;TWSI ;Two-wire Serial Interface Handler

reti;reti;jmp; EXT_INT2; IRQ2 Handler

reti; Timer0 CompareHandler

reti;reti;jmp SPM_RDY ;Store Program Memory Ready Handler

ldi r16,high(2500)

ldi r16,low(2500)

ldir16,(1<

ldir16,(1<

ldir16,(1<

ldi r16,high(RAMEND)

ldi r16,low(RAMEND)

out SPL,r16 ;èíèöèàëèçàöèÿ ñòåêà

sei ;ðàçðåøåíèå ïðåðèâàíèé

main: ;îñíîâíîé öèêë

ldi r16,high(2500)

ldi r16,low(2500)

ldi r16,high(7500)

ldi r16,low(7500)

Після запуску мікроконтролера відбувається процедура ініціалізації (RESET), у цій підпрограмі послідовно:

Настроюються порти вводу-виводу (порт D налаштовується на виведення)

Налаштовується робота таймера Т1:

Завантажується число (2500) в регістр порівняння

Висновок OC1A налаштовується на «перевертання» рівня при збігу рахункового регістру та регістру порівняння (OCR1A)

Задається режим роботи (скидання за збігом) і джерело тактового сигналу (без предделителя, від тактового системного сигналу)

Дозволяється робота переривання за збігом Т1

Ініціалізується стек (налаштовується вершина стека)

Дозволяються переривання.

На цьому ініціалізація контролера завершено. Далі лічильник команд "іде" в основний цикл.

При виникненні переривання, запускається підпрограма обробки переривання TIM1_COMPA, вона починається зі збільшення кількості переривань (задана послідовність з восьми імпульсів, а це 16 "перевертань рівня"), число переривання порівнюється з 16, і, якщо одно, запускається підпрограма out_pulse. У ній зупиняється таймер (обнуленням регістрів, що управляють мікроконтролера). Якщо ж кількість переривань менше 16, програма продовжується далі. Проводиться перевірка прапора breq pulse, і якщо він встановлений, запускається підпрограма pulse, в якій оновлюється регістр порівняння (завантажується число 7500), і прапор скидається. Таким чином, за наявності прапора, по черзі завантажуються числа 2500 та 7500, і на виведенні OC1A формується послідовність зі шпаруватістю 4 (за завданням).


Результати моделювання схеми у програмі PROTEUS

Пробник-генератор ТВ сигналу зібраний на основі мікроконтролера серії pic12f629, і за сукупністю габаритів, споживання струму, вартості виготовлення приладу та функціоналу для телемайстра просто незамінний. Напруга живлення 3 вольти, тобто. дві пальчикові батареї. Струм потеблення в режимі генерації 11 міліампер, в режимі сну - всього 3 мікроампери.

Принципова схема ТБ генератора сигналу

Малюнок друкованої плати


Цей пробник вміє генерувати п'ять картинок, що цілком достатньо для перевірки та ремонту малої, кадрової розгорток телевізора, регулювання відомості та геометричних спотворень растру, балансу кольору, контролю проходження сигналів по ланцюгах телевізора. При короткочасному натисканні на кнопку він прокидається і починає генерувати першу картинку, при наступних натисканнях на неї картинки перемикаються по колу. При тривалому утриманні кнопки в момент відпускання генератор переходить у режим сну. Також у режим сну він переходить автоматично, якщо він увімкнений більше 5 хвилин.


До статті додається архів, в якому є схема, плата пробника, дві прошивки. На відео видно, що у мене на телевізорі картинка трохи не лінійна - це тому, що телевізору 12 років, а може щось у вигляді входу не те.

Для генерації відеосигналу достатньо всього одного мікроконтролера та двох резисторів. Тобто можна зробити буквально кишеньковий генератор відеосигналу розміром із брелок. Такий прилад нагоді телемайстру. Його можна використовувати при зведенні кінескопа, регулюванні чистоти кольору та лінійності.

Робота генератора та його характеристики.
Генератор підключається до відеовходу телевізора, зазвичай це роз'єм типу "тюльпан" або "SCART"
Прилад генерує шість полів:
- Текстове поле з 17 рядків;
- Сітка 8x6;
- Сітка 12x9;
- дрібне шахове поле 8x6;
- велике шахове поле 2x2;
- Біле поле.

Перемикання між полями здійснюється короткочасним (тривалістю менше 1с) натисканням кнопки S2. Утримання цієї кнопки в натиснутому стані тривалий час (довше 1 с.) призводить до вимкнення генератора (мікроконтролер переходить у стан "SLEEP"). Увімкнення генератора здійснюється натисканням кнопки S1. Про стан приладу (ввімкнений/вимкнений) сигналізує світлодіод.

Технічні характеристики приладу:
- тактова частота – 12 МГц;
- напруга живлення 3 – 5 В;
- Струм споживання в робочому режимі:
- при напрузі живлення 3В – близько 5мА;
- при напрузі живлення 5В – близько 12мА;
- частота кадрів – 50 Гц;
- Число рядків у кадрі - 625.

Схема.
Схема дуже проста.
Вся робота з форм-
відеосигналу
виконується програмою,
зашитою в мікрокон-
тролер. Два резистори
разом із опором
відеовходу телевізора
забезпечують необхід-
мої рівні напруги
відеосигналу:
- 0 В - синхрівень;
- 0,3 В – рівень чорного;
- 0,7 В – рівень сірого;
- 1 В – рівень білого.

Для формування відеосигналу використовується нульовий біт PORTA і весь PORTB. (Цей порт працює в режимі зсуву. Незважаючи на те, що сигнал знімається тільки з його нульового біта, програма використовує його весь. Тому всі біти PORTB налаштовані як виходи.) Перший біт PORTA використовується для індикації стану генератора. Коли прилад увімкнений, - світлодіод горить. Коли прилад вимкнено, - світлодіод погашений. Третій біт PORTA використовується для перемикання режимів роботи генератора та його вимикання. Короткочасне натискання кнопки S2 дозволяє перейти від поля генератора до іншого. При утриманні цієї кнопки натиснутому стані довше 1 с. прилад вимикається (мікроконтролер переходить у стан "SLEEP"). Щоб увімкнути генератор необхідно виконати скидання. Це здійснюється натисканням кнопки S1. Напруга живлення приладу можна вибрати в межах 3 - 5 В. При цьому відповідно мають бути підібрані номінали резисторів.
3В ... - R5 = 456Ом і R6 = 228Ом
3,5В – R5=571Ом та R6=285Ом
4В ... - R5 = 684Ом і R6 = 342Ом
4,5В - R5 = 802Ом і R6 = 401Ом
5В ... - R5 = 900Ом і R6 = 450Ом
Тут вказано розрахункові значення. Реально можна ставити резистори зі стандартного ряду, наприклад для 5В - 910Ом та 470Ом, а для 3В - 470Ом та 240Ом.
Напруга живлення генератора може бути і менше 3В. Для кожного конкретного PIC мінімум слід визначати експериментально. У мене, наприклад, 20МГц-й PIC випуску 2001 року працював і за 2,3 Ст.

Програма.
Програма формує 6 полів. Кожне поле складається з 301 рядка (300 інформаційних рядків + один чорний). Взагалі розрахункове число – 305 (625 рядків растру – 15 рядків кадрової синхронізації = 610. Інформація в кадрі виводиться через рядок (докладніше про це дивись тут), тому 610/2 = 305). Але при такому числі рядків розмір растру по вертикалі виходить трохи більшим за те, що формує відеосигнал, що передається телецентром.
Перший рядок у кожному полі чорний. У цей час опитується стан кнопки S2, обчислюється час утримання в натиснутому стані і визначається необхідність переходу від одного поля до іншого.
У графічних полях є невеликі викривлення вертикальних ліній. Це з тим, що довжина деяких рядків кілька тактів більше інших через необхідність встановлення лічильників циклів. В цілому підпрограми, що формують графічні поля, дуже прості, тому немає потреби їх коментувати.
Докладніше розберемо ту частину програми, яка формує текстове поле. Це найскладніша ділянка програми, що займає більшу її частину, використовує максимум ресурсів мікроконтролера (вся пам'ять даних та значна частина ОЗП). Тут використовують фрагменти коду, взяті з гри Pong, яку написав Rickard Gunee.
Текстове поле складається з 17 рядків, кожен з яких може складатися не більше ніж з восьми символів. Символи відображаються через рядок, тобто один рядок тексту займає 17 рядків растру. (Таке відображення пов'язане з обмеженими можливостями PIC.) Інформація про графік символів зберігається у пам'яті програм у розділі таблиця. Інформація про текст рядків зберігається у пам'яті даних (64 слова = 8 рядків по 8 символів). Наприклад у рядку 08h (адресами від 08h до 0Fh) записано наступне: 20.60.48.50.90.58.20 20. Кожне значення - це координата (зсув від початку) символу в таблиці. Значення.20. відповідає пропуску, .60. - літера "В", .48. - літера "І", і таке інше. А все разом утворює "_ВІДЕО".
Розберемо з прикладу, як виводиться текст. Відповідно до програми, у 12-му текстовому рядку екрана необхідно вивести інформацію, яку посилається рядок пам'яті даних 28h (A0 B8 68 C8 D8 70 E0 D0). Таким чином, у наступних 17 рядках растру має бути виведений текст: "pic 1 6 f 8 4". Це відбувається в такий спосіб. У першому з 17 рядків виводиться лише чорний рівень. У ці 64 мкс, поки на екрані відображається чорний рядок, регістри ОЗУ переписуються "верхні значення" символів: 00h.від "p", 08h від "i", 00h від "c" 18h від "1" і так далі. Під час наступного рядка ці дані послідовно передаються в PORTB, тобто відеовихід. Третій рядок знову чорний. За час її виконання, буфер переписуються "другі зверху" значення символів: 00h.від "p", 00h від "i", 00h від "c" 1Ch від "1"... У четвертому рядку ці дані виводяться на екран. І так далі, поки весь рядок не буде відображено.
Підпрограма кадрової синхронізації повністю взята з гри Pong, яку написав Rickard Gunee. Ця підпрограма коротка, але досить заплутана. Якщо пояснювати, як вона працює, вийде ще довше і заплутаніше. Найкраще покласти поруч текст підпрограми та малюнок осцилограми кадрових синхроімпульсів, і не поспішаючи розібрати кожний рядок коду. Скажу тільки, що підпрограма починає виконуватися не з верхнього рядка, а з середини (:-)), від мітки "vertsync".

Розгін PIC16F84.
Як видно із схеми у цьому проекті мікроконтролер працює на частоті 12МГц. На сьогоднішній день випускаються три версії PIC16F84: на 4МГц, на 10МГц та на 20МГц. (На 1.1.2002 співвідношення цін приблизно таке: $3.5, $5.3 і $6.3) У своєму проекті Pong Rickard Gunee стверджує, що використовував 4МГц-е PIC16F84 і вони годинами працювали на частоті 12МГц без проблем. Я спробував, і справді 4МГц-й PIC нормально працює на частоті, яка втричі (!!!) перевищує його допустиму частоту (правда я не став випробовувати долю і включав генератор лише на кілька хвилин). При цьому у 4МГц-го PICа споживаний струм був на 10...20% більше, ніж у 20МГц-го (звідси, мабуть і обмеження по частоті). Думаю, що 10МГц-й мікроконтролер можна розганяти до 12МГц без ризику, але в комерційних проектах цього, звичайно, робити не варто.

Виготовлення.

Скільки я займаюся електронікою, завжди хотів мати генератор сигналів різної форми. Нещодавно мені знадобилося отримати синусоїдальний сигнал за допомогою цифрових методів, і я вирішив, що зроблю собі хороший генератор! У результаті я зробив простий, але функціональний генератор сигналів, який може генерувати: меандр, трикутник, синус, шум і пилкоподібний сигнали. Максимально генерована частота – 60kHz (кілогерц). Поки що у справжній прошивці, частоту можна встановлювати лише за генерації меандра, інших сигналів можна встановлювати лише затримку в мікросекундах. Основою пристрою є AVR мікроконтролер ATtiny2313, сигнал генерується за допомогою 8-бітного цифро-аналогового перетворювача (ЦАП), дані про частоту, сигнал або затримки відображаються на РК індикаторі 8x2. Ось принципова схема:

Для збирання знадобляться деталі:
1. Мікроконтролер Attiny2313 – 1шт.
2. РК індикатор WH0802 або HD44780 сумісний - 1шт.
3. Мікросхема LM324 – 1шт.
4. Тактові кнопки без фіксації – 3шт.
5. Резистор 10 кОм – 1шт.
6. Резистор 300 Ом – 1шт.
7. Резистор 2 ком - 8шт.
8. Резистор 1 ком - 9шт.

ЦАП зібраний на резисторах і підключений безпосередньо до порту B мікроконтролера, сигнал після ЦАП посилюється за допомогою операційного підсилювача LM324. РК індикатор я застосував WH0802 з сумісним контролером, даний РКІ має 2 рядки по 8 знайомств кожна. Істотно застосування будь-якого РК індикатора із сумісним контролером з HD44780. Мікроконтролер застосувати Attiny2313 можна з будь-якими буквеними індексами, у будь-яких корпусах. Кнопки можна використовувати будь-які тактові, без фіксації. Кнопкою "Вибір" вибирається тип сигналу, що генерується. Кнопками "Плюс" та "Мінус" встановлюється частота або затримка. При включенні пристрою він відразу починає генерувати сигнал, за замовчуванням це меандр. Напруга живлення: 5 вольт. Ось осцилограми сигналів, що генеруються генератором:






Я зібрав свій генератор сигналів у пластмасовому корпусі ZIV, ось що вийшло:

Перші випробування разом із саморобним осцилографом:

Схему я зібрав на друкованій платі зробленої за допомогою , малюнок друкованої плати можна знайти у файлах до статті. На платі я використовував деталі у SMD корпусах, виняток лише складає мікросхема LM324, вона використана у DIP корпусі. Прошивку для пристрою я писав у середовищі BASCOM-AVR вихідний додається. Також додається проект пристрою у програмі. До речі, після прошивки не забудьте встановити такі ф'юз біти (для програми SinaProg):

Список радіоелементів

Позначення Тип Номінал Кількість ПриміткаМагазинМій блокнот
U1 МК AVR 8-біт

ATtiny2313

1 До блокноту
U2 Операційний підсилювач

LM324

1 До блокноту
R1-R8 Резистор

2 ком

8 До блокноту
R9-R16, R18 Резистор

1 ком

9 До блокноту
R17 Резистор

10 ком

1 До блокноту
R19 Резистор

300 Ом

1 До блокноту
BTN1-BTN3 КнопкаБез фіксації3

© 2022 androidas.ru - Все про Android