Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. Швидкість встановлюється відповідно до положення ручки джойстика, верхнє положення – мінімальна швидкість, нижнє положення – максимальна швидкість, 1 режим роботи, 12- бітний ШІМ, частота 675Гц.
$include (mod841)
org 0
JMP Start ; перехід на мітку Start
ORG 030H
Start:
call Init_PWM ; виклик ініціалізації ШІМ
call ADCInit ; виклик ініціалізації АЦП
mov PWM1H, #00fh; встановлення розрядності ШІМ 12-біт
mov PWM1L, #0ffh
mov PWM0H, #007h; початкове значення ШІМ (50%)
mov PWM0L, #0ffh
BEGIN: ; мітка початку основного циклу програми
call Measurev ; виклик процедури вимірювання АЦП
mov PWM0H, R7 ; запис в старший байт ШІМ значення тетради старшого байту з АЦП
mov PWM0L, R5 ; запис в молодший байт ШІМ значення молодшого байту з АЦП
JMP BEGIN ; перехід на початок циклу
Init_PWM: ; ініціалізація ШІМ
mov PWMCON, #00010111b; 1-режим, дільник робочої частоти на 4, тактування від кварца контролера
RET
ADCInit: ; ініціалізація АЦП
mov ADCCON1, #10111100b
ret
Measurev: ; вимірювання
; In: -
; Out: R7: R6 -- ADC result
; Alters: a, PSW
mov ADCCON2, #00010110b
jnb ADCI, $
mov a, ADCDATAH
anl a, #0fh
mov R7, a
mov R6, ADCDATAL
ret
END
Варіанти індивідуальних завдань
№
Текст індивідуального завдання
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За домогою другого рядка матричної клавіатури встановлюються наступні режими роботи двигуна: натискання клавіші “2” – встановлення максимальної швидкості, натискання клавіші “5” – встановлення середнього значення швидкості, натискання клавіші “8” – встановлення мінімальної швидкості, натискання клавіші “0” – зупинка двигуна. На світлодіодній лінійці відображати задану швидкість у вигляді “термометра”. 1 режим роботи, 8- бітний ШІМ, частота …. Початковий стан: двигун зупинено, на світлодіодній лінійці відображається поточне значення швидкості.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою дискретних кнопок задавати швидкість обертання вала двигуна. Кнопка на енкодері збільшує значення швидкості на одиницю, при досягненні максимальної швидкості кнопка стає неактивною, кнопка на джойстику зменшує значення швидкості на одиницю, при встановленні швидкості 0, двигун зупиняється, подальше натискання на кнопку не приводить до змін, встановлене значення швидкості у (%) відображається на статичному семисегментному індикаторі. 1 режим роботи, 6- бітний ШІМ, частота …. Початковий стан: двигун зупинено, індикатор погашено.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою джойстика, при переміщені його по горизонтальній осі, задавати швидкість обертання вала двигуна. Крайнє праве положення – максимальна швидкість, крайнє ліве положення – мінімальна швидкість. На світлодіодній лінійці відображати задану швидкість у вигляді “термометра”. 1 режим роботи, 8- бітний ШІМ, частота …. Початковий стан: вал двигуна обертається відповідно до положення ручки на джойстику, на світлодіодній лінійці відображається встановлене значення швидкості.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою копок матричної клавіатури задавати наступні режими роботи двигуна. Натискання кнопки “#” – збільшує на одиницю швидкість, натискання кнопки “*” – зменшує на одиницю швидкість, натискання кнопки “0” – зупиняє двигун, при досягненні крайніх значень при заданні швидкості відповідні кнопки стають неактивними. 1 режим роботи, 3- бітний ШІМ, частота ….
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою енкодера задавати швидкість обертання вала двигуна. При обертанні ручки енкодері в напрямку за годинниковою стрілкою – швидкість збільшується на одиницю, при обертанні ручки енкодера в напрамку проти годинникової стрілки швидкість зменшується на одиницю. При досягненні крайніх значень при заданні швидкості, повертання ручки енкодері в відповідному напрямі ігнорується. 1 режим роботи, 4- бітний ШІМ, частота …. Початковий стан: двигун зупинено.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою кнопок матричної клавіатури задавати час розгону двигуна до максимальної швидкості, при досягненні максимальної швидкості двигун зупинити на 10с., і продовжувати процедуру спочатку. Кожна кнопка відповідає часу розгону в десятках секунд. “1” – 10с., “2” – 20с., і т. д., кнопки “#”, “0”, “*” – неактивні. 1 режим роботи, 8- бітний ШІМ, частота …. Початковий стан: встановлено час розгону двигуна 10с.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою кнопок матричної клавіатури задавати швидкість обертання вала двигуна, кожна кнопка відповідає десятку процентів від максимальної швидкості “1” – 10%, “2” – 20%, і т. д., кнопка “0” – 100%, кнопка “*” – зупинка двигуна. Встановлене значення швидкості у (%) відображається на статичному семисегментному індикаторі. 1 режим роботи, 6- бітний ШІМ, частота …. Початковий стан: двигун зупинено.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою джойстика, при переміщені його по горизонтальній осі, задавати швидкість обертання вала двигуна. Крайнє ліве положення – максимальна швидкість, крайнє праве положення – мінімальна швидкість. На світлодіодній лінійці запустити біжучу точку, швидкість переміщення залежить від заданої швидкості (мінімальна швидкість – 0, 5 сегмента за 1с., максимальна швидкість – 8 сегментів за секунду). 1 режим роботи, 4- бітний ШІМ, частота …. Початковий стан: вал двигуна обертається відповідно до положення ручки на джойстику, біжуча точка переміщується відповідно до встановленого значення швидкості.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою енкодера задавати швидкість обертання вала двигуна. При обертанні ручки енкодері в напрямку проти годинникової стрілки – швидкість збільшується на одиницю, при обертанні ручки енкодера в напрамку за годинниковою стрілкою швидкість зменшується на одиницю. При досягненні крайніх значень при заданні швидкості, повертання ручки енкодері в відповідному напрямі ігнорується. 1 режим роботи, 5 - бітний ШІМ, частота …. Початковий стан: двигун зупинено.
Керувати швидкістю обертання двигуна постійного струму використовуючи вбудований апаратний ШІМ-контролер. За допомогою дискретних кнопок задавати швидкість обертання вала двигуна. Кнопка на енкодері зменшує значення швидкості на одиницю, при досягненні мінімальної швидкості кнопка стає неактивною, кнопка на джойстику збільшує значення швидкості на одиницю, при встановленні максимальної швидкості подальше натискання на кнопку не приводить до змін, встановлене значення швидкості у вигляді “термометра” відображається на світлодіодній лінійці, заповнення лінійки відбувається знизу вверх. . 1 режим роботи, 3- бітний ШІМ, частота …. Початковий стан: двигун зупинено, індикатор погашено.