Помогите разобраться новичку
|
dimitriy-bc |
Дата: Сб, 19.01.2013, 15:47 | Сообщение # 31 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
200
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
G2212, здравствуйте. Я рад, что наши совместные усилия дали положительный результат. Если Вам не сложно покажите, что у Вас получилось на выходе.
|
|
|
|
|
G2212 |
Дата: Сб, 19.01.2013, 17:25 | Сообщение # 32 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
Цитата (dimitriy-bc) G2212, здравствуйте. Я рад, что наши совместные усилия дали положительный результат. Если Вам не сложно покажите, что у Вас получилось на выходе. dimitriy-bc, здравстуйте. Вот что получилось. Такой сигнал и хотел получить. Теперь нужно осталось немного подправить и можно прошивать камень.
|
|
|
|
|
G2212 |
Дата: Сб, 19.01.2013, 17:33 | Сообщение # 33 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
Цитата (dimitriy-bc) G2212, здравствуйте. Я рад, что наши совместные усилия дали положительный результат. Если Вам не сложно покажите, что у Вас получилосьна выходе. Чтобы прошивка подходила на 100% нужно сделать несколько добавлений. 1. Процессор в оригинале PIC16F73 и частота кварца не 4мГц а 3.58 Мгц. Попробовал поставить PIC16F73 напрямую, но в идет ошибка в блоке компараторов. Пытался найти информацию, но пока не нашел. Если не сложно посмотрите. Думаю название регистров не совпадают, поэтому компилятор "ругается" Еще раз спасибо.
Сообщение отредактировал
G2212 - Сб, 19.01.2013, 17:34
|
|
|
|
|
dimitriy-bc |
Дата: Вс, 20.01.2013, 00:39 | Сообщение # 34 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
200
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
G2212, здравствуйте. Протон, очень умная штука. После MPLAB, я на него не нарадуюсь. Ругается Протон правильно, в PIC16F73 блок компараторов отсутствует. Поэтому, просто удалите три строчки. '------------------модуль компараторов----------------------------- CMCON = %00000111 CVRCON = 0
По поводу кварца. Если я не ошибаюсь, впишите нужное Вам значение, а Протон сам все пересчитает. Xtal = 3.58 ' Частота осциллятора 3,58 МГц И еще, по даташит, у PIC16F73 АЦП 8 бит.
Сообщение отредактировал
dimitriy-bc - Вс, 20.01.2013, 01:26
|
|
|
|
|
G2212 |
Дата: Вс, 20.01.2013, 15:23 | Сообщение # 35 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
Цитата (dimitriy-bc) И еще, по даташит, у PIC16F73 АЦП 8 бит.
Не сразу но получилось. Еще раз спасибо.
Сообщение отредактировал
G2212 - Вс, 20.01.2013, 15:24
|
|
|
|
|
dimitriy-bc |
Дата: Вс, 20.01.2013, 22:23 | Сообщение # 36 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
200
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
G2212, удачи!!!
|
|
|
|
|
G2212 |
Дата: Вт, 05.02.2013, 16:32 | Сообщение # 37 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
dimitriy-bc еще раз спасибо, программу отладил вот результат на форуме по металлодетекторам http://www.md4u.ru/viewtopic.php?f=25&t=8011&start=225
Сообщение отредактировал
G2212 - Ср, 06.02.2013, 09:32
|
|
|
|
|
dimitriy-bc |
Дата: Вт, 05.02.2013, 21:40 | Сообщение # 38 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
200
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
G2212, здравствуйте. Если не ошибаюсь, то у 876 больше память. Если 876А и 873А, то с компараторами.
|
|
|
|
|
G2212 |
Дата: Вт, 05.02.2013, 21:46 | Сообщение # 39 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
Цитата (dimitriy-bc) Если не ошибаюсь, то у 876 больше память. Если 876А и 873А, то с компараторами Да, вы правы. Но програмка маленькая даже 73 "за глаза" хватает.
|
|
|
|
|
G2212 |
Дата: Вт, 05.02.2013, 22:02 | Сообщение # 40 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
С этим "проектом" разобрался ( сделал несколько вариантов для разных процессоров и немного изменил код под себя) в выходные буду пробовать в железе. Я сейчас пытаюсь сделать новую работу . Не могли бы помочь несколько дней пытаюсь решить задачу: нужно отлавливать срабатывание датчиков. Нужно получить сигнал если датчик сработает больше 1-го раза. (т.е. мимо лучевого датчика прошло 2 или более человек.) Подскажите как можно решить эту задачу. Файл Протеуса.
|
|
|
|
|
retas |
Дата: Вт, 05.02.2013, 22:48 | Сообщение # 41 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
468
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
G2212! 1. При сработке датчика запускайте таймер (ну сколько времени ждать второго срабатывания). 2. Если в заданное время сработки небыло, делаете "таймер=0" 3. При любом срабатывании проверять можно состояние таймера - если он больше "0", значит получено второе срабатывание. 4. Удалите точку в конце вашей ссылки http://www.md4u.ru/viewtopic.php?f=25&t=8011&start=225.
|
|
|
|
|
G2212 |
Дата: Ср, 06.02.2013, 09:44 | Сообщение # 42 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
Спасибо. Попробую разобраться с таймерами (пока мало опыта , второй месяц как начал изучать РBР и Протон). Время срабатывания думаю нужно выбрать 30 сек. Есть еще условие - если в режимное помещение дверь открыта больше 30 сек, то тоже должна сработать тревога.
Сообщение отредактировал
G2212 - Ср, 06.02.2013, 17:38
|
|
|
|
|
retas |
Дата: Ср, 06.02.2013, 15:05 | Сообщение # 43 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
468
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
1. Смотрите (и делайте) на таймер как на счетчик - велите ему когда надо подсчитывать, скажем, переполнения TMR0 через прерывания. 2. На дверь уделите другой таймер-счетчик.
|
|
|
|
|
G2212 |
Дата: Ср, 06.02.2013, 17:45 | Сообщение # 44 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
37
Замечания:
±
На сайте с 06.11.2012
Статус:
Offline
|
А нельзя просто посчитать количество входящих импульсов с помощью COUNTR по каждому входу, и если больше или равно 2, то включить сирену? Пробовал реализовать такой вариант, но цикл не получился. Если по какому-то каналу меньше 2 и или проходил сброс - программа не начинала считать с "0".
|
|
|
|
|
dimitriy-bc |
Дата: Ср, 06.02.2013, 20:21 | Сообщение # 45 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
200
Замечания:
±
На сайте с 19.03.2012
Статус:
Offline
|
G2212, здравствуйте. Набросал программку по алгоритму Цитата (G2212) Нужно получить сигнал если датчик сработает больше 1-го раза. (т.е. мимо лучевого датчика прошло 2 или более человек.) Подскажите как можно решить эту задачу. плюс, по комментариям в программе. Для отсчета времени, можно в участок программы, дверь открыта, вставить переменную и добавлять или вычитать единичку. Также можно использовать таймер0 и, или таймер1. Если использовать их пред делители, то задержку можно получить колоссальную.
Сообщение отредактировал
dimitriy-bc - Ср, 06.02.2013, 20:25
|
|
|
|