neosee.ru

19.10.18
[1]
переходы:103

скачать файл
Эта строка объявляет переменную строкового типа

Команды и директивы компилятора PROTON Clear


Пример 2

Dim ST As STRING * 50 ' Очистить всю область оперативной памяти (все переменные)


Эта строка объявляет переменную строкового типа.


Листинг программы clear.bas

Display: ; Метка начала подпрограммы Display

Print At 4, 0, "V1= ", BIN8 V1, " "

Print At 5, 0, "V2= ", BIN8 V2

Print At 6, 0, "V3= ", DEC6 V3


После значения переменной V1 оставлено свободное место (пустые кавычки). Наверное, это не обязательно делать?



Команды и директивы компилятора PROTON ClearBit


Замечание


«Сушествуют много …» - существует.



Команды и директивы компилятора PROTON Org


Symbol Address = 2000

Org Address + 1 ' Установить адрес обращения 2001

CData 120 , 243 , "Hello" ' Данные располагаются в памяти начиная с адреса 2001


CData надо выделить жирным шрифтом, а "Hello" - зеленым цветом.



Команды и директивы компилятора PROTON Device


«Команда Device должна быть первой командой, в тексте программы.» - запятая здесь не нужна.



Команды и директивы компилятора PROTON DTMFOut


Замечание


«Чистый DTMF сигнал должен быть аналогым сигналом ...» - аналоговым.








Команды и директивы компилятора PROTON ERead


Замечание

VAR3.LowByte = ERead 3 ' считать значение младшего байта в 8 бит из переменной

‘VAR3 расположенной по адрему 3 (адресу)


Этой командой считывается значение младшего байта слова, расположенного в EEPROM, начиная с адреса 3. А если это замечание относится к примеру 1, то правильнее, наверное, было бы написать так:


VAR2.LowByte = ERead 1


В мануале на Протон (Manual Ver 3_46) замечание к этой команде выглядит несколько по-другому.

Example

Device 16F84 ' A PICmicro with on-board eeprom

Dim Var1 as Byte

Dim Wrd1 as Word

Dim Dwrd1 as Dword

Edata 10, 354, 123456789 ' Place some data into the eeprom

Var1 = Eread 0 ' Read the 8-bit value from address 0

Wrd1= Eread 1 ' Read the 16-bit value from address 1

Dwrd1 = Eread 3 ' Read the 32-bit value from address 3

Notes

If a Float, or Dword type variable is used as the assignment variable, then 4-bytes will be read

from the eeprom. Similarly, if a Word type variable is used as the assignment variable, then a

16-bit value (2-bytes)will be read from eeprom, and if a Byte type variable is used, then 8-bits

will be read. To read an 8-bit value while using a Word sized variable, use the LowByte modi-

fier: -

Wrd1.LowByte = Eread 0 ' Read an 8-bit value

Wrd1.HighByte = 0 ' Clear the high byte of Wrd1


И если рассмотреть его, то и смысл этого замечания немного отличается от предложенного Вами перевода. В оригинале они записывают в младший байт переменной типа WORD значение типа BYTE из EEPROM, а старший байт переменной типа WORD обнуляют. А о возможности считывать из EEPROM части 2-х байтного числа я что-то ничего не обнаружил. Возможно, это результат практического использования этой команды в Ваших программах и Вы знаете о ней какие-то нюансы, о которых не написано в мануале. Хотелось бы услышать Ваше мнение об этом.

скачать файл | источник
просмотреть