Арифметические и логические команды.
| Команда | Описание | Результат |
| LDI $XX | Загружает константу $XX в ACC. | ACC=$XX |
| ADD $XX | Добавляет константу $XX к ACC. Флаг переноса игнорируется. | ACC=ACC + $XX |
| SUB $XX | Вычитает константу $XX из ACC. Флаг переноса игнорируется. | ACC=ACC - $XX |
| AND $XX | Операция AND между ACC и константой $XX. | ACC=ACC & $XX |
| OR $XX | Операция OR между ACC и константой $XX. | ACC=ACC | $XX |
| EOR $XX | Операция XOR между ACC и константой $XX. | ACC=ACC # $XX |
| INC | Инкремент ACC. | ACC=ACC + 1 |
| DEC | Декремент ACC. | ACC=ACC - 1 |
| LSL | Сдвиг ACC влево. Флаг переноса игнорируется. | ACC=ACC << 1 |
| LSR | Сдвиг ACC вправо. Флаг переноса игнорируется. | ACC=ACC >> 1 |
| COM | Инверсия ACC. | ACC=!ACC |
| SWAP | Перестановка тетрад в ACC. | ACC=swap ACC |
| LDS @RR | Загружает ACC из ячейки @RR в блоке параметров. @RR=[$80..$FF]. Блок параметров в памяти программатора располагается с адреса $80. | ACC=@RR |
| STS @RR | Записывает содержимое ACC в ячейку @RR блока параметров. | @RR=ACC |
| CBR @RR,$XX | Выполняет операцию AND между содержимым регистра @RR и константой $XX. | ACC=$XX |
| SBR @RR,$XX | Выполняет операцию OR между содержимым регистра @RR и константой $XX. | ACC=$XX |
| CBRA @RR | Выполняет операцию AND между содержимым регистра @RR и ACC. | ACC=ACC |
| SBRA @RR | Выполняет операцию OR между содержимым регистра @RR и ACC. | ACC=ACC |
| CLT | Сброс таймера TIMER. Период инкремента ~3msec. Максимальное значение ~380msec. Проверка таймера - JTO. | ACC=ACC |
| LDC $XX | Загружает константу $XX в счетчик циклов. Декремент счетчика и проверка нуля - JCZ и JCN. | ACC=ACC |
| LDR @RR | Загружает содержимое регистра $RR в счетчик циклов. Декремент счетчика и проверка нуля - JCZ и JCN. | ACC=ACC |
Команды проверки условий и переходы.
| Команда | Описание | Результат |
| JAZ LABEL | Jump if ACC Zero - Проверяет ACC и переходит на LABEL, если равен 0. | ACC=ACC |
| JAN LABEL | Jump if ACC not Zero - Проверяет ACC и переходит на LABEL, если не равен 0. | ACC=ACC |
| JNA LABEL | Jump if Next Address - Проверяет конечный микросхемы, если не равен, то переход на LABEL. Инкрементирует счетчик адреса и выводит его значение на дисплей программатора. Значение ACC не меняется или равно $00, если был вывод на дисплей. | ACC=?? |
| JLA LABEL | Jump if Last Address - Проверяет конечный микросхемы, если равен, то переход на LABEL. Инкрементирует счетчик адреса и выводит его значение на дисплей программатора. Значение ACC не меняется или равно $00, если был вывод на дисплей. | ACC=?? |
| JCZ LABEL | Jump if Count Zero - Уменьшает счетчик циклов на единицу и переходит на LABEL, если равен 0. | ACC=ACC |
| JCN LABEL | Jump if Count not Zero - Уменьшает счетчик циклов на единицу и переходит на LABEL, если не равен 0. | ACC=ACC |
| JPL LABEL | Jump if Pin(@ACC) Low - Проверяет вывод панельки, заданный в ACC. Если вывод в нуле, переход на адрес LABEL.
На выходе ACC = состоянию выводов панельки REG_x. | ACC=@REG_x |
| JPH LABEL | Jump if Pin(@ACC) High - Проверяет вывод панельки, заданный в ACC. Если вывод в единице, переход на адрес LABEL.
На выходе ACC = состоянию выводов панельки REG_x. | ACC=@REG_x |
| JWL $XX,LABEL | Jump if bits $XX in FLAGW is Zero - Проверяет биты $XX в регистре FLAGW и переходит на LABEL, если
результат равен 0. Используется для проверки, какие дополнительные режимы работы надо выполнить (чтение/запись EEPROM, FUSES,
LOCK bits)
| ACC=ACC |
| JWH $XX,LABEL | Jump if bits $XX in FLAGW is not Zero - Проверяет биты $XX в регистре FLAGW и переходит на LABEL, если результат не равен 0. | ACC=ACC |
| JRE @RR,LABEL | Jump if byte in Register @RR is Equal ACC - Сравнивает содержимое регистра @RR и ACC, и переходит на LABEL, если совпадает. | ACC=ACC |
| JRN @RR,LABEL | Jump if byte in Register @RR is not Equal ACC - Сравнивает содержимое регистра @RR и ACC, и переходит на LABEL, если не совпадает. | ACC=ACC |
| JRL @RR,LABEL | Jump if byte in Register @RR is Lower ACC - Сравнивает содержимое регистра @RR и ACC, и переходит на LABEL, если @RR < ACC. | ACC=ACC |
| JRH @RR,LABEL | Jump if byte in Register @RR is Higher ACC - Сравнивает содержимое регистра @RR и ACC, и переходит на LABEL, если @RR > ACC. | ACC=ACC |
| JTO LABEL | Jump if TimeOut - Если флаг TimeOut установлен (max =380msec.), переходит на адрес LABEL. | ACC=ACC |
| JCP LABEL | Jump if Compare - Сравнивает считанный из микросхемы байт (в режиме PROG или LOCK) с байтами из буфера, ранее считанными командами LDB или LDW и переходит на LABEL, если равно. | ACC=ACC |
| JMP LABEL | Команда перехода на адрес LABEL. | ACC=ACC |
| CALL LABEL | Вызывает подпрограмму по адресу LABEL. Допускаются вложенные вызовы. | ACC=ACC |
| RET | Выход из подпрограммы. | ACC=ACC |
| EXT $XX | Вызывает подпрограмму $XX из внешней библиотеки. В зависимости от режима работы (READ или PROG) вызывается соответствующая функция из библиотеки:
EXT $40 - FT_MPSSE_Erase
EXT $41 - FT_MPSSE_PreRead1 или FT_MPSSE_PreProg1
EXT $42 - FT_MPSSE_PreRead2 или FT_MPSSE_PreProg2
EXT $43 - FT_MPSSE_PreRead3 или FT_MPSSE_PreProg3
EXT $44 - FT_MPSSE_ReadPrgm или FT_MPSSE_ProgPrgm
EXT $45 - FT_MPSSE_ReadData или FT_MPSSE_ProgData
EXT $46 - FT_MPSSE_ReadUser или FT_MPSSE_ProgUser
EXT $47 - FT_MPSSE_ReadLock или FT_MPSSE_ProgLock
| ACC=? |
| END | Завершает работу скрипта и передает управление основной программе. Обязательная инструкция в конце каждого цикла. | |
Управление выводами панельки.
| Команда | Описание | Результат |
| SVP $PP | Подает на вывод $PP напряжение записи или питания. Перед выполнением команды вывод может находиться в нуле. | ACC=@REG_x |
| CLR $PP | Устанавливает на выводе $PP ноль или подает напряжения записи или питания (при этом вывод должен быть заранее установлен в единицу). | ACC=@REG_x |
| SET $PP | Устанавливает на выводе $PP единицу или отключает напряжения записи (питания). | ACC=@REG_x |
| XOR $PP | Инвертирует текущее состояния вывода $PP (логические 0/1) или включает/выключает напряжения (в случае подачи питания, вывод должен быть =1). | ACC=@REG_x |
| PLS $PP,$XX | Формирует на выводе $PP импульс длительностью $XX. Где, $XX
=$00..7F - Длительность = $XX * 1mks = 1..127mks;
=$81..FF - Длительность = ($XX-$80) * 1msec = 1..127msec;
=$80 - Длительность импульса определяется значением ячейки $10 в блоке параметров = 10mks..12,8msec. | ACC=?? |
| OSC $PP,$XX | Формирует на выводе $PP пакет из $XX импульсов с частотой около 1,5МГц. | ACC=@REG_x |
| SVPA | Аналогична SVP, но адрес вывода должен быть предварительно задан в ACC. | ACC=@REG_x |
| CLRA | Аналогична CLR, но адрес вывода должен быть предварительно задан в ACC. | ACC=@REG_x |
| SETA | Аналогична SET, но адрес вывода должен быть предварительно задан в ACC. | ACC=@REG_x |
| XORA | Аналогична XOR, но адрес вывода должен быть предварительно задан в ACC. | ACC=@REG_x |
| PLSA | Аналогична PLS, но адрес вывода должен быть предварительно задан в ACC. Длительность импульса определяется значением ячейки $5B в блоке параметров:
=$00..7F - Длительность = $XX * 1mks = 1..127mks;
=$81..FF - Длительность = ($XX-$80) * 1msec = 1..127msec;
=$80 - Длительность импульса определяется значением ячейки $10 в блоке параметров = 10mks..12,8msec. | ACC=?? |
| PLSC | Формирует импульс на выводе, адрес которого задан в ячейке $2C (REG_CS). Длительность импульса определяется значением ячейки $5B в блоке параметров:
=$00..7F - Длительность = $XX * 1mks = 1..127mks;
=$81..FF - Длительность = ($XX-$80) * 1msec = 1..127msec;
=$80 - Длительность импульса определяется значением ячейки $10 в блоке параметров = 10mks..12,8msec. | ACC=?? |
| IN @REG | Загружает ACC из порта (выводы панельки). REG = [$18,$19,$1A,$1B,$1C]. См. рисунок. Можно использовать зарезервированные имена: REG_1=$1C, REG_2=$19, REG_3=$18, REG_4=$1A, REG_5=$1B. | ACC=@REG_x |
| OUT @REG | Записывает содержимое ACC в порт. REG=[Logic=$18,$19,$1A,$1B,$1C; Vpp/Vcc=$10,$11,$12,$13,$14]. Перед записью в регистры "Vpp/Vcc" (включение напряжений) необходимо установить соответствующий вывод панельки в состояние единицы. Для безопасной подачи напряжений лучше пользоваться командой SVP $PIN.
Например,
OUT REG_1,$02 установит вывод 2 в единицу, а выводы 1,3,4,5,6,7,8 в ноль. На выходе значение ACC=!ACC.
OUT $10,$02 - подаст Vpp на 15 вывод панельки и отключит выводы 11,17,20,23,28,29,30. Значение ACC не меняется. | @REG_x=ACC, ACC=?? |
Подпрограммы ввода-вывода данных.
| Команда | Описание | Результат |
| SRL | Serial Read Left - Последовательный, тактируемый ввод (чтение) 8 бит данных в ACC, старшим битом вперед. Ячейки $2D, $2E и $2F в блоке параметров микросхемы содержат адреса выводов панельки для сигналов: Data_WR, Data_RD и CLK. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). Частота тактирования CLK = 1 / (2 * Tclk). Например, для Tclk = $05, частота CLK ~ 100кГц. | ACC=RD_Byte |
| SRR | Serial Read Rigth - Последовательный, тактируемый ввод (чтение) 8 бит данных в ACC, младшим битом вперед. Ячейки $2D, $2E и $2F в блоке параметров микросхемы содержат адреса выводов панельки для сигналов: Data_WR, Data_RD и CLK. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). | ACC=RD_Byte |
| SRX $SS | Serial Read - Чтение данных в ACC в последовательном режиме. Аналогична двум предыдущим командам, дополнительно можно задавать направление сдвига и количество бит. Например, $SS=17: бит4 =0-сдвиг влево; =1-сдвиг вправо; 7-восемь бит данных. | ACC=RD_Data |
| SWL | Serial Write Left - Последовательный, тактируемый вывод (запись) ACC, старшим битом вперед. Ячейки $2D, $2E и $2F в блоке параметров микросхемы содержат адреса выводов панельки для сигналов: Data_WR, Data_RD и CLK. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). | ACC=RD_Byte |
| SWR | Serial Write Rigth - Последовательный, тактируемый вывод (запись) ACC, младшим битом вперед. Ячейки $2D, $2E и $2F в блоке параметров микросхемы содержат адреса выводов панельки для сигналов: Data_WR, Data_RD и CLK. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). | ACC=RD_Byte |
| SWLC $XX | Serial Write Left - Последовательный, тактируемый вывод (запись) константы $XX, старшим битом вперед. Ячейки $2D, $2E и $2F в блоке параметров микросхемы содержат адреса выводов панельки для сигналов: Data_WR, Data_RD и CLK. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). | ACC=RD_Byte |
| SWRC $XX | Serial Write Rigth - Последовательный, тактируемый вывод (запись) константы $XX, младшим битом вперед. Ячейки $2D, $2E и $2F в блоке параметров микросхемы содержат адреса выводов панельки для сигналов: Data_WR, Data_RD и CLK. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). | ACC=RD_Byte |
| SWA $SS | Serial Write - Последовательный, тактируемый вывод (запись) содержимого ACC. Можно задавать направление сдвига и количество бит. Например, $SS=03: бит4 =0-сдвиг влево; =1-сдвиг вправо; 3-четыре бита данных. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). | ACC=RD_Data |
| SWX $XX,$SS | Serial Write - Последовательный, тактируемый вывод (запись) константы $XX. Можно задавать направление сдвига и количество бит. Например, $SS=03: бит4 =0-сдвиг влево; =1-сдвиг вправо; 3-четыре бита данных. Ячейка $5B - задает длительность импульса и паузы ($00..FF = 1..255mks). | ACC=RD_Data |
| PRB | Parallel Read Byte - Чтение байта в ACC для микросхем памяти с параллельной 8-битной шиной данных. Ячейки $98..$9F в блоке параметров микросхемы содержат адреса выводов панельки для шины данных D7..D0. | ACC=Byte |
| PRW | Parallel Read Word - Чтение слова для микросхем памяти с параллельной 16-битной шиной данных. Ячейки $90..$9F в блоке параметров микросхемы содержат адреса выводов панельки для шины данных D15..D0. | ACC=LowByte |
| PRX $AA | Parallel Read Data - Чтение байта в ACC по "адресу" ($AA=$10-старший байт данных; $18-младший байт данных). | ACC=Byte |
| PWB | Parallel Write Byte - Запись содержимого ACC для микросхем памяти с параллельной 8-битной шиной данных. Ячейки $88..$8F в блоке параметров микросхемы содержат адреса выводов панельки для шины данных D7..D0. | ACC=$00 |
| PWW | Parallel Write Word - Запись слова для микросхем памяти с параллельной 16-битной шиной данных. Ячейки $80..$8F в блоке параметров микросхемы содержат адреса выводов панельки для шины данных D15..D0. | ACC=$00 |
| PWBC $XX | Parallel Write Byte - Запись константы $XX для микросхем памяти с параллельной 8-битной шиной данных. Ячейки $88..$8F в блоке параметров микросхемы содержат адреса выводов панельки для шины данных D7..D0. | ACC=$00 |
| PWA $AA | Parallel Write Data - Запись содержимого ACC по "адресу" ($AA=$00-старший байт данных; $08-младший байт данных; $20,$28,$30 - старший, средний и младший байт адреса). | ACC=$00 |
| PWX $XX,$AA | Parallel Write Data - Запись байта $XX по "адресу" ($AA=$00-старший байт данных; $08-младший байт данных; $20,$28,$30 - старший, средний и младший байт адреса). | ACC=$00 |
| PZW | Parallel Z-state Word - Перевод 16-битной Шины Данных в третье состояние. Ячейки $80..$8F в блоке параметров микросхемы содержат адреса выводов панельки для шины данных D15..D0. | ACC=$00 |
Комбинированные подпрограммы.
| Команда | Описание | Результат |
| BGR | Подготавливает программатор к режиму Чтения. Устанавливает Начальное состояние выводов панельки, подает напряжения и отрабатывает Задержку при включении питания. Для снижения шумов напряжение Vpp устанавливается на 0.5v больше, чем Vcc. | ACC=?? |
| BGS | Аналогична режиму BGR. Во время включения питания защита по току отключена. В этом режиме можно использовать ключи Vpp для питания микросхемы (Vcc=Vpp). | ACC=?? |
| BGW | Подготавливает программатор к режиму Записи. Vpp устанавливается согласно заданному напряжению записи. В остальном аналогична режиму BGR. | ACC=?? |
| BGE | Подготавливает программатор к режиму Стирания. Vpp устанавливается согласно заданному напряжению стирания. В остальном аналогична режиму BGR. | ACC=?? |
| FLP | При работе с компьютером подготавливает буфер для работы с компьютером. В автономном режиме открывает файл в памяти программатора. Обязательная команда в режимах READ и PROG. Не использовать в режимах ERAS и LOCK. | ACC=?? |
| FLE | Аналогична FLP, только используется, когда необходим доступ к EEPROM. | ACC=?? |
| LDB | Считывает очередной байт из буфера для последующей записи в микросхему. При необходимости подгружает новый блок данных. Считанный байт помещается в регистр DATAL и ACC. Используется только в режиме PROG. | ACC=DATAL |
| LDW | Считывает 2 байта из буфера для последующей записи в микросхему. При необходимости подгружает новый блок данных. Считанные байты помещаются в регистры DATAL и DATAH. Сначала идет младший байт, затем старший. Используется только в режиме PROG. | ACC=DATAL |
| CPB | Сравнивает считанный из микросхемы байт с байтом из буфера. При необходимости подгружает новый блок данных и выводит сообщения об ошибках. Используется только в режиме READ. В зависимости от режима работы байт будет проверен на чистоту (=$FF) и возможность перезаписи, записан в буфер или сравнен с байтом из буфера. | ACC=?? |
| CPW | Сравнивает считанное из микросхемы слово с 2 байтами из буфера. Аналогична команде CPB. Используется только в режиме READ. | ACC=?? |
| CHL $XX | Проверяет установлены ли в ACC биты $XX и устанавливает флаг LOCK в регистре FLAGS. Используется перед командами CCB или CCW. Не меняет содержимое ACC. | ACC=ACC |
| CCB | Сравнивает считанный из микросхемы байт с младшим байтом конфигурационного слова ($24). Используется в режимах READ и LOCK. | ACC=?? |
| CCP | Сравнивает считанный из микросхемы байт с байтом из блока параметров, на который указывает указатель, заданный командой SPA. Используется в режимах READ и LOCK. | ACC=?? |
| CCW | Сравнивает считанное из микросхемы слово с 2 байтами конфигурационного слова ($24,$25). Используется в режимах READ и LOCK. | ACC=?? |
| SPA $XX | Устанавливает указатель данных на адрес $XX ($80..$FF) в блоке параметров. Используется только после обработки основной и дополнительной памяти, для обработки FUSES или LOCK bits командой CCP. Команда SPA $00 восстанавливает предыдущее значение указателя. | ACC=$XX |
| CLA | Устанавливает счетчик адреса микросхемы в начальное состояние. Счетчик автоматически устанавливается в командах BGR, BGW, BGS и BGE. | ACC=ACC |
| CLE | Устанавливает счетчик адреса EEPROM в начальное состояние. Счетчик автоматически устанавливается командой FLE. | ACC=ACC |
| A08 | Для микросхем памяти с параллельной шиной данных и адреса, устанавливает 8 битный адрес. Ячейки $B0..$B7 в блоке параметров микросхемы содержат адреса выводов панельки (A7..A0). | ACC=$00 |
| A16 | Для микросхем памяти с параллельной шиной данных и адреса, устанавливает 16 битный адрес. Ячейки $A8..$B7 в блоке параметров микросхемы содержат адреса выводов панельки (A15..A0). | ACC=$00 |
| A24 | Для микросхем памяти с параллельной шиной данных и адреса, устанавливает 24 битный адрес. Ячейки $A0..$B7 в блоке параметров микросхемы содержат адреса выводов панельки (A23..A0). | ACC=$00 |
| DAC $XX | Устанавливает значение ЦАП-а VPP равным $XX*0.125v. | ACC=?? |
| DACA | Аналогична DAC, но значение ЦАП-а должно быть предварительно задано в ACC. | ACC=?? |
| DLS $XX | Формирует задержку длительностью $XX. Где, $XX
=$01..7F - Длительность = $XX * 1,00mks = 1..127mks;
=$81..FF - Длительность = ($XX-$80)*1msec = 1..127msec;
=$00 - Минимальная задержка, зависит от тактовой частоты программатора. V5.8T - 0.62mks; V5.xT - 0.9mks; V5.x - 1.8mks.
=$80 - Длительность задержки определяется значением ячейки $10 в блоке параметров = 10mks..12,8msec. | ACC=?? |
| DLL $XX | Задержка длительностью T = $XX*10msec. | ACC=$00 |
| ALG $XX | Запуск подпрограммы, находящейся в памяти программатора. Позволяет выполнить штатный алгоритмов работы с микросхемой. Номер алгоритма задан в ячейке $12. Запрещены вызовы алгоритмов $1C, $1D, $1E и $1F. Вызов несоответствующего алгоритма работы приведет к ошибкам в работе и может повредить микросхему.
$XX может принимать значения:
=AAAA A000 - ERAS - режим стирания.
=AAAA A010 - LOCK - режим установки защиты.
=AAAA A100 - PROG - режим записи.
=AAAA A110 - READ - режим чтения.
Где, AAAA Axxx - номер алгоритма *8. Например:
W27C512 (алг.=$01): Запись = $0C, Чтение = $0E, Стирание = $08.
P12F508A (алг.=$0F): Запись = $7C, Чтение = $7E, Стирание = $78, Запись CFG = $7A.
i28F800C3B(алг.=$16): Запись = $B4, Чтение = $B6, Стирание = $B0.
| ACC=?? |
| ERR | Выводит диалог с сообщением об ошибке. Используется только в режиме PROG. | ACC=?? |
| OFP | Выключение питания, сброс всех выводов панельки в состояние OFF и задержка 20ms. | ACC=$00 |
Команды для работы с определенным типом микросхем.
| Команда | Описание | Результат |
| SPI flash |
| SPI_CMD $XX | Передача однобайтной команды: Low_CS + Command($XX). Это должна быть первая команда, которая передается в микросхему, после включения питания. | ACC=?? |
| SPI_CWR $XX | Передача однобайтной команды: Low_CS + Command($XX) + High_CS. | ACC=?? |
| SPI_CRD $XX | Однобайтная команда чтения: Low_CS + Command($XX) + Read_Byte + High_CS. | ACC=RD_Byte |
| SPI_ADR $XX | Передача команды и установка адреса: Low_CS + Command($XX) + Address(1..4 bytes).
Количество байт адреса: Par[$11].4 =1 - второй байт адреса; Par[$11].5 =1 - третий байт адреса; Par[$11].6 =1 - четвертый байт
адреса (всегда = 0). |
ACC=?? |
| SPI_ADF $XX | Передача команды и установка адреса в формате AT45*: Low_CS + Command($XX) + Address(2 bytes)+$00. | ACC=?? |
| SPI_RDP | Чтение страницы + High_CS. Для микросхем со страничной организацией. Размер страницы = Par[$10]*256+Par[$16]. | ACC=?? |
| SPI_RDA | Чтение ВСЕЙ микросхемы с обработкой адреса + High_CS. | ACC=?? |
| SPI_WRP | Загрузка страницы + High_CS. Для микросхем со страничной организацией. Размер страницы = Par[$10]*256+Par[$16]. | ACC=?? |
| SPI_WRA | Загрузка страницы с обработкой адреса + High_CS. Размер страницы = Par[$10]*256+Par[$16]. | ACC=?? |
| NAND Flash |
| NAN_RDP | Чтение страницы + High_CS. Размер страницы = Par[$10]*256+Par[$16]. | ACC=?? |
| NAN_WRP | Загрузка страницы. Размер страницы = Par[$10]*256+Par[$16]. | ACC=?? |
| NAN_ADR $XX | Передача команды и установка адреса: Low_CS + Command($XX) + Address(3..5 bytes).
Количество байт адреса: Par[$11].5 =1 - двухбайтный адрес PAGE; Par[$11].6 =1 - трехбайтный адрес ROW/BLOCK. | ACC=?? |
| NAN_CBS $XX | Передача команды и ожидание готовности: Low_CS + Command($XX) + Busy_Pin (ячейка $2E). | ACC=?? |
| NAN_CST $XX | Передача команды и чтение статус-регистра: Low_CS + Command ($XX) + Status + High_CS. | ACC=Status |
| MCS-51 |
| MCS_48T | Задержка 48 pulses on XTAL. | ACC=?? |
| MCS_DEL | Задержка ~24msec. Pulses on XTAL. | ACC=?? |
| MCS_ADR | Установка адреса(2 bytes) + 48T. | ACC=?? |
| MCS_ARD | Установка адреса(2 bytes) + 48T + Read_Byte. | ACC=RD_Byte |
| MCS_ADW | Установка данных(@R2) + установка адреса(2 bytes) + 48T. | ACC=?? |
| MCS_MOD $XX | Установка режима работы $XX. | ACC=?? |
| MCS_MRD $XX | Установка режима работы $XX + Read_Data. | ACC=?? |
| MCS_PLS $XX | Импульс записи ALE/PROG (ячейка $2C). Длительность = $XX. Где, $XX
=$00..7F - Длительность = $XX * 10 mks = 10..1270mks;
=$81..FF - Длительность = ($XX-$80) * 2 msec = 2..514msec;
=$80 - Длительность задержки определяется значением ячейки $10 в блоке параметров. | ACC=?? |
| MCS_BSY | Проверка готовности BUSY_pin (ячейка $2E) | ACC=?? |
| PIC16 |
| P16_CRD $XX | Передача команды ($XX) и чтение слова из микросхемы. | ACC=LowByte |
| P16_CWR $XX | Передача команды ($XX) и загрузка слова в микросхему. | ACC=?? |
|