помощь в реализации проекта

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Аватара пользователя
zvykov
Встал на лапы
Сообщения: 86
Зарегистрирован: Чт апр 02, 2009 01:18:09
Откуда: Минск
Контактная информация:

помощь в реализации проекта

Сообщение zvykov »

Доброго времени суток, уважаемые коты!!!!!! Обращаюсь за помощью вот в какой конструкции, нужна схемка (на мк, pic, avr не имеет значения), которая реализует следующий принцип работы: на ногу мк (условно пусть будет 1-ая) пришел сигнал (постоянное напряжение или импульс) и другая нога (2-ая) выдала напряжение (для управление релюхой), напряжение это держится на ней пока не будет нажата кнопка, повешенная на еще одну ногу (3-ю) мк, (даже если сигнал с первой ноги уже пропал); как только кнопку нажали напряжение с реле снялось, а мк начал отсчет 10 мин, и после истечения 10 мин проверяет 1-ую ногу мк, если на ней еще есть напруга или импульсы, то снова включает релюху на 2-ой ноге, если нет, то просто мониторит сигнал с 1-ой ноги мк. Видел ли кто чего подобное??Может посоветуете чего??
Реклама
Реклама
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: помощь в реализации проекта

Сообщение Jack_A »

Язык инженера - графика. Если нарисовать временную диаграмму работы, может оказаться, что все настолько просто, что и МК не потребуется, и сам реализуешь на паре ЛА3 и ТМ2
metan
Вымогатель припоя
Сообщения: 593
Зарегистрирован: Ср янв 06, 2010 10:01:46

Re: помощь в реализации проекта

Сообщение metan »

zvykov писал(а):нужна схемка (на мк, pic, avr не имеет значения)
точнее, нужна схемка и программка :)
zvykov писал(а):пришел сигнал (постоянное напряжение или импульс)
поточнее, плиз. Уровень сигнала, а также если импульсы, то диапазон их длительностей и периодов
zvykov писал(а):10 мин
точность выдержки данного интервала, нужно ли будет его программно менять

И вообще, определитесь все-таки, нужна помощь, или сделать за вас.
Реклама
Эиком - электронные компоненты и радиодетали
PLATON
Родился
Сообщения: 9
Зарегистрирован: Ср июл 23, 2014 16:23:27

Re: помощь в реализации проекта

Сообщение PLATON »

Здравствуйте. Изучаю микроконтроллеры AVR, напмсал код на ассемблере, реализовав апаратный ШИМ с регулировкой, вот интересует вопрос, возможно ли сигнал ШИМа с ОС0 передать на PB4 или другой порт ,например (PD1).
/*
* FAST_shim.asm
*
* Created: 19.08.2014 14:18:20
* Author: PLATON
*/


.def Temp=R16
.def Temp1=R17
.def Temp2=R18
.def Temp3=R19
.def Temp4=R21
.def Temp5=R22
.def ResCnt=R20

.cseg
.org 0


;Вектора прерываний

jmp RESET ; Reset Handler
jmp EXT_INT0 ; IRQ0 Handler
jmp EXT_INT1 ; IRQ1 Handler
jmp TIM2_COMP ; Timer2 Compare Handler
jmp TIM2_OVF ; Timer2 Overflow Handler
jmp TIM1_CAPT ; Timer1 Capture Handler
jmp TIM1_COMPA ; Timer1 CompareA Handler
jmp TIM1_COMPB ; Timer1 CompareB Handler
jmp TIM1_OVF ; Timer1 Overflow Handler
jmp TIM0_OVF ; Timer0 Overflow Handler
jmp SPI_STC ; SPI Transfer Complete Handler
jmp USART_RXC ; USART RX Complete Handler
jmp USART_UDRE ; UDR Empty Handler
jmp USART_TXC ; USART TX Complete Handler
jmp ADCM ; ADC Conversion Complete Handler
jmp EE_RDY ; EEPROM Ready Handler
jmp ANA_COMP ; Analog Comparator Handler
jmp TWSI ; Two-wire Serial Interface Handler
jmp EXT_INT2 ; IRQ2 Handler
jmp TIM0_COMP ; Timer0 Compare Handler
jmp SPM_RDY

;RESET:
;EXT_INT0:
;EXT_INT1:
TIM2_COMP:
TIM2_OVF:
TIM1_CAPT:
TIM1_COMPA:
TIM1_COMPB:
TIM1_OVF:
TIM0_OVF:
SPI_STC:
USART_RXC:
USART_UDRE:
USART_TXC:
ADCM:
EE_RDY:
ANA_COMP:
TWSI:
EXT_INT2:
TIM0_COMP:
SPM_RDY:

reti


;****************************************************
; ИНИЦИАЛИЗАЦИЯ
;****************************************************
Reset:

ldi Temp,0b11111111 ;настройка портов
out DDRC,Temp

ldi Temp,0b11111111 ;настройка портов
out DDRB,Temp

ldi Temp,0b00000001 ;инициализация таймера
out TCNT0,Temp


ldi Temp,0b01111001 ;фаст шим настройка, запуск таймера
out TCCR0,Temp

ldi Temp4,0b11110000 ;сравнивается с TCCR0 (Ширина импульса)
out OCR0,Temp4

ldi Temp,0b11000000 ; Разрешение прерывания INT0, INT1
out GICR,Temp

ldi Temp,0b00000000 ; По низкому уровню
out MCUCR,Temp






; инициализация стека
LDI Temp1,Low(RAMEND)
OUT SPL,Temp1
LDI Temp1,High(RAMEND)
OUT SPH,Temp1


sei

; бесконечный цикл

cikl: jmp cikl


; обработчик внешнего прерывания

EXT_INT0:

ldi Temp3,0
ldi Temp2,0

l_res:
dec Temp3 ; Антидребезг
brne l_res

dec Temp2
brne l_res

inc ResCnt

CPI Temp4,0b11100000 ; сравним с крайним значением
BRSH m1 ; если больше или равно перейдём на метку

inc Temp4
inc Temp4
inc Temp4
inc Temp4
inc Temp4
inc Temp4 ; Уменьшаем Ширину импульса
inc Temp4
inc Temp4
out OCR0,Temp4

ldi Temp5,OCR0
out PortC,Temp5

m1:

reti

EXT_INT1:


ldi Temp3,0
ldi Temp2,0

l_res2:
dec Temp3 ; Антидребезг
brne l_res2

dec Temp2
brne l_res2

inc ResCnt

CPI Temp4,0b00011111 ; сравним с крайним значением
BRLO m2 ; если меньше или равно перейдём на метку

dec Temp4 ; Увеличиваем Ширину импульса
dec Temp4
dec Temp4
dec Temp4
dec Temp4
dec Temp4
dec Temp4
dec Temp4
out OCR0,Temp4
m2:

reti
Реклама
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15575
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: помощь в реализации проекта

Сообщение BOB51 »

Аппаратный выход перенаправить невозможно - лишается смысла именно для аппаратного решения.
Программный вариант - куда угодно перенаправить можно, но ограничен по быстродейитвию и разрешающей способности.
Реклама
Ответить

Вернуться в «Разные вопросы по МК»