51
© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 1 Обзор Расширенного Среднего семейства Enhanced PIC12, PIC16

ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

  • Upload
    ngodat

  • View
    221

  • Download
    3

Embed Size (px)

Citation preview

Page 1: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 1

Обзор РасширенногоСреднего семейства

Enhanced PIC12, PIC16

Page 2: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 2

Обзор семейства PIC16F1XXX

l Обзорl Распределение памятиl Новые Инструкцииl Улучшенная косвенная адресация

Page 3: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 3

Цели по улучшениюPIC16F1ххх

l Увеличение адресуемой памятипрограмм

l Увеличение места под перифериюl Увеличение максимального размерапамяти данных.

l Улучшение метода переключениястраниц/банков

l Улучшение эффективности для ‘C’l Максимальная совместимость.

Page 4: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 4

Сравнение 1-ых страницPIC16XXX и PIC16F1XXX

Старое семействоl Высокопроизводительное RISC

ядро:l 35 инструкций

l Все команды выполняются за 1 цикл, исключая командпереходов

l Тактовая частота:l DC – 20 MHz

генератор/внешний входl DC – 200 нсек командный цикл

l Прерыванияl 8-и уровневый аппаратный

стекl Прямая, Косвенная и

Относительная адресации

Новоеl Высокопроизводительное RISC

ядро :l 49 инструкций

l Все команды выполняются за 1 цикл, исключая командпереходов

l Тактовая частота :l DC – 32 MHz

генератор/внешний входl DC – 125 нсек командный цикл

l Прерывания с автоматическимсохранением контекста

l 16-и уровневый аппаратныйстек со сбросом попереполнению/опустошению

l Прямая, Косвенная иОтносительная адресации

l Два 16-bit File Select Registers (FSR)

l FSR-ы обращаются к памятиданных и программ.

Page 5: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 5

Быстрое сравнение

All devices via TABLRD instructions.

All devices via RETLW or FSR. All devices via EEPROM interface.

All devices via RETLW. Some devices via EEPROM interface

Program Memory Read

1hardware context save

16with over/under flow reset

49

2 can access Program Memory

32Kx1416K is likely the largest device

2496 / 316

Enhanced PIC16

2optional hardware context save

1Interrupts

31with over/under flow reset

8Stack

75 83 including the optional extended instructions

35Instruction Count

31FSRs

1Mx168Kx14Max Program

4096/159+More if the SFRs are outside of the access bank.

336 / 110Max GPR/SFR

PIC18PIC16

Page 6: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 6

Новая карта Памяти Данныхl 32 банков регистровl 15 банков зарезервированы для будущего

Распределение памяти:l Нижние 16 байт каждого банка - общиеl Первые 12 байт каждого банка для регистров ЦПУl SFR расположены по адресам 12-31 в каждом банке

Новые особенностиl Рабочий регистр W адресуется как “wreg”l Банки 16-30 зарезервированы для будущегоl 31-й банк имеет особые функции

Page 7: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 7

Карта Памяти Данных

GPR80 Bytes

Common Memory (16 bytes)

12 Common CORE SFRs

Bank 31Special

Functions

Stack Access&

DebuggingRegisters

SFRs20

GPR80 Bytes

SFRs20

GPR80 Bytes

SFRs20

GPR80 Bytes

SFRs20

GPR80 Bytes

SFRs20

GPR80 Bytes

SFRs20

Banks

6-30

Bank 0 Bank 1 Bank 2 Bank 3 Bank 4 Bank 5 Bank 310x000

0x00B0x00C

0x01F0x020

0x06F0x070

0x07F

Page 8: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 8

Общие регистры каждогобанка

0x0B0x0A0x090x080x070x060x050x040x030x020x010x00Address

Interrupt Control RegisterINTCONProgram Counter Latch HighPCLATHWorking RegisterWREGBank Select RegisterBSRFile Select Register 1 High ByteFSR1 HighFile Select Register 1 Low ByteFSR1 LowFile Select Register 0 High ByteFSR0 HighFile Select Register 0 Low ByteFSR0 LowStatus RegisterSTATUSProgram Counter LowPCLIndirect Register 1INDF1Indirect Register 0INDF0FunctionRegisterSavedNew

Page 9: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 9

IRPIRP CCDCDCTOTO ZZPDPD

Банки памяти данных

l Старое ядро требует переключения банковчерез RP0 и RP1 в регистре Status

l Этих битов больше НЕТ!l Теперь банки переключаются через регистр

BSRl Новая команда MOVLB выбирает банк заодин цикл

0101 10100000 1111

RP1RP1RP0RP0 -- -- CCDCDCTOTO ZZ-- PDPD

-- -- 002244 11-- 33

STATUSSTATUS

BSRBSR

OLDOLD NEWNEW

11 2200 33 44 3131

Page 10: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 10

Память программ

l Память программ расширена до 16 страниц по 2 Кбайт

l Переключение банков командой MOVLP

66 55 001144 2277 33-- -- 88991212 1010-- 1111

PCLATHPCLATH PCLPCL

66 55 001144 2277 3388991010 GOTO/CALLGOTO/CALL

66 55 001144 2277 33889910101212 1111 ProgramProgramCounterCounter

1414 1313

1414 1313

66 55 001144 2233 MOVLPMOVLP

Page 11: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 11

Новый FSRl Два 16-битных FSRl FSR может адресоватьвсе регистры Ипамять программ

l Новые FSR позволяютиспользовать одинуказатель для всейпамяти

l FSR поддерживаетсяновыми инструкциями

SFRsSFRs&&

GPRsGPRs

RESERVEDRESERVED

PROGRAMPROGRAMMEMORYMEMORY

0x00000x0000

0x0FFF0x0FFF

0x10000x1000

0x7FFF0x7FFF

0x80000x8000

0xFFFF0xFFFF

0x00000x0000

0x7FFF0x7FFF

FSR FSR AddressesAddresses

Program Program Counter Counter AddressesAddresses

BSR + File BSR + File Register Register AddressesAddresses

0x00000x0000

0x0FFF0x0FFF

FSR FSR AddressesAddresses

Linear GPR RegionLinear GPR Region

Reach

able

by

Reach

able

by

FSR only

FSR only0x29FF0x29FF

0x3A000x3A00

RESERVEDRESERVED0x1FFF0x1FFF

0x20000x2000

Page 12: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 12

Линейная адресация GPRl Отображает блоки по 80 байт GPR в линейный массивl Сохраняет работу FSR внутри области GPRl Позволяет организовать большие Стек, массивы, буферы и

т.п.l Доступ через FSR и бит установки диапазона адресов

Common Memory (16 bytes)

Bank 31Special

Functions

Stack Access&

DebuggingRegisters

SFRs20

SFRs20

SFRs20

SFRs20

SFRs20

SFRs20

Banks

6-30

12 Common CORE SFRs

BANK 0GPR

80 Bytes

BANK 1GPR

80 Bytes

BANK 2GPR

80 Bytes

BANK 3GPR

80 Bytes

BANK 4GPR

80 Bytes

BANK 5GPR

80 Bytes

0x20000x20000x204F0x204F

0x20500x2050

0x20A00x20A00x209F0x209F

0x20EF0x20EF0x20F00x20F0

0x213F0x213F0x21400x2140

0x218F0x218F

BANK 0BANK 0

BANK 1BANK 1

BANK 2BANK 2

BANK 3BANK 3

BANK 4BANK 4

0x21900x2190

0x21DF0x21DFBANK 5BANK 5

FSRFSRAddressesAddresses

Page 13: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 13

Быстрое сохранениеконтекста

l Прерывание автоматически сохраняетконтекстl Wl STATUSl BSRl FSRsl PCLATH

l RETFIE автоматически восстанавливаетконтекст

l Вы не можете отменить сохранениеконтекстаl Но можете поработать с сохраненным контекстом

Page 14: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 14

Стек

l 16-и уровневый стекl Сброс попереполнению/опустошению (опц.)

l Пользовательский иICD Стек доступен вБанке 31l Чтение/Запись в стек

в Банке 31l Применимо для

RTOS или приотладке кода

00112233445566778899

101011111212131314141515

Page 15: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 15

Режим Сброса СтекаStack Reset Mode

l Бит в слове конфигурации STRVEN разрешает Режим Сброса Стека

l Сброс контроллера по Стеку происходит:l Если выполняется Return когда стек пустойl Если выполняется Call или Прерывание при

заполненном СтекеЧтение вершины стека когда Стек пустой возвращает 0

Page 16: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 16

Нормальный РежимNormal Mode

l Стек работает точно так же как и встарых контроллерах, плюсдополнительные возможности:l 16-ть уровней стекаl Доступ к стеку через STKPTR & TOSH/TOSL

Page 17: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 17

Новые командыl ADDWFC – Add W+F with Carryl SUBWFB – Subtract F-W with Borrowl LSLF – Logical Shift Leftl LSRF – Logical Shift Rightl ASRF – Arithmetic Shift Rightl MOVLP – Move Literal to PCLATHl MOVLB – Move Literal to BSRl BRA – Branch Relative (signed)l BRW – Branch PC + W (unsigned)l CALLW – Call PCLATH:Wl ADDFSR – Add Literal to FSRn (signed)l MOVIW – Move indirect to Wl MOVWI – Move W to Indirectl RESET – Reset Hardware & Software

Page 18: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 18

Арифметические сПереносом

l ADDWFCl Сложение с учетом переноса

l SUBWFBl Вычитание с заемом

l Не поддерживаются операции с константами(Literal) и переносом/заемом

Page 19: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 19

New: Арифметический Сдвиг

l LSLF, LSRF, ASRFl Логический сдвиг влево

l сдвиг влево, MSB в флаг переноса, LSB = 0l То же самое что и арифметический сдвигвлево

l Логический сдвиг вправоl сдвиг вправо, MSB = 0, LSB LSB в флагпереноса

l Арифметический сдвиг вправоl сдвиг вправо, знак переходит в MSB, LSB вфлаг переноса

Page 20: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 20

New: Страницы/Банки

l MOVLPl Помещает 7-bit константу в PCLATH

MOVLP HIGH LABELl PAGESEL за 1 цикл без изменения Wl MOVLP + CALL/GOTO занимает 3 цикла и 2

команды, НО работает В ЛЮБОМ МЕСТЕ ПАМЯТИПРОГРАММ

l MOVLBl Помещает 5-bit константу в BSRl BANKSEL за 1 цикл без изменения W для ЛЮБОГО

банкаl Биты IRP, RP0, RP1 больше не существуют

Page 21: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 21

NEW: ОтносительныеПереходы

l Относительные переходы позволяют осуществлятьпереходы независимо от Страничной организации памяти.

l BRA Nl Всегда переход на PC + N (знаковый)l Диапазон -256 <= N <= 255l PC + N это 15-bit математика – нет сложностей со страницами.

l BRWl Всегда переход на PC + W (беззнаковый)l Быстрая работа с таблицами / Автомат состоянийl PC + W это 15-bit математика – нет сложностей со страницами.

l CALLWl Вызов (Call) с адресом = PCLATH : Wl Быстрая работа с таблицами / Автомат состояний / указатели на

функцииl PCLATH:W прямой адрес

Page 22: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 22

NEW: Команды косвеннойадресации

l Команда ADDFSRl Добавляет знаковую константу квыбранному FSR

l Диапазон от -32 до +31l MOVIW / MOVWI – Перенос из косвенноадресуемого регистра в W и Перенос W в косвенно адресуемый регистрl Специальные режимы

l Pre/Post Incrementl Pre/Post Decrementl Относительный сдвиг

l Диапазон от -32 до +31

Page 23: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 23

Синтаксис MOVIW / MOVWI

l StandardMOVWI 0[INDF0]

l Pre IncrementMOVIW ++INDF0

l Post IncrementMOVWI INDF0++

l Pre DecrementMOVIW --INDF0

l Post DecrementMOVWI INDF0--

l OffsetMOVWI k[INDF0]-32 <= k <= 31

Модифицируют FSR

Не меняют FSR

Page 24: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 24

NEW: Дополнительныекоманды

l RESETl Не нужен GOTO 0l Сбрасывается вся периферияl Программная версия сброса по MCLRl Бит PCON доступен для определения программного

сбросаl Чтение Программной Памяти (PMR) и Записьаналогична записи в EEPROMl Есть во всех контроллерах

l Device/Revision ID, User ID и Config Words теперь могут быть прочтены программно

Page 25: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 25

Переход на новыеконтроллеры

l Страницыl Банкиl Прерыванияl Косвенная адресация

Page 26: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 26

Страницы

l Используйте макрос PAGESELилиl Применяйте команду MOVLP

l Обновите весь код работы сPCLATH

l Перейдите на относительныепереходыl Устранит большинство проблем состраницами

Page 27: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 27

PAGESEL

My_FunctionMy_Function

movlw 0x04movlw 0x04

movwf delay_cntrmovwf delay_cntr

My_function_loopMy_function_loop

decfsz delay_cntrdecfsz delay_cntr

goto My_function_loopgoto My_function_loop

returnreturn

MainMain

……

PAGESEL My_FunctionPAGESEL My_Function

call My_Functioncall My_Function

……

endend

My_FunctionMy_Function

movlw 0x04movlw 0x04

movwf delay_cntrmovwf delay_cntr

My_function_loopMy_function_loop

decfsz delay_cntrdecfsz delay_cntr

goto My_function_loopgoto My_function_loop

returnreturn

MainMain

……

movlwmovlw high My_Function high My_Function

movwf PCLATHmovwf PCLATH

call My_Functioncall My_Function

……

endend

My_FunctionMy_Function

movlw 0x04movlw 0x04

movwf delay_cntrmovwf delay_cntr

My_function_loopMy_function_loop

decfsz delay_cntrdecfsz delay_cntr

goto My_function_loopgoto My_function_loop

returnreturn

MainMain

……

movlpmovlp high My_Functionhigh My_Function

call My_Functioncall My_Function

……

endend

My ASSEMBLY CodeMy ASSEMBLY Code PAGESEL MACRO PAGESEL MACRO PIC16PIC16

PAGESEL MACROPAGESEL MACROENHANCED PIC16ENHANCED PIC16

Page 28: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 28

Банки

l Используйте макрос BANKSEL илиl Применяйте команду MOVLB

l Замените запись в регистрSTATUS (RP0, RP1) записью вBSR

Page 29: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 29

BANKSEL

datadataVar1 res 1Var1 res 1Var2 res 1Var2 res 1Var3 res 1Var3 res 1

codecode

MainMain……BANKSEL Var1BANKSEL Var1addwf Var1 addwf Var1 ……

endend

datadataVar1 res 1Var1 res 1Var2 res 1Var2 res 1Var3 res 1Var3 res 1

codecode

MainMain……bsfbsf STATUS,RP0STATUS,RP0bcf STATUS,RP1bcf STATUS,RP1addwf Var1 addwf Var1 ……

endend

datadataVar1 res 1Var1 res 1Var2 res 1Var2 res 1Var3 res 1Var3 res 1

codecode

MainMain……movlbmovlb Var1 >> 7Var1 >> 7addwf Var1 addwf Var1 ……

endend

My ASSEMBLY CodeMy ASSEMBLY Code BANKSEL MACROBANKSEL MACROPIC16PIC16

BANKSEL MACROBANKSEL MACROENHANCED PIC16ENHANCED PIC16

СохраняетСохраняет 1 1 командукомандуИИ доступдоступ ккнужномунужномубанкубанку

Always worksAlways works

Page 30: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 30

Прерывания

l RETFIE работает с небольшимиотличиями

l Убедитесь что прерывания невозвращают параметр в W (этоплохая практика)

l Уберите код с сохранением ивосстановлением контекста

Page 31: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 31

Косвенное обращение кпамяти

l IRP не существуетl Доступ к более чем 256 байттребует обновление старшей частиFSR<x>H

l Быстрый метод обновлениярегистра FSR<x>H требуетмодификации W

l BANKISEL выполняет несколькокоманд BCF и BSF

Page 32: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 32

Переход на новыеконтроллеры. Итог

l Переход на PIC16F1XXX это оченьпросто

l Обратный переход с PIC16F1XXXможет быть сложным

l Применение макросов BANKSEL иPAGESEL будет большимподспорьем

Page 33: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 33

Новые программные Трюки

l Относительные переходыl Табличное чтениеl 16-и разр. арифметикаl Увеличениенадежности/устойчивости

Page 34: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 34

Относительные переходы

My_FunctionMy_Function

movlw 0x04movlw 0x04

movwf delay_cntrmovwf delay_cntr

My_function_loopMy_function_loop

decfsz delay_cntrdecfsz delay_cntr

goto My_function_loopgoto My_function_loop

returnreturn

My_FunctionMy_Function

movlw 0x04movlw 0x04

movwf delay_cntrmovwf delay_cntr

My_function_loopMy_function_loop

decfsz delay_cntrdecfsz delay_cntr

bra My_function_loopbra My_function_loop

returnreturn

MainMain

……

PAGESEL My_FunctionPAGESEL My_Function

call My_Functioncall My_Function

……

endend

ORIGINAL ASSEMBLY CodeORIGINAL ASSEMBLY Code NEW ASSEMBLYNEW ASSEMBLYENHANCED PIC16ENHANCED PIC16

ГраницаГраница страницыстраницывв этомэтом местеместе будетбудет

требоватьтребоватьпримененияприменения

PAGESELPAGESELвв My_function_loopMy_function_loop

ОтносительныйОтносительныйпереходпереход делаетделаетэтотэтот кодкод рабочимрабочим

длядля любойлюбойстраницыстраницы

No relative No relative CALL support.CALL support.CALLW is not CALLW is not

relative.relative.MainMain……

Additional CodeAdditional Code

PAGESEL My_FunctionPAGESEL My_Functioncall My_Functioncall My_Function……

Page 35: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 35

Табличное чтение

l PIC16F1XXX имеет новыеметоды доступа к таблицам вROMl FSRl Относительные переходы

Page 36: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 36

Таблицы с использованиемFSR

l Длинный кодпредустановки

The_CODEmovlw high Table_startmovwf FSR0Hmovlw low Table_startmovwf FSR0Lmovlw 3addwf FSR0Lmovf INDF0,w

Table_startDT 3,4,5,6,7,8,9

Page 37: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 37

Быстрая работа с таблицамиl Этот код возвращает константу изтаблицы (выровненную пограницам в 256 слов)

The_CODEmovlp high Table_startmovlw 3callw

Table_startDT 3,4,5,6,7,8,9

Table_Functionmovlw high Table_startmovwf PCLATHmovlw 3movwf PCL

Table_startDT 3,4,5,6,7,8,9

Page 38: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 38

Более быстрый способl Возвращает константу из таблицыl НЕТ НЕОБХОДИМОСТИ в выравниванииl Начало таблицы может располагаться где угодно

The_CODEmovlp high Table_startmovlw 3brw

Table_startDT 3,4,5,6,7,8,9

The_CODEmovlw high Table_startmovwf PCLATHmovlw low Table_startaddwf 3btfss STATUS,Cincf PCLATH,fmovwf PCL

Table_startDT 3,4,5,6,7,8,9

Page 39: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 39

16-и разрядная Арифметика

l Новые команды ускоряютработу 16-bit арифметикиmovf val_a_l, Waddwf val_b_l, Fbtfsc STATUS, Cincf val_b_h, Fmovf val_a_h, Waddwf val_b_h, F

movf val_a_l, Waddwf val_b_l, Fmovf val_a_h, Waddwfc val_b_h, F

Page 40: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 40

Увеличениенадежности/устойчивости

l Применение команды RESETl Сброс по переполнению / опустошению Стека

Page 41: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 41

Для Продвинутых

l Доступ к Стекуl Доступ к сохраненномуконтексту

l Чтение Device IDl Приоритетнаямногозадачность

l Диагностика ошибок

Page 42: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 42

Доступ к Стеку

l Стек доступен через регистры TOS и STKPTR

l STKPTR это текущее значениеуказателя стека

l TOS указатель на вершинуl Оба регистра доступны для чтенияи записи

l TOS состоит из TOSH и TOSL - 15-битное значение счетчика команд(PC)

Page 43: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 43

Доступ к Стеку

l Регистр STKPTR указывает на текущуюпозицию стека

l TOSH,TOSL этосодержимое стека, накоторое указываетSTKPTR

l Изменение STKPTR изменит TOSH,TOSL

l STKPTR – 5-и битный

Level 15Level 15Level 14Level 14Level 13Level 13Level 12Level 12Level 11Level 11Level 10Level 10Level 9Level 9Level 8Level 8Level 7Level 7Level 6Level 6

Level 4Level 4Level 3Level 3Level 2Level 2Level 1Level 1Level 0Level 0

55STACKSTACK

Level 5Level 5 TOSH, TOSLTOSH, TOSL

STKPTRSTKPTR

Page 44: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 44

Доступ к контексту

l Регистры сохраненного контектсапри входе в прерывание доступныдля чтения и записи в 31-м банке

PCLATH_SHADPCLATH

WREG_SHADWREG

BSR_SHADBSR

FSR1H_SHADFSR1 High

FSR1L_SHADFSR1 Low

FSR0H_SHADFSR0 High

FSR0L_SHADFSR0 Low

STATUS_SHADSTATUS

Page 45: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 45

Device ID

l Некоторые регистры в областиконфигурации имеют тот жеспособ доступа, что и EEPROM

l User ID, Device/Revision ID иСлово конфигурации могутбыть прочтены программно.

Page 46: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 46

Приоритетнаямногозадачность

l Доступ к стеку и контекступозволяет прерываниюзаменить текущую задачудругой задачей

l Это позволяет упроститьсоздание RTOS для новыхконтроллеров.

Page 47: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 47

Диагностика ошибок

l Доступ к стеку и ксохраненному контекступозволяет осуществлятьсамодиагностику программы

l Проверка стека длябезопасных и критическихприменений

Page 48: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 48

PIC16F1937

l Наш первый «всемнапичканный» контроллер сновым расширенным ядром

l Другие контроллеры:l PIC16F193х & PIC16F194х –больше выводов, больше памяти, больше периферии и т.д.

l PIC16F182х – мало выводов, 8-выводов у PIC12F1822

Page 49: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 49

Дополнительная литература

l Класс 1304 ECPl Обзор и использование периферииконтроллеров с расширенным ядромPIC16F1937

l DS41364Al PIC16F1937 Data Sheet

l DS41375Al PIC1хF1ххх Software Migration

Document

Page 50: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 50

Вопросы?

Page 51: ОбзорРасширенного Среднегосемействаmicrochip.com.ru/Support/MASTERs2009/NEW/Enhanced_RU.pdf© 2009 Microchip Technology Incorporated. All Rights Reserved

© 2009 Microchip Technology Incorporated. All Rights Reserved. 1303 ECA Slide 51

Trademarksl The Microchip name and logo, the Microchip logo, dsPIC, KeeLoq, KeeLoq logo, MPLAB,

PIC, PICmicro, PICSTART, rfPIC and UNI/O are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.

l FilterLab, Hampshire, HI-TECH C, Linear Active Thermistor, MXDEV, MXLAB, SEEVAL and The Embedded Control Solutions Company are registered trademarks of Microchip Technology Incorporated in the U.S.A.

l Analog-for-the-Digital Age, Application Maestro, CodeGuard, dsPICDEM, dsPICDEM.net, dsPICworks, dsSPEAK, ECAN, ECONOMONITOR, FanSense, HI-TIDE, In-Circuit Serial Programming, ICSP, ICEPIC, Mindi, MiWi, MPASM, MPLAB Certified logo, MPLIB, MPLINK, mTouch, nanoWatt XLP, Omniscient Code Generation, PICC, PICC-18, PICkit, PICDEM, PICDEM.net, PICtail, PIC32 logo, REAL ICE, rfLAB, Select Mode, Total Endurance, TSHARC, WiperLock and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.

l SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.l All other trademarks mentioned herein are property of their respective companies.l © 2009, Microchip Technology Incorporated, Printed in the U.S.A., All Rights Reserved.