?

Log in

No account? Create an account
  Journal   Friends   Calendar   User Info   Memories
 

Электронный миссионер

19th June, 2012. 5:55 pm. Листая старю тетрадь

расстрелянного генерала разбирая свой код, который писал пол года назад. Небольшой опус.

Много хороших советов по хорошему стилю программирования водится в интернетах, так же несколько хороших уроков преподал мне камрад maddev , за что ему отдельное большое спасибо. Единственное, что я не следую его совету не использовать глобальные переменные, ибо не знаю как от них отказаться. Ведь флаги нужны, а без них никуда.

В общем, тоже дам один. Ковыряю тут свой код, примерно как ребёнок ковыряет говно палочкой. И вижу там такую конструкцию:
...
//Тут некоторая мелкая процедурка в коде, например приём символов по UART
if (некое условие)
{
...
//*****************************************************
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!		
PORTA=0xFF; //НИКОГДА ТАК НЕ ДЕЛАТЬ!!!!!!
//*****************************************************
...
} 


Хотел подсветить код, но не нашёл где. Сайт http://tohtml.com/c/ , где я делал это внезапно сломался на этом коде


Это было сделано в момент отладки, чтобы мигать светодиодом. А байт записывается, чтобы не думать на какой ноге порта висит светодиод. Так делать нельзя никогда!!! Лучше сделать во первых дефайн определяющий порт, дефайн определяющий ногу, и менять состояние только ОДНОГО пина!
В результате после написания программы я благополучно забыл об этой адовой конструкции, и уже было собирался переносить код в другой проект, как обнаружил этот капец.

Эта адова конструкция находится только в одном месте программы, и условие выполняется крайне редко. Но если выполнится, то выпадает гора глюков. Что сильно может опечалить оконечного юзверя.

Read 27 Notes -Make Notes

Back A Day - Forward A Day