БАНо
3ий канал с последовательным изменением не совсем удобен 😦
отчего?
Использованный контроллер имеет все порты с функцией прерывания по изменению состояния.
уточните, какая микросхема необходима?
отчего?
потому что когда нужно включить например фары нужно будет пройти через поворотки стопы сирену и т.д - то что включать как раз не нужно…
То есть поехали, нажали кнопку 3-го канала вверх один раз - включились габариты + работа стопов (про поворотники пока думаю, нужны ли).
нажали опять - стал работать дальний свет при подаче газа например на 10-20%.
нажали опять - к этому всему включилась мигалка.
я ж написал.
всего 3 нажатия
Самым лучшим по отношению цена\качество - атмега48. Все порты могут быть отслежены по прерываниям. 3 таймера на борту. В общем есть где разгуляться и стОит она меньше чем какая-нибудь аттини.
можете организовать хоть 6 каналов. Просто в прерываниях устанавливайте программные флаги, а основном теле анализируйте и распределяйте. Одним таймером измерять длительности всех каналов можно, они ведь идут последовательно, не перекрываясь.
Первые 2 канала понятны. С третьим как-то сложно. На аппе нет случайно 3-х поциционного тумблера?
Для танка пользую турниджи9х, рассовал по каналам на сколько хватило.
На аппе нет случайно 3-х поциционного тумблера
есть в виде кнопки. жмешь - положение меняется. от 2-х до 200 положений
я ж написал.
всего 3 нажатия
ну тогда вперед!
контроллер уже посоветовали, в принципе для вашей цели пойдут многие…
скорее всего лучше будет использовать кварц для задания частоты.
для программирования можно попробовать как Си так и асм…
для Асма инициализация примерно такая
.include "2313def.inc" ;=== мой проект использовал tiny2313
; ---------------------------------------------------------------------------------------
; Константы
.equ LICHT = 1 ; бит порта к которому подключен светодиод
.equ LPORT = PORTB ; порт к которому подключен светодиод
; ---------------------------------------------------------------------------------------
; Переменные
.DSEG
READY: .DB 1 ; признак готовности работать
PHASE: .DB 1 ; фаза ожидаемого сигнала
CH_DIV: .DB 2 ; значение коррекции длительности
.CSEG
.ORG 0
RJMP START
.ORG INT1addr ; прерывание захвата каналов с приемника
RJMP IRQ_INT1 ; файл irq_int1.asm
;----------------------------------------------------------------------------------------
START: ; главный вызов, инициализация
CLI
LDI R16 , RAMEND ; установка стека
OUT SPL , R16
; конфигурация портов ввода-вывода
LDI R16 , 0
OUT DDRD , R16 ; все линии на вход
OUT PORTD , R16 ; подтяжки нет
LDI R16 , 0b11110010
OUT DDRB , R16 ; пины портов на выход
LDI R16 , 0b00000000 ;
OUT PORTB , R16 ; выведем на все линии ноль
; инициализация переменных
LDI R16 , 0x00 ; признак failsave
STS READY , R16
; инициализация модуля захвата по входу INT1
LDI R16 , 0x01 ; ожидаемая фаза сигнала - "фронт"
STS PHASE , R16
LDI R16 , (1<<ISC11)|(1<<ISC10) ; прерывание по фронту импульса
OUT MCUCR , R16 ;
LDI R16 , (1<<INT1) ; разрешение прерываний по int_1
OUT GIMSK , R16 ;
SEI ; разрешим прерывания
MAINLOOP:
;
;=== сюда нужно будет воткнуть обработчики по захваченным каналам
;
; этот код будет работать в цикле.
;
RJMP MAINLOOP
.include "irq_int1.asm" ; прерывание захвата (в другом файлике сохранено)
соответственно прерывание осуществляющее захват можно сделать из этого:
; файл irq_int1.asm прерывание захвата каналов
;-------------------------------------------------------------------------
;
; ЗАХВАТ КАНАЛОВ С ПРИЕМНИКА
;
;-------------------------------------------------------------------------
IRQ_INT1: ; прерывание по входу INT1
IN ZL , TCNT1L ; прочитаем значение счетчика
IN ZH , TCNT1H
LDI R16 , 0 ; сбросим счетчик для счета с нуля
OUT TCNT1H , R16
OUT TCNT1L , R16
LDS R16 , PHASE ; берем ожидаемую фазу сигнала
CPI R16 , 1 ; фаза "фронт" ?
BRNE REQ_INT1_SAVE_CH ; получили спад!
; у нас получен фронт импульса
LDI R16 , 0 ; ставим флаг ожидания спада
STS PHASE , R16 ;
LDI R16 , (1<<ISC11)|(0<<ISC10) ; прерывание по спаду импульса
OUT MCUCR , R16 ;
RJMP IRQ_INT1_EXIT ; выходим
REQ_INT1_SAVE_CH: ; получили спад
; нужно сохранить длительность канального импульса
; в Z длительность захваченного импульса, нужно его проанализировать для полного счастья
; по идее сохранить куда нить в память чтобы потом анализировать его длительность в цикле
; MAINLOOP
IRQ_INT1_EXIT:
RETI
правил прямо здесь (поэтому нужно будет еще раз внимательно пересмотреть алгоритм), но думаю что основная идея понятна… осталось только добавить вашу логику работы 😃
p.s. здесь только для int1 входа на прерывание (от одного канала), второй аналогичен
Подскажите пожалуйста хочу собрать огоньки с этого сайта www.homepages.paradise.net.nz/…/navlights.html есть программатор extra pic и микроконтроллер pic12а629
при програмированнии м.к. программа icprog пишет еrror
фаил на этом сайте который называется я сохраняю как txt. вставляю в icprog и нажимаю прошить м.к.
Source code (PIC12C508/9 or 12F630/75)
Подскажите пожалуйста хочу собрать огоньки с этого сайта www.homepages.paradise.net.nz/…/navlights.html есть программатор extra pic и микроконтроллер pic12а629
при програмированнии м.к. программа icprog пишет еrror
фаил на этом сайте который называется я сохраняю как txt. вставляю в icprog и нажимаю прошить м.к.
Source code (PIC12C508/9 or 12F630/75)
Подскажите пожалуйста хочу собрать огоньки с этого сайта www.homepages.paradise.net.nz...navlights.html есть программатор extra pic и микроконтроллер pic12а629
при програмированнии м.к. программа icprog пишет еrror
фаил на этом сайте который называется я сохраняю как txt. вставляю в icprog и нажимаю прошить м.к.
Source code (PIC12C508/9 or 12F630/75)
Спасибо с прогромматором я разобрался но коректно прошить 12f629 пока не удалось где-то на просторах интернета вчера нашел что extra pic 12f629 прошивает корректно только первый раз хотя пробовал перепрошивать 16f628 все работает
Да я это знаю купил несколько 12f629 попробовал потренероваца скачал несколько небольших светодеодных схем с прошивками все работает 😃
стирается прошивается снова без проблем просто я не силен в програмировании
и не пойму что такое source code на этом саите
www.homepages.paradise.net.nz/…/navlights.html
я сохранил HEX file (PIC12F675) как txt фаил хотя написано pic12f675 а на схеме 12f679 не поиму
короче он прошивается и работает не корректно не понять как один светодиод горит второй мигает после включения аппаратуры начинают гореть еще три что не так 😵
вот эта схема тоже классная
tomsha.com/shop/product_info.php?products_id=76&os…
для модели но платная кто бы помог с прошивкой
не пойму что такое source code на этом саите
Это исходник в ассемблере
Алексей а как его скомпелировать под pic 12f629
там на сайте лежит один hex но я так понимаю что он под другой контроллер
Не силен я в программировании, но вот здесь понятно как и чем radiokot.ru/start/mcu_fpga/avr/02/
спасибо будем читать
вот эта схема тоже классная
tomsha.com/shop/product_info.php?products_id=76&os…
для модели но платная кто бы помог с прошивкой
Собрал всю инфу с сайта и накидал свою прошивку за 30 минут на сей девайс,
пробуйте…😉
Мож кто спасиб скажет:)
Собрал всю инфу с сайта и накидал свою прошивку за 30 минут на сей девайс,
пробуйте…😉
Мож кто спасиб скажет:)
Вложения miggalka.zip (406.9 Кб, Просмотров: 5)
большое спасибо Сеня сегодня вечером попробую собрать и завтра отпишусь
а можно схемку получьше а то листике непонятно
А есть у кого-нибудь вариант который предложил Gintas??? Можете выложить?
Собрал всю инфу с сайта и накидал свою прошивку за 30 минут на сей девайс,
пробуйте…😉
Мож кто спасиб скажет:)
Можно схему четче нарисовать а то не понятно
Добрый день всем участникам данной ветки. Недавно наткнулся на нее и взяв за основу БАНО Марка Антония из сообщения 282 rcopen.com/forum/f8/topic144500/282 сделал под свои нужды.
Работают повороты, габариты, стопы, фары.
1 канал - подключается к каналу руля;
2 канал - подключается к каналу газа.
Столкнулся с двумя проблемами:
- Не могу придумать алгоритм реализации фонаря заднего хода (курок от себя ->нейтраль ->курок от себя)
- При одновременном подключении двух каналов происходит их влияние друг на друга (например при повороте руля влево и езде вперед - промаргивают стопы с периодичностью поворотов, хотя должны светить только фары и габариты). Каналы по отдельности работают как надо и повороты и приборы освещения.
Выкладываю алгоритм в Algorithm Builder, и собранную схему в Proteus.
Может кто подскажет в чем дело?
Забыл указать. Смотрел каналы осцилографом: Период 10 милисекунд, сигнал от 1 до 2 милисекунд.