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

Реферат Midi-контролери клавіатурного типу





st = 2 then p2 = 11111011b; st = 3 then p2 = 11110111b; st = 4 then p2 = 11101111b; st = 5 then p2 = 11011111b; st = 6 then p2 = 10111111b; st = 7 then p2 = 01111111b; p0.2 = 0 then kl = st * 6 +1; p0.3 = 0 then kl = st * 6 +2; p0.4 = 0 then kl = st * 6 +3; p0.5 = 0 then kl = st * 6 +4; p0.6 = 0 then kl = st * 6 +5; p0.7 = 0 then kl = st * 6 +6; p0 .7 = 0 then kl = st * 6 +6; kl <> klp then do; klo = klp; klp = kl; end ;/ * натиснута інша клавіша */time_int;

/*************** основна програма ****************/

/* Ініціалізація */

stolbec = 11111110b ;/ * призначаємо 1 стовпець для сканування */

P2 = stolbec; = 11111100b ;/ * напрямок введення для ліній клавіатури */

Baz = 0; power = 36 ;/ * базове зміщення октав 0 сила натиснутий 36 */

flag = 0; dpp = 2; = 60h; ADCCON2 = 0;

/* ініціалізація таймерів та послідовного каналу */

et0 = 1;

tr0 = 1; tr1 = 1; tr2 = 1 ;/ * включаємо всі три таймера */

tf0 = 0; tf1 = 0; tf2 = 0;

Cnt2 = 0; Cap2 = 0 ;/ * робота як таймер з перезавантаженням дільника */

Tclk = 1 ;/ * использ Т1 для синхронізації послід порту */

Th0 = 0; Th1 = 0f4h; Tl0 = 0; Tl1 = 0f4h; 2h = 0ffh; rcap2l = 70h ;/ * установ. предільника для перезавантаження Т2 */

tmod = 00100001b ;/ * T0 14 розрядний T1 8 розрядів з перезавантаженням */

scon = 01000000h ;/ * синхронізувати послід порт по T1 */

do while 1 ;/ * нескінченний цикл сканування клавіш */

if (kl = 48) and (klp <> kl) then do;/* цикл установки зміщення октави */

do while kl <> 0; end;/* чекаємо, коли відпустять клавішу 48 */

do while kl = 0; end;/* чекаємо, коли натиснуть клавішу */

if kl <= 4 then baz = kl/* якщо натиснута одна з чотирьох перших клавіш, */

/* встановлюємо зміщення октави */

else baz = 0;

klp = kl;

p0 = baz;/* виводимо зрушення октави на індикатор */

end; = 1; flag = 0;/* запускаємо АЦП */while flag = 0;/* і чекаємо поки він відпрацює */

end;

if klo> 0 then do;/* якщо є відпущена клавіша */

sbuf = klo/12 + baz; call time (50) ;/ * передаємо номер октави відпущені. клавіші */

sbuf = (klo mod 12) or 80h; call time (50) ;/ * передаємо номер відпущений. клавіші */

klo = 0; end;/* з встановленим сьомим бітом */

if (kl> 0) and (klp <> kl) then do;/* якщо натиснута нова клавіша */= klp/12 + baz; call time (50) ;/ * передаємо номер октави...


Назад | сторінка 8 з 9 | Наступна сторінка





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

  • Реферат на тему: Номер люкс
  • Реферат на тему: Організація закупівель ресурсів в умовах функціонування системи Just-in-Tim ...
  • Реферат на тему: Методична рекомендація по виконанню джазових стандартів &Ev'ry time we ...
  • Реферат на тему: CASE-технології в моделюванні даних інформаційної системи Call-центру
  • Реферат на тему: Розробка фірмового стилю і створення фільму-презентації музичного колективу ...