Прошу помощи с кодом для pic12f629
Прошу помощи с кодом для pic12f629
Доброго всем времени суток! Микроконтроллерами начал заниматься недавно! Поэтому ее не все понятно! Суть проблеммы в том, что мне дали задание разработать устройство на 12f629, которое бы с выхода GP1 излучало 2 раза в минуту импульс длительностью 5 мс который проиходил бы на вход GP3. Также на этоту цепь подключается ключ с выходом на землю (В схеме в протеусе все видно). Если ключ активирован и на вход GP3 приходит 0, то с выхода GP2 подается питание на 5 мин, после истечения времени, необходимо проверить, приходит ли на GP3 сигнал или нет, если нет, то подаем питание еще на 5 мин и т.д. Я набросал что смог своими силами, но только в моем коде GP1 излучает постоянно, а необходимо сделать импульс 5 мс с периодои 2 раза в минуту. Пробовал это делать при помощи задержки delay_ms(5), но не получилось, так как при любом приходе 0 на GP3, на GP2 подается питание, даже при разомкнутом ключе, а необходимо, чтобы питание подавалось только при замыкании ключа! Надеюсь проблему изъяснил понятно!
Прикрепляю файлы с исходником и протеусом.
Заранее благодарен!
Прикрепляю файлы с исходником и протеусом.
Заранее благодарен!
- Вложения
-
- 12f629.rar
- Исходник и протеус
- (11.61 КБ) 211 скачиваний
Re: Прошу помощи с кодом для pic12f629
мне дали задание
интересно кто дал?
Описание про GP не соответствует схеме.
И где НЕХ файл?
Re: Прошу помощи с кодом для pic12f629
pyzhman ловко вы стрелку перевели. Soir это ваш подчинёный?
Re: Прошу помощи с кодом для pic12f629
Извиняюсь, со схемай напутал! Вот нормальная схема и HEX файл!
- Вложения
-
- 12f629_new.rar
- (12.42 КБ) 221 скачивание
Re: Прошу помощи с кодом для pic12f629
Раз меня втянули в эту тему...
1. В архиве отсутствует файл Cheff1.h.
Не все ясно в ТЗ.
2. GP1 должен выдавать импульс длительностью 5 мс, а Вы в защите от дребезга задаете интервал 30 мс.
3. Должна ли программа отслеживать состояние кнопки во время отсчета 5 минут (в течении времени подачи питания на GP2) и сбрасывать таймер 5 минут на начало отсчета? Или проверка ведется только после завершения этого отсчета?
4. Не знаю в какой среде Вы пишете, но 5 минут я в коде не вижу (delay_ms(5000) - это 5 сек). Да и два раза в минуту тоже не видно.
5. В ТЗ речь идет установить высокий уровень на GP2 на 5 минут, зачем его через delay_ms(5000) устанавливать на то же время в низкий?
--------
Впечатление такое, что программа явно не к этому ТЗ. Да и как-то дата создания файлов наводит на подозрение, что Вы вообще ничего и не пытались делать сами, а взяли где-то что-то похожее...
1. В архиве отсутствует файл Cheff1.h.
Не все ясно в ТЗ.
2. GP1 должен выдавать импульс длительностью 5 мс, а Вы в защите от дребезга задаете интервал 30 мс.
3. Должна ли программа отслеживать состояние кнопки во время отсчета 5 минут (в течении времени подачи питания на GP2) и сбрасывать таймер 5 минут на начало отсчета? Или проверка ведется только после завершения этого отсчета?
4. Не знаю в какой среде Вы пишете, но 5 минут я в коде не вижу (delay_ms(5000) - это 5 сек). Да и два раза в минуту тоже не видно.
5. В ТЗ речь идет установить высокий уровень на GP2 на 5 минут, зачем его через delay_ms(5000) устанавливать на то же время в низкий?
--------
Впечатление такое, что программа явно не к этому ТЗ. Да и как-то дата создания файлов наводит на подозрение, что Вы вообще ничего и не пытались делать сами, а взяли где-то что-то похожее...
Re: Прошу помощи с кодом для pic12f629
Выкладываю все необходимые файлы!
Учел ваши замечания, немного изменил код! Если неправильно, надеюсь на вашу помощь!
Проверка состояния кнопки должно осуществляться только после истечения 5 мин.
Код я писал самостоятельно, а что касается времени создания файлов, то у меня просто напросто были сбиты часы на компьютере, и благодаря вашему замечанию я заметил это и исправил!:)
Учел ваши замечания, немного изменил код! Если неправильно, надеюсь на вашу помощь!
Проверка состояния кнопки должно осуществляться только после истечения 5 мин.
Код я писал самостоятельно, а что касается времени создания файлов, то у меня просто напросто были сбиты часы на компьютере, и благодаря вашему замечанию я заметил это и исправил!:)
- Вложения
-
- Cheff.rar
- (19.9 КБ) 199 скачиваний
Re: Прошу помощи с кодом для pic12f629
Пользуюсь другим компилятором, поэтом не могу полностью написать и проверить работу. Но примерно, дорабатывая Ваш код (я бы изначально делал иначе), смотрите вложение файл Cheff2.c. Проверьте синтаксис, писал в блокноте, может в Вашем компиляторе по-другому должно выглядеть...
Для MPLAB + HI-TECH проект со всеми файлами в папке Cheff_my в том же вложении.
Для MPLAB + HI-TECH проект со всеми файлами в папке Cheff_my в том же вложении.
- Вложения
-
- Cheff2.zip
- (59.75 КБ) 221 скачивание
Re: Прошу помощи с кодом для pic12f629
Спасибо большое! Очень помогли, все работает прекрасно! я честно говоря даже не знал о существовании такой команды как was_press_key!;)
Re: Прошу помощи с кодом для pic12f629
Weis89 писал(а):...я честно говоря даже не знал о существовании такой команды как was_press_key!;)
Я, кстати, тоже не знаю такой команды, ее попросту нет. Это произвольно взятое имя для бита. С таким же успехом можно было окрестить бит: Weis89_nazhal_na_knopku