Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Бродин В.Б., Калинин А.Б. Схемы на микроконтроллерах и БИС программируемой логики, 2002

.pdf
Скачиваний:
265
Добавлен:
11.03.2016
Размер:
9.1 Mб
Скачать

ГЛАВА 2. АРХИТЕКТУРА MCS-51

119

Архитектура ХА обеспечивает увеличение производительности на два порядка по сравнению с архитектурой MCS-51 (по оценкам фирмы

Philips).

Сравнительно недавно выпущенные flash-микроконтроллеры фирм ISSI и SST не имеют принципиальных отличий от рассмотренных выше. Фирмы ISSI и SST специализируются на выпуске быстродействующих микросхем памяти - ОЗУ, flash. Выпуск этими фирмами микроконтрол­ леров с ядром MCS-51 и flash-памятью свидетельствует о том, что потреб­ ности рынка этих микросхем не удовлетворены усилиями Atmel, Philips, Winbond.

Микроконтроллеры MCS-51

с Flash-памятью фирмы ISSI

 

Тип

Rash

RAM

Vcc

Частота,

Корпус

Комментарии

IS89C51

 

 

 

МГц

 

Стандартная архи­

4 К

128

12,24,40

DIP40, PLCC44,

 

 

256

 

 

TQFP44

тектура

IS89C52

8 К

12,24,40

DIP40, PLCC44,

Стандартная архи­

 

 

 

 

 

TQFP44

тектура

IS89LV52A

8 К

256

ЗВ,

24

DIP40, PLCC44,

Стандартная архи­

 

 

 

40

TQFP44

тектура

IS89C54A

16К

256

DIP40, PLCC44,

Стандартная архи­

IS89C58A

 

256

 

40

TQFP44

тектура

32К

DIP40, PLCC44,

Стандартная архи­

 

 

 

 

 

TQFP44

тектура

IS89C64A

64К

256

40

DIP40, PLCC44,

Стандартная архи­

 

 

 

 

 

TQFP44

тектура

Микроконтроллеры MCS-51 с Flash-памятью фирмы SST

Тип

Rash

RAM

Vcc

Частота,

Корпус

Комментарии

 

 

 

 

МГц

 

ISP, 4 К Boot

SST89C54

16К

256

33

DIP40, PLCC44,

 

 

 

 

 

TQFP44

 

SST89C58

32К

256

33

DIP40, PLCC44,

ISP, 4 К Boot

 

 

256

 

33

TQFP44

ISP, 4 К Boot,

SST89C59

64К

DIP40, PLCC44,

 

 

 

 

 

TQFP44

256 XRAM

В целом можно сделать вывод, что несмотря на то, что микроконтрол­ леры типа MCS-51 уступают по производительности современным RISCмикроконтроллерам, эта архитектура вряд ли будет полностью вытеснена новыми семействами, так как для определенного класса задач имеет пре­ имущество по соотношению цена/качество. Большое значение имеет нали­ чие развитых инструментальных средств и опыт разработчиков.

ГЛАВА 3

МИКРОКОНВЕРТЕР ADpC812

ФИРМЫ ANALOG DEVICES

3 .1 . Структура микроконвертера ADjxC812

Фирма Analog Devices представляет микроконвертер ADpC812 как однокристальную систему сбора данных и управления, которая включает прецизионный 12-разрядный АЦП, два 12-разрядных ЦАП и ядро микро­ контроллера с архитектурой MCS-51. Эта микросхема сразу привлекла внимание специалистов, подобный прибор давно ждали и микроконвертер ADpC812 стал настоящим бестселлером 2000г. как за рубежом, так и на отечественном рынке.

Микроконвертер имеет следующие основные характеристики:

12-разрядный 8-канальный АЦП со скоростью выборки 200 kSPS и каналом прямого доступа к памяти;

два 12-разрядных ЦАП с потенциальными выходами;

• 8-разрядное ядро микроконтроллера с архитектурой MCS-51 (Fmax = 16 МГц);

8 Кбайт внутренней flash-памяти программ;

640 байт внутренней flash-памяти данных типа ЭРПЗУ;

последовательные порты: UART, I2C, SPI;

монитор напряжения питания, сторожевой таймер, встроенный источ­ ник опорного напряжения.

ГЛАВА 3 МИКРОКОНВЕРТЕР АОцС812ФИРМЫ ANALOG DEVICES

121

Микросхема заключена в 52-выводный корпус типа POFP, способна работать при напряжениях питания +5В/+ЗВ в индустриальном диапазоне температур. Структура микроконвертера приведена на рис. 3.1, а функции выводов корпуса - на рис. 3.2.

Р0 0 *-► РО 7

Р10

P IT

Р2 О Ч-Р- Р2 7

РЗ О Ч -р-РЗ 7

AVoo

AGND DVoo DGND

 

XTAL1 X1AL2 TO

RxD SCLOCX MCSt/ MSO

 

 

 

(P30)

(P3 1|

SCATA (P33|

 

Рис. 3.1. Структура микроконвертера ADpC812

 

Функции выводов микроконвертера следующие.

 

 

DVDD.

Напряжение

питания

цифровой

части

микросхемы

(+5В/+ЗВ).

 

 

 

 

 

AVDD.

Напряжение

питания

аналоговой

части

микросхемы

(+5В/+ЗВ).

DGND. Цифровая земля.

AGND. Аналоговая земля.

PortO (РО.О — Р0.7). Двунаправленный 8-разрядный параллельный порт ввода/вывода с открытым стоком.

Альтернативной функцией порта при обращении к внешней памяти является функция адресных выходов А7 —АО (адрес и данные передают­ ся с разделением времени - мультиплексированная шина).

При записи в бит регистра порта логической «1» соответствующая ли­ ния порта переходит в режим высокоимпедансного входа. Для работы в режиме порта ввода/вывода необходимо внешнее подтягивание каждой линии порта к уровню логической «1».

P ortl (Р1.0 —Р1.7). Входной порт, по умолчанию настроен на ввод аналоговых сигналов (функции ADC0 - ADC7). Каждый вывод может

122

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

быть переведен в режим цифрового входа, для этого в соответствующий бит порта должен быть записан логический «О».

Р1.0/АОС0Д2

P1.1/ADC1/T2EX

P1.2/ADC2

P1.3/ADC3

AVoo

AGN

C r e F

V ref

o

о о

о

>

 

<r>

CM

-Г-

 

d

 

 

 

О о d d o

a.

<

 

 

o.

a.

a.

cl

о

a.

c l

S.

 

 

 

52

51

50

49

48

47

46

45

44

43

 

42

41

40

Вывод 1 Метка

ADUC812

Вид сверку

DACO

DAC 10

P1.4/ADC4 [Г Г

P1.5/ADCS/SS р2~

P1.6/ADC рГз"

т а 15 16 17 18 19 20 21 22 23 24 25 26

~^9~|

Р2.7/А15/А23

38

Р2 6/А 14/А 22

37 Р2.5/А13/А21

36

Р2.4/А12/А20

35

DGND

34

DV00

33

XTAL2 (OUTPUT)

32

XTAL1 (INPUT)

31

Р2.3/А11/А19

30

Р2.2/А10/А18

29

Р2.1/А9/А17

28 Р2.0/А8/А16

27

SDATA/MOSI

Рис. 3.2. Микроконвертер ADpC812 в 52-выводном корпусе

Кроме работы в качестве аналоговых входов выводы порта Р1 могут выполнять другие альтернативные функции в соответствии со следующей таблицей.

Вывод

Альтернативная функция

Р1.0

12 - вход Таймера 2 в режиме счетчика.

Р1.1

Т2ЕХ - вход захвата Таймера 2 в режиме счетчика, а также вход

Р1.5

управления направлением счета.

SS# - выбор микроконвертера в качестве ведомого при обмене по

 

интерфейсу SPI.

ГЛАВА 3 МИКРОКОНВЕРТЕР АОцСв 12 ФИРМЫ ANALOG DEVICES

123

Port2 (Р2.0 - Р2.7). Двунаправленный 8-разрядный параллельный порт ввода/вывода. При записи в бит регистра порта Р2 логической «1» соответствующая линия порта переходит в режим высокоимпедансного входа со слабым подтягиванием сигнала к уровню логической «1».

Альтернативной функцией этого порта является функция адресных выходов. При обращении к внешней памяти программ через порт Р2 выда­ ется старший байт А8 ~ А15 16-разрядного адреса. При обращении к внешней памяти данных на выводы порта Р2 выдаются средний и старший байты А16 —А23, А8 —А15 24-разрядного адреса (с разделением време­ ни).

Port3 (РЗ.О — Р3.7). Двунаправленный 8-разрядный параллельный порт ввода/вывода. При записи в бит регистра порта РЗ логической «1» соответствующая линия порта переходит в режим высокоимпедансного входа со слабым подтягиванием сигнала к уровню логической «1».

Выводы порта РЗ могут выполнять альтернативные функции в соот­ ветствии со следующей таблицей.

Вывод

РЗ.О

Р3.1 Р3.2

РЗ.З

Р3.4 Р3.5

Р3.6

Р3.7

Альтернативная функция

RxD - вход приемника последовательного порта TxD - выход передатчика последовательного порта INTO - вход внешнего прерывания 0

INT1 - вход внешнего прерывания 1

MISO - у ведущего SPI устройства вход, у ведомого - выход ТО - внешний вход таймера/счетчика 0

Т1 - внешний вход таймера/счетчика 1

CONVST - вход запуска преобразования АЦП при внешнем запуске WR# - сигнал разрешения записи во внешнюю память данных

RD# - сигнал разрешения чтения из внешней памяти данных

DACO, DAC1. Выходы ЦАПО и ЦАП1.

RESET. Вход инициализации. Высокий уровень на этом входе в тече­ нии 24 периодов Fosc запускает процесс инициализации микроконтролле­ ра.

ALE. Активное значение сигнала на этом выходе разрешает фиксацию младшего байта адреса (при 24-разрядном адресе - среднего байта) при обращениях к внешней памяти.

PSEN#. Активное значение сигнала на этом выходе разрешает чтение из внешней памяти программ. Для разрешения последовательной загрузки в ЭРПЗУ этот вывод должен быть через резистор подключен к земле на время включения питания или активного сигнала RESET.

ЕА#. Сигнал на этом входе переключает источник кода при обраще­ нии к младшим 8 Кбайтам памяти программ. При ЕА = 0 и диапазоне ад­ ресов 0000Н — 1FFFH микроконвертер выполняет цикл обращения к

124 СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

внешней памяти программ, при ЕА = 1 обращение по одному из этих адре­ сов приводит к чтению кода из внутренней памяти.

SDATA/MOSI. Линия данных интерфейсов I2C, SPI.

SCLOCK. Линия синхронизации интерфейсов I2C, SPI. XTAL1. Вход инвертирующего усилителя для синхрогенератора.

XTAL2. Выход инвертирующего усилителя для синхрогенератора. CREF. Вывод подключения внешнего конденсатора к внутреннему ис­

точнику опорного напряжения (0,1 мкФ).

VREF. Вход/выход опорного напряжения для аналоговой части схе­ мы. Этот вывод соединен с внутренним источником опорного напряжения. Напряжение (+2,5 В) появляется на нем при разрешенных АЦП и ЦАП.

3 .2 . Организация памяти и программно доступные ресурсы

Микроконвертер ADpC812 имеет микроконтроллерное ядро с модер­ низированной архитектурой MCS-51. Точнее, основой является ядро 8ХС52, но пространство внешней памяти данных увеличено до 16 Мбайт, а к внутренним ресурсам добавлено 640 байт энергонезависимой памяти данных типа ЭРПЗУ (рис. 3.3). Эта внутренняя память данных доступна косвенно через регистры специальных функций. Набор регистров, предна­ значенных для работы с внутренней энергонезависимой памятью данных, включен в состав регистров специальных функций.

Рис. 3.3. Организация памяти и программно доступных ресурсов в ADpC812

ГЛАВА 3 МИКРОКОНВЕРТЕР AD(xC812 ФИРМЫ ANALOG DEVICES

125

К блокам ввода/ вывода исходного микроконтроллерного ядра добав­ лены: АЦП и два ЦАП, два интерфейса последовательных портов (SPI и 12С). Кроме того, надежность работы систем на основе микроконвертера существенно повышают введенные в его структуру блоки монитора напря­ жения питания и сторожевого таймера. Все регистры управления и данных перечисленных блоков также внесены в список регистров специальных функций микроконтроллерного ядра.

Ряд регистров специальных функций у микроконвертера ADpC812 от­ сутствуют из-за упрощения порта UART, механизма прерываний и Тайме­ ра 2.

Область младших 128 байт внутреннего ОЗУ изображена на рис. 3.4.

Шестнадцатеричный

 

 

 

 

 

 

Десятичный

адрес

 

 

 

 

 

 

 

адрес

7F:

 

 

 

 

 

 

 

]

127

2F

7F

7D

79

78

47

77

76

75

74

73

72

71

70

46

2D

6F

6D

69

68

45

67

66

65

64

63

62

61

60

44

5F

5D

59

58

43

57

56

55

54

53

52

51

50

42

29

4F

4D

49

48

41

28

47

46

45

44

43

42

41

40

40

27

3F

ЗЕ

3D

ЗС

ЗВ

ЗА

39

38

39

26

37

36

35

34

33

32

31

30

38

25

2F

2D

29

28

37

24

27

26

25

24

23

22

21

20

36

23

1F

1D

1C

19

18

35

22

17

16

15

14

13

12

11

10

34

21

0F

0D

ОС

ОВ

09

08

33

20

07

06

05

04

03

02

01

00

32

1F

R7

 

 

 

БАНКЗ

 

 

 

31

18:

R0

 

 

 

 

 

 

24

 

 

 

 

 

 

 

17:

R7

 

 

 

БАНК2

 

 

 

23

10:

R0

 

 

 

 

 

 

16

 

 

 

 

 

 

 

0F:

R7

 

 

 

БАНК1

 

 

 

15

08:

R0

 

 

 

 

 

 

8

 

 

 

 

 

 

 

07:

R7

 

 

 

БАНК0

 

 

 

7

00:

R0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.4. Структура внутреннего ОЗУ данных

Ячейки ОЗУ занимают адреса внутренней памяти данных с ООН по 7FH. В этой области памяти выделяются два особых фрагмента:

младшие 32 адреса занимают четыре регистровых банка, каждый из которых содержит по восемь регистров общего назначения R0 - R7.

126

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

Текущий банк определяется значением битов RSO, RS1 регистра PSW. Таким образом, младшие 32 ячейки ОЗУ, кроме адресов, имеют име­ на;

ячейки с адресами в диапазоне 32 - 48 имеют прямо адресуемые би­ ты, адреса битов этой части ОЗУ находятся в диапазоне ООН - 7FH.

На рис. 3.5 изображена область регистров специальных функций.

Рис. 3.5. Регистры специальных функций ADpC812. Указаны имя, адрес и начальное состояние каждого регистра

В область регистров специальных функций включены все программно доступные регистры (управления и данных) внутренних блоков вво­ д а / вывода. Эта область формально занимает старшие 128 байт внутренней памяти данных, но обращение должно осуществляться по определенным адресам ячеек или отдельных битов. Обращение по промежуточным адре­ сам приведет к ошибочному результату. Видно, что все регистры имеют как символические имена, так и адреса в качестве ячеек внутренней памя­ ти. Часть регистров содержит прямо адресуемые биты, адреса этих битов находятся в диапазоне 80Н —FFH. Кроме адресов эти биты имеют имена, которые предопределены в системах программирования. Таким образом, к

ГЛАВА 3. МИКРОКОНВЕРТЕР АОцС012ФИРМЫ ANALOG DEVICES

127

прямо адресуемым битам регистров специальных функций можно обра­ щаться по именам. Если в регистре биты не прямо адресуемые, то их име­ на служат только для удобства описания функционирования соответст­ вующего блока ввода/вывода. Для обращения к определенному биту должна производиться выборка байта, а затем накладываться нужная мас­ ка.

Назначение основных регистров специальных функций ядра 8ХС52 следующее:

Имя

Назначение

регистра

Аккумулятор, основной операционный регистр

АСС

В

Дополнительный регистр для операций умножения и деления

PSW

Регистр, хранящий слово состояния процессора

IP

Регистр приоритетов прерываний

РЗ

Регистр порта РЗ

IE

Регистр разрешения прерываний

Р2

Регистр порта Р2

SBUF

Регистр данных последовательного порта

SCON

Регистр управления последовательного порта

Р1

Регистр порта Р1

ТН1

Старший регистр таймера/счетчика 1

тно

Старший регистр таймера/счетчика 0

TL1

Младший регистр таймера/счетчика 0

TLO

Младший регистр таймера/счетчика 0

TMOD

Регистр режима таймеров/счетчиков

TCON

Регистр управления таймеров/счетчиков

PCON

Регистр управления энергопотреблением

SP

Регистр указателя стека

DPH, DPL Указатель данных DPTR

РО

Регистр порта РО

Отметим, что по сравнению с исходным ядром 8ХС52 микроконвертер ADpC812 имеет отличия в наборе регистров общего назначения:

1.добавлены регистры специальных функций АЦП, ЦАП, последова­ тельных интерфейсов I2C и SPI, EEPROM, сторожевого таймера;

2.отсутствуют регистры T2MOD, SADEN, SADDR, IPH.

Эти отличия отмечены в карте регистров цветом. Отсутствие указан­ ных регистров связано с упрощением Таймера 2, механизма приоритетов системы прерываний и последовательного порта UART. Эти особенности, а также формат остальных регистров специальных функций будут обсуж­ даться в разделах, посвященных описанию работы отдельных блоков вво­ да/вывода и системы прерываний. Здесь рассмотрим два основных реги­ стра, которые непосредственно связаны с работой всего микроконвертера. Это регистр PSW, хранящий слово состояния процессора, и регистр

128

СИСТЕМЫ НА МИКРОКОНТРОЛЛЕРАХ И БИС ПРОГРАММИРУЕМОЙ ЛОГИКИ

PCON, через который осуществляется управление режимами пониженного энергопотребления.

Формат регистра PSW и функции отдельных битов следующие:

7 6_______ 5________4________3 2________1_______ О

 

CY

АС

F0

RS1

RS0

OV

F1

Р

Исх.код

0

0

0

0

0

0

0

0

Имя

Номер

 

 

 

Функция

 

 

флага

бита

 

 

 

 

 

 

 

CY

PSW.7

Флаг переноса

 

 

 

 

 

АС

PSW.6

Флаг вспомогательного переноса (между тетрадами)

 

F0

PSW.5

Флаг 0, возможно программирование пользователем в общих целях

RS1

PSW.4

Первый бит селектора регистрового банка

 

 

RS0

PSW.3

Нулевой бит селектора регистрового банка

 

 

OV

PSW.2

Флаг переполнения

 

 

 

 

F1

PSW.1

Флаг, определяемый пользователем

 

 

 

РPSW.0 Флаг чётности. Устанавливается/очищается аппаратно каждый цикл

инструкции и показывает нечётное/чётное число ‘1’ в аккумуляторе

У микроконтроллеров, выполненных с использованием технологии CHMOS, обычно имеются режимы пониженного энергопотребления. В микроконверторе ADpC812 управление этими режимами осуществляется при помощи регистра PCON.

87Н

PCON

Исх.код

0

Номер

Функция

бита

 

PCON.7

Бит управления скоростью обмена последовательного порта.

PCON.6

При SMOD=1 скорость обмена в режимах 1 ,2 ,3 удваивается.

Не используется.

PCON.5

Не используется.

PCON.4

Бит запрещения сигнала ALE. Если бит = 0 сигнал формируется,

PCON.3

если бит = 1 на выводе всегда высокий потенциал.

Флаг общего назначения.

PCON.2

Флаг общего назначения.

PCON.1

Бит управления режимом микропотребления (power down).

PCON.O

Если бит =1 этот режим включен.

Бит управления режимом холостого хода (idle). Если бит =1 этот

 

режим включен.

Если установлены оба бита, PCON.1 и PCON.0, больший вес имеет бит PCON.1, и микроконтроллер переходит в режим микропотребления.

Режим микропотребления (Power down). Команда, в которой уста­ навливается бит PCON. 1 является последней перед переходом в режим

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]