Главная  Микроконтроллеры 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [ 26 ] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93]

AT90S1200 встроенный RC-генератор отключен, его можно включить только пользуясь параллельным программатором. Имеется вариант микроконтроллера AT90S1200A, в котором заранее включен встроенный RC-генератор. Микроконтроллеры AT90S2343 и Tiny22 поставляются с уже включенным RC-генератором.

Следует учитывать, что стабильность частоты RC-генератора намного ниже, чем кварцевого, поэтому не следует применять его в случаях, когда нужно точно отмерять интервалы времени.

3.3. Цепь сброса

Используется для задержки запуска микроконтроллера при включении питания, что нужно для его правильного запуска, а также для ручного перезапуска микроконтроллера нажатием на кнопку.

Простейшая схема цепи сброса показана на рис. 3.3.

Если в схеме используется встроенная электрически перепрограммируемая память данных микроконтроллера, следует использовать внешнюю схему, удерживающую вывод Reset на низком уровне до тех пор, пока напряжение не поднимется до необходимого для нормальной работы микроконтроллера уровня. Эта схема должна работать как при увеличении напряжения (т. е. уровень на выводе Reset станет высоким только после достижения напряжением питания нужного уровня), так и при снижении напряжения питания ниже допустимого уровня. Такая схема обычно называется супервайзер питания. На рис. 3.4 показана схема одного из вариантов подключения супервайзера питания.

D1 AT90S2313-8P1

+5в i

il С. -т-0,1

Рис. 3.3. Простейшая цепь сброса



Рис. 3.4. Схема подключения супервайзера питания



Глава 4. Программы и инструменты

4.1. Ассемблер

Как известно, наиболее эффективные программы получаются при использовании языка Ассемблер. Стоит, правда, отмстить, что при этом также увеличивается сложность и время разработки программы. Для микроконтроллеров семейства AVR имеется свободно распространяемый транслятор ассемблера - wavrasm. Также одновременно с транслятором ассемблера устанавливается программа для отладки программ на языке ассемблера для микроконтроллеров семейства AVR. Однако она заметно уступает свободно распространяемому фирмой Atmel отладчику AVR Studio, поэтому ее мы рассматривать не будем.

В этой главе читатели познакомятся с описанием транслятора ассемблера wavrasm. Этот транслятор преобразует команды в виде текстовых мнемоник (специальных сокращений) в закодированные в виде чисел-кодов команды микроконтроллеров. Полученный код можно использовать для работы совместно с отладчиком для проверки правильности работы программы. Также в результате работы транслятора можно получить так называемый файл прошивки, который используется программатором для занесения программы в память программ микроконтроллера.

Транслятор ассемблера работает в среде Microsoft Windows 3.11. Microsoft Windows 95/98 и NT. Кроме того, имеется версия ассемблера, работающая из командной строки MS-DOS. Она устанавливается одновременно с версией для Windows. Версия для Windows имеет встроенный полноэкранный текстовый редактор и справочную систему на английском языке.

В этом описании отсутствует описание системы команд микроконтроллеров, так как в главе 2 имеется Ta6jrana команд, и описаны способы адресации.



Это описание предполагает, что транслятор wavrasm правильно установлен на компьютер, на котором происходит работа.

Начало работы

Запустите транслятор ассемблера. С помощью команды меню File»Open откройте файл tutor.asm. В результате выполнения этой команды исходный текст программы на ассемблере будет загружен в программу и показан на экране. На рис. 4.1 показан примерный вид экрана.

.DEVICE А.ТВОвввЭв

.ORO OmIX .DEE -camp-гЭ9

CLR temp

OUT EECR,R30

STACK POXNTER ХМХТ1АЫЯА.Т10М bDZ R30, bOU (ОмЗеЕ> OUT SK>1,.R30 L.DZ R30. HICK <Ох2еГ) OUT S»H, R3 0

DATA. STACK POINTER XNZTZALZЗАТXOM L.DI R3 e , bOW t OmDE > LDI R2S, HIGH <ОжОГУ

: SORTAOxOOf

CL.R КЭО

OUT 0>clB,R30

DDRA-OxFF j LDI OUT

PORTB-0>c00j

CL.R R3 0 OUT Oicie, R30


Рис. 4.1. Окно транслятора с загруженной программой

Ассемблирование первой программы

После того как вы просмотрели текст, выберите команду меню Assemble. После этого появится второе окно (окно сообщений), которое содержит сообщения об ошибках. Окно сообщений будет распо-



[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [ 26 ] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93]

0.0014