Представления являются чрезвычайно логическими подобными таблице структурами, заполненными на лету данным запросом. Результаты запроса представления не хранятся нигде на диске, и представление воссоздается каждый раз, когда запрос выполняется. Осуществленные представления являются фактическими структурами, сохраненными в базе данных и записанными в диск. Они обновляются на основе параметров, определенных, когда они создаются.
Это действительно зависит от вашего проекта. Сторожевой таймер помогает гарантировать, что ваша программа не «застрянет» при выполнении кода. - Если есть вероятность, что ваша программа может зависнуть во время процедуры загрузки, имеет смысл включить сторожевой таймер и туда.
При этом я обычно запускаю сторожевой таймер в конце моих процедур загрузки. .
Обычно WD (сторожевой таймер) включается после процедуры загрузки, потому что это происходит, когда программа входит в свой «цикл» и периодически запускает WD. Во время загрузки, под которой, я полагаю, вы подразумеваете линейную инициализацию оборудования и периферийных устройств, в вашем коде гораздо меньше периодичности и сложно вставить цикл запуска WD.
Если вы выполняете отладку, вы хотите ее выключить, иначе устройство перезагрузится на вашем при попытке пошагового выполнения кода. В противном случае решать вам. Я видел, как сторожевые псы сохраняют задницы проектов, и я видел, как сторожевые псы приводят к непреднамеренным циклам перезагрузки, которые заставляют клиентов забивать линии поддержки и, таким образом, обходятся компании в тонну.
Вы звоните.
Производственный код всегда должен включать сторожевой таймер. Хобби и / или проекты-прототипы, очевидно, являются особым случаем, для которого сторожевой таймер может не требоваться.
Если сторожевой таймер включен во время загрузки, существует особый случай, который необходимо учитывать. Стирание и запись в память занимают много времени (стирание всего устройства может занять секунды). Таким образом, вы должны убедиться, что ваши процедуры стирания и записи периодически обслуживают сторожевой таймер, чтобы предотвратить сброс.
Лучше всего, чтобы сторожевой таймер активировался автоматически при включении питания. Если ваше оборудование не предназначено для этого, включите его как можно скорее. Обычно я настраиваю сторожевой таймер на длительное время во время загрузки, но как только я закончил загрузку, я выхожу на короткий перерыв и регулярно обслуживаю сторожевой таймер.
Возможно, вы не всегда сможете сбросить плату, которая зависла после закрытия завода вниз и перезапустите в удаленном месте. Или плата находится в недоступном подвальном помещении, и она не перезагружалась после падения напряжения. Простые методы работы с лабораторией - это не лучшие практики реального мира.
Попытайтесь спроектировать свое оборудование так, чтобы программное обеспечение могло проверять причину сброса при загрузке и сообщать. Если вы получаете тайм-аут сторожевого таймера, вам необходимо знать, потому что это сбой в вашей системе, и его игнорирование может вызвать проблемы позже.
У меня он всегда был включен. В чем преимущество его отключения? Так что, если мне придется сбросить его во время кода загрузки?
Полагаю, меньше переключаемых транзисторов, поэтому мизерная экономия энергии. В зависимости от того, сколько вы спите, на самом деле это может быть большой экономией. Ваш друг может иметь в виду практику выключения WDT, когда вы на самом деле что-то делаете, а затем включения его, когда вы спите. Есть небольшой замечательный момент, который Microchip сообщает о своих PIC :
«Если WDT отключен во время нормальной работы (FWDTEN = 0), то бит SWDTEN (RCON <5>) может использоваться для включите WDT непосредственно перед переходом в спящий режим "