Что означает аббревиатура pic в контексте ос
Перейти к содержимому

Что означает аббревиатура pic в контексте ос

  • автор:

У вас большие запросы!

Точнее, от вашего браузера их поступает слишком много, и сервер VK забил тревогу.

Эта страница была загружена по HTTP, вместо безопасного HTTPS, а значит телепортации обратно не будет.
Обратитесь в поддержку сервиса.

Вы отключили сохранение Cookies, а они нужны, чтобы решить проблему.

Почему-то страница не получила всех данных, а без них она не работает.
Обратитесь в поддержку сервиса.

Вы вернётесь на предыдущую страницу через 5 секунд.
Вернуться назад

У вас большие запросы!

Точнее, от вашего браузера их поступает слишком много, и сервер VK забил тревогу.

Эта страница была загружена по HTTP, вместо безопасного HTTPS, а значит телепортации обратно не будет.
Обратитесь в поддержку сервиса.

Вы отключили сохранение Cookies, а они нужны, чтобы решить проблему.

Почему-то страница не получила всех данных, а без них она не работает.
Обратитесь в поддержку сервиса.

Вы вернётесь на предыдущую страницу через 5 секунд.
Вернуться назад

У вас большие запросы!

Точнее, от вашего браузера их поступает слишком много, и сервер VK забил тревогу.

Эта страница была загружена по HTTP, вместо безопасного HTTPS, а значит телепортации обратно не будет.
Обратитесь в поддержку сервиса.

Вы отключили сохранение Cookies, а они нужны, чтобы решить проблему.

Почему-то страница не получила всех данных, а без них она не работает.
Обратитесь в поддержку сервиса.

Вы вернётесь на предыдущую страницу через 5 секунд.
Вернуться назад

5.1.2. Микроконтроллеры семейств pic16cxxx и pic17cxxx

Основным назначением микроконтроллеров семейств PIC16 и PIC17, как следует из аббревиатуры PIC (Peripheral Interface Controller), является выполнение интерфейсных функций. Этим объясняются особенности их архитектуры:

  • RISC-система команд, характеризующаяся малым набором одноадресных инструкций (33, 35 или 58), каждая из которых имеет длину в одно слово (12, 14 или 16 бит) и большинство выполняется за один машинный цикл. В системе команд отсутствуют сложные арифметические команды (умножение, деление), предельно сокращен набор условных переходов;
  • высокая скорость выполнения команд: при тактовой частоте 20 МГц время машинного цикла составляет 200 нс (быстродействие равно 5 млн. операций/сек);
  • наличие мощных драйверов (до 25 мА) на линиях портов ввода/вывода, что позволяет подключать непосредственно к ним довольно мощную нагрузку, например, светодиоды.
  • низкая потребляемая мощность;
  • ориентация на ценовую нишу предельно низкой стоимости, определяющая использование дешевых корпусов с малым количеством выводов (8, 14, 18, 28), отказ от внешних шин адреса и данных (кроме PIC17C4X), использование упрощенного механизма прерываний и аппаратного (программно недоступного) стека.

5.1.3. Особенности архитектуры микроконтроллеров семейства pic16cxxx

Микроконтроллеры семейства PIC16CXXX, выполненные по технологии HCMOS представляют собой 8-разрядные микроконтроллеры на основе RISC-процессора, выполненные по гарвардской архитектуре. Имеют встроенное ПЗУ команд объемом от 0,5 до 4 Кслов (разрядность слова команд равна 12 – 14 бит). Память данных PIC -контроллеров организована в виде регистрового файла объемом 32 – 128 байт, в котором от 7 до 16 регистров отведено для управления системой и обмена данными с внешними устройствами. Одним из основных достоинств этих устройств является очень широкий диапазон напряжений питания (2 – 6 В). Ток потребления на частоте 32768 Гц составляет менее 15 мкА, на частоте 4 МГц – 1 – 2 мА, на частоте 20 МГц 5 – 7 мА и в режиме микропотребления (режим SLEEP ) – 1 – 2 мкА. Выпускаются модификации для работы в трех температурных диапазонах: от 0 до +70°С, от -40 до +85°С и от -40 до +125°С. Каждый из контроллеров содержит универсальные (от 1 до 3) и сторожевой таймеры, а также надежную встроенную систему сброса при включении питания. Частота внутреннего тактового генератора задается либо кварцевым резонатором, либо RC-цепочкой в диапазоне 0 – 25 МГц. PIC -контроллеры имеют от 12 до 33 линий цифрового ввода-вывода, причем каждая из них может быть независимо настроена на ввод или вывод. В устройство PIC16C64 входит широтно-импульсный модулятор, с помощью которого можно реализовать ЦАП с разрешением до 16 разрядов. Здесь есть и последовательный двунаправленный синхронно-асинхронный порт, обеспечивающий возможность организации шины I 2 C. Приборы PIC16C71 и PIC16C74 содержат встроенный многоканальный 8-разрядный АЦП с устройством выборки-хранения. Помимо памяти программ в PIC предусмотрено несколько индивидуально прожигаемых перемычек, с помощью которых можно на этапе программирования кристалла выбрать тип тактового генератора, отключить сторожевой таймер или систему сброса, включить защиту памяти программ от копирования, а также записать серийный номер кристалла (16 бит). С программной точки зрения PIC -контроллер представляет собой 8-разрядный RISC-процессор с гарвардской архитектурой. Число команд небольшое — от 33 до 35. Все команды имеют одинаковую длину и, кроме команд ветвления, выполняются за четыре периода тактовой частоты (в отличие, например, от 12 периодов для i87C51). Поддерживаются непосредственный, косвенный и относительный методы адресации, можно эффективно управлять отдельными битами в пределах всего регистрового файла. Стек реализован аппаратно. Его максимальная глубина составляет два или восемь уровней в зависимости от типа контроллера. Почти во всех микросхемах PIC есть система прерываний, источниками которых могут быть таймер и внешние сигналы. Система команд практически симметрична и, как следствие, легка в освоении. Применение PIC -контроллеров целесообразно в несложных приборах с ограниченным током потребления (автономные устройства, приборы с питанием от телефонной линии и т.п.). Благодаря малому количеству компонентов, используемых при построении таких приборов, их размеры уменьшаются, а надежность увеличивается. Типичным представителем микроконтроллеров семейства PIC16CXXX являются микроконтроллеры подгруппы PIC16F8X

? Уровень: для начинающих || Статус: бесплатный || Опубликован: 25.07.2003 Рейтинг: 4,50 || Популярность: 36 || Студентов: 6044/710
Включить комментарии || Настройки || Модерация || Помощь
Таблица 5.1. Основные характеристики МК подгруппы PIC16F8X.
Параметр PIC16F83 PIC16CR83 PIC16F84 PIC16CR84
Максимальная частота, МГц 10 10 10 10
Flash-память программ, слов 512 1K
ПЗУ программ, слов 512 1K
Память данных, байт 36 36 68 68
Память данных в РПЗУ (EEPROM), байт 64 64 64 64
Таймеры TMR0 TMR0 TMR0 TMR0
Число источников прерываний 4 4 4 4
Число линий ввода/вывода 13 13 13 13
Диапазон напряжений питания, В 2,0 – 6,0 2,0 – 6,0 2,0 – 6,0 2,0 – 6,0
Число выводов и тип корпуса 18 DIP, SOIC 18 DIP, SOIC 18 DIP, SOIC 18 DIP, SOIC

Микроконтроллерыподгруппы PIC16F8X обладают развитыми возможностями ввода/вывода:

  • 13 линий ввода-вывода с индивидуальной установкой направления обмена;
  • высокий втекающий/вытекающий ток, достаточный для управления светодиодами:
  • максимальный втекающий ток – 25 мА;
  • максимальный вытекающий ток – 20 мА;
  • 8-битный таймер /счетчик TMR0 с 8-битным программируемым предварительным делителем.

Специализированные микроконтроллерные функции включают следующие возможности:

  • автоматический сброс при включении (Power-on-Reset);
  • таймер включения при сбросе (Power-up Timer);
  • таймер запуска генератора (Oscillator Start-up Timer);
  • сторожевой (Watchdog) таймерWDT с собственным встроенным генератором, обеспечивающим повышенную надежность;
  • EEPROM бит секретности для защиты кода;
  • экономичный режим SLEEP ;
  • выбираемые пользователем биты для установки режима возбуждения встроенного генератора;
  • последовательное встроенное устройство программирования Flash / EEPROM памяти программ и данных с использованием только двух выводов.

КМОП технология обеспечивает МК подгруппы PIC16F8X дополнительные преимущества:

  • статический принцип работы;
  • широкий диапазон напряжений питания: 2,0 . 6,0 В;
  • низкое энергопотребление:
  • менее 2 мА при 5В и 4МГц;
  • порядка 15 мкА при 2В и 32КГц;
  • менее 1 мкА для SLEEP -режима при 2В.

Микроконтроллерыподгруппы PIC16F8X различаются между собой только объемом ОЗУ данных, а также объемом и типом памяти программ. Наличие в составе подгруппы МК с Flash-памятью программ облегчает создание и отладку прототипов промышленных образцов изделий. 5.2.2. Особенности архитектуры Упрощенная структурная схема МК подгруппы PIC16F8X приведена на рис. 5.1. Рис. 5.1. Структурная схема МК подгруппы PIC16F8X. Архитектура основана на концепции раздельных шин и областей памяти для данных и для команд (гарвардская архитектура). Шина данных и память данных (ОЗУ) – имеют ширину 8 бит, а программная шина и программная память (ПЗУ) имеют ширину 14 бит. Такая концепция обеспечивает простую, но мощную систему команд, разработанную так, что битовые, байтовые и регистровые операции работают с высокой скоростью и с перекрытием по времени выборок команд и циклов выполнения. 14-битовая ширина программной памяти обеспечивает выборку 14-битовой команды в один цикл. Двухступенчатый конвейер обеспечивает одновременную выборку и исполнение команды. Все команды выполняются за один цикл, исключая команды переходов. Микроконтроллеры PIC16F83 и PIC16CR83 адресуют 512х14 памяти программ, а PIC16F84 и PIC16CR84 – 1Кх14 памяти программ. Вся память программ является внутренней. Микроконтроллер может прямо или косвенно обращаться к регистрам или памяти данных. Все регистры специальных функций, включая счетчик команд, отображаются на память данных. Ортогональная (симметричная) система команд позволяет выполнять любую команду над любым регистром с использованием произвольного метода адресации. Ортогональная архитектура и отсутствие специальных исключений делает программирование МК группы PIC16F8X простым и эффективным. Назначение выводов МК подгруппы PIC16F8X приведено в табл. 5.2.

Таблица 5.2. Назначение выводов МК подгруппы PIC16F8X.
Обозначение Тип Буфер Описание
OSC1/CLKIN I ТШ/КМОП 1) Вход кристалла генератора, RC-цепочки или вход внешнего тактового сигнала
OSC2/CLKOUT O Выход кристалла генератора. В RC-режиме – выход 1/4 частоты OSC1
/MCLR I/P ТШ Сигнал сброса/вход программирующего напряжения. Сброс низким уровнем.
RA0 I/O ТТЛ PORTA – двунаправленный порт ввода/вывода RA4/T0CKI может быть выбран как тактовый вход таймера/счетчика TMR0. Выход с открытым стоком.
RA1 I/O ТТЛ
RA2 I/O ТТЛ
RA3 I/O ТТЛ
RA4 I/O ТШ
/T0CKI
RB0/INT I/O ТТЛ/ТШ 2) PORTB – двунаправленный порт ввода/вывода. Может быть запрограммирован в режиме внутренних активных нагрузок на линию питания по всем выводам. Вывод RB0/INT может быть выбран как внешний вход прерывания. Выводы RB4. RB7 могут быть программно настроены как входы прерывания по изменению состояния на любом из входов. При программировании МК RB6 используется как тактовый, а RB7 как вход/выход данных.
RB1 I/O ТТЛ
RB2 I/O ТТЛ
RB3 I/O ТТЛ
RB4 I/O ТТЛ
RB5 I/O ТТЛ
RB6 I/O ТТЛ/ТШ 3)
RB7 I/O ТТЛ/ТШ 4)
Таблица 5.2. Назначение выводов МК подгруппы PIC16F8X (продолжение).
Обозначение Тип Буфер Описание
Vdd P Положительное напряжение питания
Vss P Общий провод (земля)
В таблице использованы следующие обозначения: I — вход; O — выход; I/O — вход/выход; P — питание; – — не используется; ТТЛ — ТТЛ вход; ТШ — вход триггера Шмитта.
Таблица 5.3. Назначение бит регистра STATUS (адрес 03h, 83h).
R/W-0 R/W-0 R/W-0 R-1 R-1 R/W-x R/W-x R/W-x
IRP RP1 RP0 /TO /PD Z DC C
Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0
Бит 7: IRP: бит выбора страницы банка данных (используется при косвенной адресации ) 0 = банк 0,1 (00h – FFh) 1 = банк 2,3 (100h – 1FFh) Бит IRP не используется в МК подгруппы PIC16F8X
Биты 6-5: RP1:RP0: биты выбора страницы банка данных (используются при прямой адресации ) 00 = банк 0 (00h – 7Fh) 01 = банк 1 (80h – FFh) 10 = банк 2 (100h – 17Fh) 11 = банк 3 (180h – 1FFh) В МК подгруппы PIC16F8X используется только бит RP0
Бит 4: /TO: бит срабатывания сторожевого таймера 1 = после включения питания, а также командами CLRWDT и SLEEP 0 = по завершении выдержки сторожевого таймера
Бит 3: /PD: бит снижения потребляемой мощности 1 = после включения питания, а также командой CLRWDT 0 = по команде SLEEP
Бит 2: Z: бит нулевого результата 1 = результат арифметической или логической операции нулевой 0 = результат арифметической или логической операции ненулевой
Бит 1: DC: бит десятичного переноса/заема (для команд ADDWF и ADDLW ) 1 = имеет место перенос из 4-го разряда 0 = нет переноса из 4-го разряда
Бит 0: C: бит переноса/заема (для команд ADDWF и ADDLW ) 1 = имеет место перенос из самого старшего разряда 0 = нет переноса из самого старшего разряда Примечание: вычитание осуществляется путем прибавления дополнительного кода второго операнда. При выполнении команд сдвига этот бит загружается из младшего или старшего разряда сдвигаемого источника.

Здесь и далее: R — читаемый бит; W — записываемый бит; S — устанавливаемый бит; U — неиспользуемый бит (читается как «0»); -n = 0 или 1 — значение бита после сброса. Регистр статуса доступен для любой команды так же, как любой другой регистр. Однако если регистр STATUS является регистром назначения для команды, влияющей на биты Z, DC или C, то запись в эти три бита запрещается. Кроме того, биты /TO и /PD устанавливаются аппаратно и не могут быть записаны в статус программно. Это следует иметь в виду при выполнении команды с использованием регистра статуса. Например, команда CLRF STATUS обнулит все биты, кроме битов /TO и /PD, а затем установит бит Z=1. После выполнения этой команды регистр статуса может и не иметь нулевого значения (из-за битов /TO и /PD ) STATUS=000uu1uu, где u – неизменяемое состояние. Поэтому рекомендуется для изменения регистра статуса использовать только команды битовой установки BCF, BSF, MOVWF, которые не изменяют остальные биты статуса. Воздействие всех команд на биты статуса рассматривается в разделе «Описание системы команд». Регистр конфигурации ( OPTION ) является доступным по чтению и записи регистром, который содержит управляющие биты для конфигурации предварительного делителя (пределителя), внешних прерываний, таймера, а также резисторов «pull-up» на выводах PORTB. Назначение бит регистра приведено в табл. 5.4.

Таблица 5.4. Назначение бит регистра OPTION (адрес 81h).
R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1
/RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0
Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0
Бит 7: /RBPU: бит установки резисторов «pull-up» на выводах PORTB 0 = резисторы «pull-up» подключены 1 = резисторы «pull-up» отключены
Бит 6: INTEDG: бит выбора перехода сигнала прерывания 0 = прерывание по спаду сигнала на выводе RB0/INT 1 = прерывание по фронту сигнала на выводе RB0/INT
Бит 5: T0CS: бит выбора источника сигнала таймера TMR0 0 = внутренний тактовый сигнал ( CLKOUT ) 1 = переход на выводе RA4/T0CKI
Бит 4: T0SE: бит выбора перехода источника сигнала для TMR0 0 = приращение по фронту сигнала на выводе RA4/T0CKI 1 = приращение по спаду сигнала на выводе RA4/T0CKI
Бит 3: PSA: бит назначения пределителя 0 = предделитель подключен к TMR0 1 = предделитель подключен к сторожевому таймеру WDT
Биты 2-0: PS2:PS0: биты выбора коэффициента деления пределителя
Значения бит Скорость TMR0 Скорость WDT
000 1:2 1:1
001 1:4 1:2
010 1:8 1:4
011 1:16 1:8
100 1:32 1:16
101 1:64 1:32
110 1:128 1:64
111 1:256 1:128

В том случае, когда предделитель обслуживает сторожевой таймер WDT, таймеру TMR0 назначается коэффициент предварительного деления 1:1. Регистр условий прерывания ( INTCON ) является доступным по чтению и записи регистром, который содержит биты доступа для всех источников прерываний. Назначение бит регистра приведено в табл. 5.5.

Таблица 5.5. Назначение бит регистра INTCON (адреса 0Bh, 8Bh).
R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-x
GIE EEIE T0IE INTE RBIE T0IF INTF RBIF
Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0
Бит 7: GIE: бит разрешения всех прерываний 0 = запрещены все прерывания 1 = разрешены все незамаскированные прерывания
Бит 6: EEIE: бит разрешения прерывания записи в EEPROM 0 = запрещены прерывания записи в EEPROM 1 = разрешены прерывания записи в EEPROM
Бит 5: T0IE: бит разрешения прерывания по переполнению TMR0 0 = запрещены прерывания от TMR0 1 = разрешены прерывания от TMR0
Бит 4: INTE: бит разрешения прерываний по входу RB0/INT 0 = запрещены прерывания по входу RB0/INT 1 = разрешены прерывания по входу RB0/INT
Бит 3: RBIE: бит разрешения прерываний по изменению PORTB 0 = запрещены прерывания по изменению PORTB 1 = разрешены прерывания по изменению PORTB
Бит 2: T0IF: бит запроса прерывания по переполнению TMR0 0 = прерывание по переполнению TMR0 отсутствует 1 = прерывание по переполнению TMR0 имеет место
Бит 1: INTF: бит запроса прерывания по входу RB0/INT 0 = прерывание по входу RB0/INT отсутствует 1 = прерывание по входу RB0/INT имеет место
Бит 0: RBTF: бит запроса прерывания по изменению PORTB 0 = ни на одном из входов RB7:RB4 состояние не изменилось 1 = хотя бы на одном из входов RB7:RB4 изменилось состояние
Включить комментарии || Настройки || Модерация || Помощь
Таблица 5.6. Назначение бит регистра EECON1 (адреса 88h).
U U U R/W-0 R/W-x R/W-0 R/S-0 R/S-x
EEIF WRERR WREN WR RD
Бит 7 Бит 6 Бит 5 Бит 4 Бит 3 Бит 2 Бит 1 Бит 0
Биты 7:5 не используются (читаются как ‘0’)
Бит 4: EEIF: бит запроса прерывания по записи в EEPROM 0 = операция записи не завершена или не начиналась 1 = операция записи завершена (должен быть сброшен программно)
Бит 3: WRERR: бит признака ошибки записи в EEPROM 0 = операция записи завершена 1 = операция записи прервана преждевременно (сбросом по /MCLR или сбросом от WDT )
Бит 2: WREN: бит разрешения записи в EEPROM 0 = запрещена запись в EEPROM 1 = разрешены циклы записи
Бит 1: WR: бит управления записью 0 = цикл записи данных в EEPROM завершен 1 = инициирует цикл записи (сбрасывается аппаратно по завершении записи. Бит WR может быть только установлен (но не сброшен) программно)
Бит 0: RD: бит управления чтением 0 = чтение данных EEPROM не инициировано 1 = инициирует чтение данных EEPROM (чтение занимает один цикл. Бит RD сбрасывается аппаратно. Бит RD может быть только установлен (но не сброшен) программно)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *