Adssd

  • 24 дек. 2011 г.
  • 698 Слова
Цель работы.

Изучить работу модуля широтно-импульсной модуляции ( ШИМ). Найти взаимосвязь между входными , подаваемыми на модуль и выходными сигналами на осциллографе .

1. Порядоквыполнения работы

Используя шаблон FPWM.asm , подготовить его к выполнению на контроллере, предварительно избавившись от лишнего кода предназначенного для всех каналов кроме нулевого. Отладить программу,используя контроллер. Добиться вывода четкого и ровного сигнала на экран осциллографа . Разобраться с различными режимами работы ШИМ

2. Краткая теория

[pic]
[pic]

[pic]
[pic][pic]3. Листинг программы

; Запускает все доступные каналы быстрого PWM.
; Индекс модуляции каждого канала отличается 800h.
;
org 0
jmpa cc_UC, start ;Пропустить область векторов
; прерываний.
; ************************************************************************
;
; Векторы прерываний.
;
;************************************************************************
org 200h
Start: mov r0, # 000h ; Начинаем с канала 0
nop; Зарезервировано для отладчика.
mov r1, # 1400h ; Индекс модуляции первого канала.
mov r2, # 2000h ; Период.
mov r3, # 0; Старт с 0.
test: calla cc_UC, initFPWM ; Установить индекс модуляции.
jmpr cc_C, StartF ; Последний канал (признак ошибки)?
add r1, # 800h; Изменить индекс модуляции.
addb rl0, # 1 ; Следующий канал.
jmpr cc_UC, Test ; Продолжить работу.
StartF: mov r0, # 00Fh ;Запустить все каналы.
calla cc_UC, StartFpwm
jmpa cc_UC, Halt

NewIndex: mov r0, # 0 ; Номер канала
mov...
tracking img