Инструменты пользователя

Инструменты сайта


mk8:project_comp

Порядок работы с DAC в 1886ВЕ6(1)У

В микроконтроллере 1886ВЕ6(1)У есть два блока 12-разрядных ЦАП, то есть для работы с ЦАП нужно только 12 бит. Но микроконтроллер работает с 8-разрядными данными. Для корректной работы блока ЦАП, необходимо производить последовательную запись кода в регистр старшего разряда, а затем в регистр младшего разряда. Но сначала нужно в регистре DAC_CONT выбрать выравнивание данных, установив бит DACFM в 0 (левое смещение) или в 1 (правое смещение). Для того, чтобы работа блока прошла корректно нужно:

  • включить DAC;
  • настроить выравнивание данных;
  • сделать запись в регистры DACxH и DACxL.

Пример кода:

INCLUDE <1886VE6M.INC>
;*******
	ORG     0h            ;start address
	BSF     GLINTD        ;forbid all interrupts
	GOTO    start

ORG 30h

start: 

MOVLB 4 ; Set bank 4

MOVLW 40H
MOVWF DAC_CONT ;enable DACON1 DAC ON

MOVLW 40H      ;DAC is on and left alignment is set
MOVWF DAC_CONT

MOVLW 7FH   
MOVWF DAC2H
MOVLW 0F0H
MOVWF DAC2L   ; 01111111 11110000

MOVLW 60H     ; DAC is still set, left alignment is set; ENOUT is enabled
MOVWF DAC_CONT

begin:
GOTO begin

END
mk8/project_comp.txt · Последние изменения: 2018/09/21 13:48 — katya