PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Разработка устройств (http://pccar.ru/forumdisplay.php?f=18)
-   -   Хитрое реле включения. Нужна помоЩь! (http://pccar.ru/showthread.php?t=1715)

mcf1 13.02.2007 01:27

пока не переделал, но пробывал в эту цепь засовывал один элемент от 561ой, те же яйца только в профиль
у меня возникает подозрение счетчик погорел от эксперементов

Beer100 13.02.2007 01:36

В 561 микрухе элемент не инвертирует!!!! А тебе надо инвертировать выход счетчика!!!! Сделай как я нарисовал.

Beer100 13.02.2007 01:39

как сгорела? А если 2 и 3 ноги отключить от 11, как ты делал, то работает?

mcf1 13.02.2007 01:45

утром буду пробывать:bye:

_SDY_ 13.02.2007 07:04

Вложений: 1
Цитата:

Сообщение от Beer100 (Сообщение 17892)
...Во втором варианте ты добавил триггер, но почему-то не заметил, что этот триггер у меня уже стоит, только я его взял в счетчике ИЕ5, он там незадействован. Зачем добавлять новую микруху? :dntknw:

А я новых микросхем и не добавлял... Там тоже три микросхемы. Только вместо ЛА3 у меня ЛЕ1. Кстати, судя по внутренней архитектуре ИЕ5 (я не знал как там внутри, думал - это просто счетчик, а тут как бы два счетчика) надо мою схему переделать (рисунок ниже).
Кстати, для гарантированного формирования импульса по спаду можно добавить два резистора R2 и R3. Если R1 - 1K, то R2 - 2K, R3 - 1K (вроде бы так). Тогда вход - 12В.

_SDY_ 13.02.2007 07:16

А есть еще один вариант (на современной элементной базе :-))). Один корпус ATTiny11 или ATTiny12.
Это - исходник прошивки:

8<----8<----8<----8<----8<----8<----8<----8<----

.include "TN11DEF.INC" ; include chip definition
;------------------------------
.def temp1=r16
.def temp2=r17
.def temp3=r18
.def PulseFlag=r19
.def Counter=r20
;------------------------------
rjmp RESET ; Reset Handle
rjmp INT0VECT ; External Interrupt0 Vector Address
rjmp NOVECT ; Pin change Interrupt Vector Address
rjmp OVF0VECT ; Overflow0 Interrupt Vector Address
rjmp NOVECT ; (EEPROM ready Interrupt Vector Address ATTiny12) Analog Comparator Interrupt Vector Address ATTiny11
rjmp NOVECT ; Analog Comparator Interrupt Vector Address ATTiny12
;------------------------------
RESET:
; init timer
ldi temp1, (1< out TCCR0, temp1
ldi temp1, (1< out TIMSK, temp1
; init int0
ldi temp1, (1< out GIMSK, temp1
ldi temp1, (1< out MCUCR, temp1
; init ports
ldi temp1, (1< out DDRB, temp1
; init val
ldi PulseFlag, 0
ldi Counter, 4
; enable interrupts
sei
;------------------------------
MAIN:
rjmp MAIN
;------------------------------
OVF0VECT:
in temp1, SREG ; Store the Status register in reg temp1
dec Counter
brne EX_OVF0VECT
ldi Counter, 4
; here's approx 1sec delay

tst PulseFlag
breq CLRPINB0
dec PulseFlag
mov temp3, PulseFlag
andi temp3, 1
breq CLRPINB0
sbi PORTB, PINB0
rjmp EX_OVF0VECT
CLRPINB0:
cbi PORTB, PINB0

EX_OVF0VECT:
out SREG, temp1 ; Restore Status register
reti
;------------------------------
INT0VECT:
in temp2, SREG ; Store the Status register in reg temp2

tst PulseFlag
brne EX_INT0VECT
ldi PulseFlag, 4

EX_INT0VECT:
out SREG, temp2 ; Restore Status register
reti
;------------------------------
NOVECT:
reti

8<----8<----8<----8<----8<----8<----8<----8<----

4-я нога - земля, 8-я нога - питание, на 6-ю ногу через резисторный делитель подать сигнал вкл/выкл заднего хода, с 5-й ноги снимать импульсы.

Итого - 3 детали :-) два резистора, одна микросхема (всего о восьми ногах), а не куча логики.

mcf1 13.02.2007 09:06

Цитата:

Сообщение от _SDY_ (Сообщение 17942)
А есть еще один вариант (на современной элементной базе :-))). Один корпус ATTiny11 или ATTiny12.

круто
программу сам написал?
где взять программатор?:dntknw:

_SDY_ 13.02.2007 09:24

Вложений: 1
Там писать нечего. ;-)
Программатор на COM порт:

_SDY_ 13.02.2007 09:30

Вложений: 1
Но, сначала исходник надо скомпилировать. Я использовал VMLAB.
Потом уже заливать объектный код в микроконтроллер. Я использую программу uniprof.

Здесь уже готовый для заливки скомпилированный объектный код:

mcf1 13.02.2007 14:11

а в программе можно будет подправить длинну импульсов и длительность паузы между ними?


Часовой пояс GMT +4, время: 02:18.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot