Перейти к содержанию
    

Как правильно назвать переменную в ОЗУ - копию внешнего устройства?

Например, есть микросхема - последовательный регистр - для управления чем надо. И в ОЗУ микроконтроллера хранится копия содержимого этого регистра, в которой модифицируются некоторые биты и затем эта копия посылается в регистр. Как правильнее назвать эту копию? Я называю буфер, но не нравится. Нет ли чего красивее и правильнее?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, ViKo said:

Например, есть микросхема - последовательный регистр - для управления чем надо. И в ОЗУ микроконтроллера хранится копия содержимого этого регистра, в которой модифицируются некоторые биты и затем эта копия посылается в регистр. Как правильнее назвать эту копию? Я называю буфер, но не нравится. Нет ли чего красивее и правильнее?

Я бы в название добавил "теневой": shadow_buffer, shadow_reg, shadow_copy etc.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я в таких случаях называю переменную прям как регистр, поэтому либо, например, ShiftReg, ExtRegValue, либо названием микросхемы. Но это если в ней реально пару регистров. Хотя я и некоторые устройства, типа RTC, обволакиваю во что-то подобное:

typedef struct
{
  char Year;
  char Month;
  char Day;
  
  char Hours;
  char Minutes;
  char Seconds;
}TRTC, TDS3232;

...
TRTC RTC;
I2C_ReadData(&RTC, sizeof(RTC)); // что-нибудь подобное, чтобы заполнить структуру

// или же
TDS3232 DS3232; // или TRTC DS3232

Чисто чтобы смысл сразу был понятен...

Поэтому, если это чисто внешний регистр - назовите ExtRegVal (хотя я пишу полно - ExternalRegisterValue).

 

P.S. Перфекционист детектед =)

Изменено пользователем Arlleex

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

27 минут назад, Tanya сказал:

nEW_какой-то там регистр_VALUE 

Тогда уж nEw_КаКоЙ-тО тАм РеГиСтР_VaLuE :biggrin:

Моё предложение: mySuperRegisterCachedValue

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вариант с shadow мне нравится больше, т.к. предельно прямо описывает назначение.

Имхо, cache содержит намек на некое ускорение, new наоборот предельно общее слово, за которым может быть спрятан хоть ад и погибель.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, ViKo сказал:

 И в ОЗУ микроконтроллера хранится копия содержимого этого регистра, в которой модифицируются некоторые биты и затем эта копия посылается в регистр. Как правильнее назвать эту копию?

По смыслу Value_RAM, Value_REG

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В одном из устройств есть 8-мь 8-ми битных внешних сдвиговых регистра включенных последовательно.

4 на ввод и 4 на вывод.

Так и поназывал : RG_IN0...3 и RG_OUT0..3

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Cached - не нравится. Это подходит для откуда-то прочитанного значения. Здесь же обратное действие. Хотя, возможны и обратные - прочитать и хранить значение из внешнего устройства. 

Val - ничего не говорит о способе его получения. В принципе, все переменные имеют Value. 

Добавить к имени Shade, так думаю. Или Image. Или... что? Непременно в конец к имени регистра, поскольку его имя несет функциональное назначение, к примеру, SerDac (пардон) SerialDac.

Или не выпендриваться, приписывать, как писал, Buf? SerDacBuf SerialDacBuf. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 минут назад, ViKo сказал:

Cached - не нравится. Это подходит для откуда-то прочитанного значения. 

Предлагаю объявить конкурс на лучшее название. C призовым фондом!  :dance4:

Моя заявка на конкурс: mirror   :yess:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

MutTempReg (Mutable Temporary Register) - временный регистр, который может изменяться косвенно =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я предполагал, по моему вопросу есть общепринятый термин. Это же распространенная ситуация. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, ViKo said:

Я предполагал, по моему вопросу есть общепринятый термин. Это же распространенная ситуация. 

Придумывание имен - главная работа программиста. Весь ООП есть борьба с дефицитом имен. 
Стандартный путь будет создать контекстное окружение чтобы дать самое простое имя. Например R или reg или mask.
А вот окружение (структура, класс, модуль, пространство имен ...) должно именоваться так чтобы однозначно понимать имена всех вложенных простых переменных. 
А рядом с объявлением  переменной должен стоять толковый комментарий, чтобы всплывающая подсказка сразу его показывала. 
Так хорошая экономия имен получается.
И не надо держать большой лексикон, а то это напрягает. 

Кстати я даю регистрам всегда имена, как они написаны в документации. Они там часто из прописных букв, тогда их копии пишу строчными. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...