Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Розробка генератора сигналів тональних рейкових кіл

Реферат Розробка генератора сигналів тональних рейкових кіл





и подачу низького рівня напруги, замість безпосереднього підключення до нульового потенціалу джерела живлення.

. Живлення пристрою мікропроцесорної системи здійснюється від батареї номіналом 5В.


Специфікація елементов№ по порядкуЕлементТіп1DD1PIC16F873A2ZQMurate Erie CSA4.00MG3C1, C2БМ - 2-300-15 ± 10%, 20пФ4R C МЛТ - 0.5-1К5Звукоізлучатель BZ1HCM1201X Електромагнітний, 1.5 В, 20 мА, 75 дБ, 2.3 Кгц6SA1С нормально роз'єднаними контактами без фіксаціі7SA2

















Рис. 5.1. Принципова схема


6. Розробка програми для мікроконтролера


Для функціонування мікроконтролера потрібна розробка керуючої програми і її завантаження в пам'ять програм. Мікроконтролери зберігають і виконують програми у вигляді двійкових кодів, але розробка довічних програм не зручна для людини. Програми розробляються на мові асемблера або мовами програмування високого рівня таких, як C, Pascal і Basic. Для завантаження програми в процесор, вона повинна бути спеціально підготовлена ??- перетворена в машинний (двійковий) код. В даний час для розробки програм мікропроцесорів і мікроконтролерів використовуються персональні комп'ютери спільно з інтегрованими середовищами розробки (IDE, Integrated Development Environment), наприклад MPLAB IDE. Інтегроване середовище розробки включає текстовий редактор, асемблер MPASM, набір програм для програмування і налагодження, ряд файлів спрощують розробку. Існує можливість підключити компілятори мов високого рівня, призначених для програмування мікроконтролерів (наприклад, MPLAB C, HI-TECH, MPLAB XC).

Завантаження програми виконується пристроями, званими программаторами по послідовному інтерфейсу внутрисхемного програмування (ICSP, In-Circuit Serial Programming). Для цього використовуються три висновки мікроконтролера: PGC (RB6) - висновок синхронізації, PGD (RB7) - висновок передачі даних, PGM (RB3) - висновок переходу в режим програмування.

Написання тексту програми на мові Асемблер

# include p16f873a.inc

__ CONFIG _HS_OSC

CNTW EQU H 20 ; визначимо буфер зберігання робочого регістраEQU H 21 ; визначимо буфер зберігання регістра статусаEQU H 22 ; визначимо буфер зберігання частоти несущейEQU H 23 ; визначимо буфер зберігання частоти маніпуляції H 000 I10; переходжу до ініціалізації

H 004 CNTW; зарезервуємо значення робочого регістра STATUS, 0; і регістра статусу CNTS

STATUS, RP0; після чого виберіть банк 0 STATUS, RP1 PIR1, TMR2IF; перевірка того, що переривання по другому таймеру I8; якщо перервалися по другому таймеру - перехід до BZ PIR1, TMR1IF; перевірка того, що переривання по першому таймеру I9; перехід до виходу з підпрограми PIR1, TMR1IF; скидання прапора переривань по першому таймеру H 04 ; включаємо/вимикаємо таймер 2 для генерації АМ звуку T2CON, 1 CNTM, 0; CNTM пам'ятає частоту маніпуляції M1 H 51 ; 0.0417 с - напівперіод частоти 12Гц TMR1H H 56 TMR1L I9; перехід до виходу з підпрограми

: MOVLW H 0B ; 0.0625 с - напівперіод частоти 8Гц TMR1H H DC TMR1L I9; перехід до виходу з підпрограми


; включення пищалки

I8: MOVLW H 04 ; включення пищалки

XORWF PORTA, 2 PIR1, TMR2IF; скидання прапора переривань по другому таймеру


; вихід з підпрограми: MOVF CNTS, 0; вихід з підпрограми STATUS; встановити значення регістра статусу CNTW, 0; і робочого регістру; повернення до основної програми з дозволом переривань

; ініціалізація: T1CON; ініціалізація, переддільник таймеру 1 не потрібен H 20 ; переддільник 5 T2CON STATUS, RP0 H 0E

; задаю режими роботи паралельних портів

MOVWF ADCON1 B 00000001 TRISA OPTION_REG B 11111111 TRISB B 11100000 TRISC PIE1, TMR1IE PIE1, TMR2IE INTCON, PEIE INTCON, GIE STATUS, RP0 STATUS, RP1 PORTA; очищаю PORTA, PORTC PORTC

: BTFSS PORTB, 4; тут перевіряю положення перемикача SA2 I1

BTFSS PORTB, 3; тут перевіряю положення перемикача SA2

GOTO I2

BTFSS PORTB, 2; тут перевіряю положення перемикача SA2

GOTO I3

BTFSS PORTB, 1; тут перевіряю положення перемикача SA2

GOTO I4

BTFSS PORTB, 0; тут перевіряю положення перемикача SA2 I5 I0; зациклені на перевірці положення перемикача при виборі частоти несучої

...


Назад | сторінка 6 з 7 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка програми перекладу введеного рядка тексту в послідовність кодів аб ...
  • Реферат на тему: Розробка алгоритму програми &Таймер& на мові програмування C ++
  • Реферат на тему: Розробка програми на мові програмування С + + з використаних об'єктно-о ...
  • Реферат на тему: Розробка ігрової програми на мові програмування Turbo Pascal
  • Реферат на тему: Розробка програми на мові програмування Delphi