
Oтново борба с LCD и асемблер.
Дисплея е Ampire АC162BY1, свързан е с pic16f913 по 4 битов интерфейс, ето снимка от протеуса:
Инициализира се, работи си, единствения и дразнещ проблем който искам да отстраня е следния:
след ресет се инициализира и работи само първия ред. Протеус извежда грешка че дисплея получава данни когато е зает.
При спиране и пускане на захранването диспеля си тръгва нормално. Това се получава само при ресет. При симулацията след първия ресет се инициализира само първия ред, след втория ресет се инициализра правилно и двата реда, след третия ресет пак само първия ред и така се редува.
На платката обаче винаги след ресет се инициализара само първия.
Пробвах да не ползвам RW и да го вържа към маса, увеличавах времезакъснение, по няколко пъти виках инициализация

, проверявах флаг зает (тука на симулацията дисплея пали а на платката не, но пак ресета е проблемен). Не става и не става.
Често ползвам този дисплей, при програмките на С всичко е точно. На асемблера ми прави мизерии.
Ето подпрограмките за инициализация, изпращане на команда и символи:
Дали ресета ще е от пина, или той ще е забранен от конфигурационните битове и ще ресетва стражевия примерно, пак си я прави тази мизерия.
