Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Archive / цмп / 5 Лабараторная работа DAC.doc
Скачиваний:
61
Добавлен:
12.04.2015
Размер:
538.62 Кб
Скачать

6 Содержание отчета

Отчет должен содержать описание последовательности действий, осциллограммы, таблицы и графики по пункту 5, исходя из варианта (Приложение).

  1. Титульный лист.

  2. Цель работы.

  3. Выводы по пункту 5.

  4. Код программы с комментариями (см. ПРИЛОЖЕНИЕ)

  5. Ответы на контрольные вопросы.

  1. Контрольные вопросы

  1. Изобразите схему ЦАП.

  2. Объясните смысл цифроаналогового преобразования.

  3. Изобразите переходную характеристику ЦАП.

  4. В чём отличие ЦАП последовательного и параллельного типа?

  5. Назовите основные характеристики ЦАП.

  6. От чего зависит скорость потока данных ЦАП?

Библиографический список

  1. Жан М. Рабаи, Ананта Чандракасан, Боривож Николич. Цифровые интегральные схемы. Методология проектирования = Digital Integrated Circuits. — 2-е изд. — М.: Вильямс, 2007. — 912 с. — ISBN 0-13-090996-3

  2. Цифро-аналоговые преобразователи (ЦАП), теория и принципы работына сайте Рынок микроэлектроники

  3. Цифро-аналоговые преобразователи для задач цифровой обработки сигналов

  4. INL/DNL Measurements for High-Speed ADCs объясняет, как вычисляются INL и DNL

  5. Параллельные ЦАП

  6. Алексей Стахов. Компьютер ФибоначчиЧ. 1,Ч. 2,Ч. 3// PCweek.ru, 2002

ПРИЛОЖЕНИЕ

№ Варианта

f(x)

№ Варианта

f(x)

1

Sin(x)(синус)

16

Sin(x)

2

Sine(x)(пила)

17

Sine(x)

3

Impulse(x)(меандр)

18

Impulse(x)

4

Sin(x)

19

Sin(x)

5

Sine(x)

20

Sine(x)

6

Impulse(x)

21

Impulse(x)

7

Sin(x)

22

Sin(x)

8

Sine(x)

23

Sine(x)

9

Impulse(x)

24

Impulse(x)

10

Sin(x)

25

Sin(x)

11

Sine(x)

26

Sine(x)

12

Impulse(x)

30

Impulse(x)

13

Sin(x)

31

Sin(x)

14

Sine(x)

32

Sine(x)

15

Impulse(x)

32

Impulse(x)

Код ассемблера для Mega16 (VMLab):

; ******************************************************

; BASIC .ASM template file for AVR

; ******************************************************

.include "C:\VMLAB\include\m16def.inc"

; Define here the variables

;

.deftemp=r16 ; определение переменнойtemp

; Define here Reset and interrupt vectors, if any

;

.cseg

.org 0

lditemp,low(RAMend) ; загрузка указателя стека

out SPL,temp

ldi temp, high(RAMend) ; загрузка указателя стека

out SPH,temp

lditemp,0b10111111 ; портBна вывод, кроме 6го разряда

out DDRB,temp

reset:; Начало цикла передачи

lditemp,0b00000000 ; низкий уровень на всех разрядах портаB

out PortB,temp

lditemp,0b10000000 ; 7й разряд – тактирование, чередуются 0 и 1

out PortB, temp

lditemp,0b00000000 ; 7й разряд – тактирование, чередуются 1 и 0

out PortB, temp

lditemp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

lditemp,0b00100000 ; 5й разряд – цифровой поток к ЦАП

out PortB, temp

ldi temp,0b10000000

out PortB, temp

lditemp,0b00100000 ; 5й разряд – цифровой поток к ЦАП

out PortB, temp

ldi temp,0b10000000

out PortB, temp

lditemp,0b00100000 ; 5й разряд – цифровой поток к ЦАП

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

ldi temp,0b10000000

out PortB, temp

ldi temp,0b00000000

out PortB, temp

lditemp,0b01011111 ; конец пересылки – уровеньCSвверх

out PortB,temp ; 4й разряд – сигнал CS

rcall PAUSE ; Вызов подпрограммы паузы

jmpreset; Возврат к началу передачи

PAUSE:

LDI R20, 255

LDI R21, 255

DELAY:

DEC R20

BRNE DELAY

DEC R21

BRNE DELAY

RET