Ситуация следующая: есть микросхема (подробности о ней давать не буду), используемая для сигнализации. К ней подключается сотовый телефон. На плате имеются клеммные колодки: (+-) и 4 шлейфа, к которым подключаются датчики (датчик движения, открытия двери...и т.п.) при размыкании контакта от шлейфа, телефон отправляет смс на номер, забитый в симке. Это техническая сторона вопроса. Теперь о главном - на плате имеется контроллер, в который заливается прошивка. Глюки начались следующие: при постановке на охрану номера телефона приходит смс о тревоге на последнем из замкнутых шлейфов, хотя все шлейфы в норме. если ставлю 4 шлейфа - о четвертом, 3 - о третьем и т.п. проверял на арзных платах - дело в прошивке. прошивка на ассемблере. если кто сможет помочь - напишите плиз...скину саму прошивку, может что подправите. Очень надеюсь на вашу помощь.
как вариант проверить цикл опроса датчиков. т.е. ошибка может быть в условии провекри кол-ва датчиков. Тут зависит от последовательности их номеров. Но всё равно гдето ты привышаеш это значения на 1. ищи места cmp *,кол-во датчиков и далее команду j* там может быть условие типа jne - не равно, je - равно. А также меньше или меньше или равно. Вот в этом условии скорее всего и ошибка.
ну или порядок нумерации с 0 или с 1 неверный. т.е. логика ошибки такого цикла - провекра датчика следующего за последним. А так как его не существует то тут и срабатывает тревога типа поломка датчика или чтото типа того. Ты для теста попробуй сделать разрыв на 1-м датчике и поглядеть какой датчик сработал.
немного уточню...ложная тревога срабатывает только при первой постановке на охрану...если поставить, принять смс с тревогой, снова снять и поставить - все работает как часы )) а при первой постановке, когда уже пришло смс, потом можно хоть замыкать, хоть размыкать...хоть матом кричать - результата не будет никакого (