наша картинка показывает, что у tiny13 всего 64 байт памяти... что для универсального копировальщика мало.
самый простой вариант - передавать обычным ногодрыгом)) через delay.
Немного уточняющей инфы. Полностью пакет выглядит так. Абсолютно идентичные пакеты следуют с интервалом 680 ms- с момента срабатывания сигнального устройства, и до окончания срабатывания.
Добавлено after 11 minutes 8 seconds: ну и в конце самое интересное))
-подключаем МК к интернету. -пишем приложение для компа и телефона. -нажимаем кнопочку на компе или телефоне... комп или телефон предаёт по интернету номер кнопки МК. -МК принимает номер кнопки по интернету и передаёт ИК сигнал телевизору.
сидим на диване... управляем телевизором по интернету ))
при удержании кнопки ИК пульта пульт непрерывно передаёт пакеты с интервалом ~100 мс.
короче... всё стандартно.
Только у меня не пульт чуток тайминги другие и не ассемблер. Перевариваю прочитанное. Пока лишь понял, что ногодрыгом проще. Интуитивно понимаю, но не более...
Вы не поняли. Нет никакого ШИМ, таймер отсчитывает 50мкс интервалы. Пример формирования меандра с полупериодом 50мкс на лапе PB0 и стробика 9мс на PB1 ниже. Писал вчера, когда новых вводных от стартера ещё не было. Спойлер
Код:
.INCLUDE "tn13Adef.inc"
.equ Fo=1200000
.ORG 0x000 RESET: RJMP START
;*********************************** .ORG 0x0006 T0_COMP_A: RETI ;*********************************** START: LDI R16,$FF OUT DDRB,R16 OUT PORTB,R16 GO: CLI LDI ZH,HIGH(TB_FRAME*2) LDI ZL,LOW(TB_FRAME*2)
LDI R16,LOW(50*Fo/1000000-1) OUT OCR0A,R16
LDI R16,1<<SE ; режим SLEEP IDLE OUT MCUCR,R16
LDI R16,1<<OCIE0A OUT TIMSK0,R16 OUT TIFR0,R16
LDI R16,1<<WGM01 OUT TCCR0A,R16 ; режим CTC LDI R16,0<<WGM02|1<<CS00 OUT TCCR0B,R16 ; режим CTC F/1
Заголовок сообщения: Re: Как повторить последовательность импульсов?
Добавлено: Пт янв 30, 2026 08:54:52
Вымогатель припоя
Карма: 2
Рейтинг сообщений: 19
Зарегистрирован: Пн сен 15, 2025 08:43:23 Сообщений: 523 Откуда: Маленький СССР посреди шариатской республики
Рейтинг сообщения:3
Какие же ардуинщики забавные. Везде этот убогий delay() воткнуть пытаются, даже чтобы паузу на пару микросекунд сделать… Есть же ТАЙМЕР! Вот и пусть себе ШИМ генерит. Да, вам там с вашей упоротостью не повезло: DMA нет, ну ок: меняйте длину импульса в прерывании таймера... Всяко меньше будет камень нагружаться, и помимо передачи пакета импульсов можно будет еще чем-нибудь заниматься полезным... // но я таки крайне советую вменяемый МК взять, где и 32 бита, и таймеров полно нормальных, а не убогих.
Добавлено after 1 minute 59 seconds: roman.com, тебе бы с таким рвением и упорством еще и на линукс перейти - вообще замечательно бы было! Маздай - это гниль, днище…
да какая разница... всё везде работает одинаково)) смотрим на картинку...
1. сначала идёт преамбула (или стартовый бит)... короткий и длинный импульс. 2. потом идет сам код... 0110010. 3. в конце какой-то импульс... предположительно стоп бит.
но я таки крайне советую вменяемый МК взять, где и 32 бита, и таймеров полно нормальных, а не убогих.
ага и 2G ram чтоб линукс загрузить с гномом, ато отстой жеж, ногодрыг
щас программеры такие что sos проморгать светодиодом не могут без dma, у них 32-407 перегружается сразу от ногодрыга 1kHz посему щас даже светеодиодные фонарики не смогут производить без 60nm техпроцесса мляу.
мне кажется что всетаки постепенно этому прийдет конец, но может и нет но бурное развитие в том же направлении точно остановится ...собственно уже практически остановилось несколько лет назад
Вот! Вот, эта мысль и крутилась у меня в голове! Но выхода не нашла! Вы доходчиво донесли принцип... Спасибо, и- всем спасибо! Натолкнули на решение. У меня тини 13а. Буду пробовать.
сидим на диване... управляем телевизором по интернету ))
Почему у унитазных бачков не делают дистанционное управление ? ...
Товарищ! Да, вы- экстрасенс!
Вся эта канитель- как раз для управления... унитазным бачком! Только громко не ржать, прошу!
Жизня заставила. Старый дедушка в доме за собой уже не смывает. Помимо запаха еще вечно черная дыра сливная. Обработка кислотой дает эффект ровно на неделю- потом все снова зарастает камнем. Плюс финансово- на кислоты уходит больше, чем если бы бачок смывался сплошным потоком воды- круглые сутки.
Купил на озоне смывной механизм на моторчике, но он управляется- тоже рукой, то есть снова мимо, но к нему шла приблуда, которая по синезубу коннектится и срабатывает по отражению света от ИК-диода. Появляешься в луче, потом уходишь и через 6 сек она срабатывает.
Вот к ней я и делаю таймер, который будет помимо отражения, просто каждые пол часа смывать- вне зависимости. Можно было проще сделать, типа таймер тупо замыкает что-то там и все срабатывает, без всяких там пачек импульсов, но прямых путей не ищем решил пойти вокруг.
Идея подкинутая Романом зашла. И да, Тов. Муркиз пишет "...А слабо написать функцию "мигнуть" светодиодом и скормить ей числовой массив из значений задержек ?..." Почти именно так и вышло.
Стесняюсь спросить, а зачечм там приблуда с синезубом и пультом, плюс теперь еще и эмулятор этого самого пульта ? Это прям оверинжиниринг какой-то... Хотя, с такой жаждой деятельности там точно нужен и RTOS, и линух, на худой конец - просто DMA.
Стесняюсь спросить, а зачечм там приблуда с синезубом и пультом, плюс теперь еще и эмулятор этого самого пульта ? Это прям оверинжиниринг какой-то... Хотя, с такой жаждой деятельности там точно нужен и RTOS, и линух, на худой конец - просто DMA.
Согласен, не самое элегантное решение. Приблуда (назовем ее- пульт) шла в комплекте со смывателем. Они коннектятся по синезубу. Пачки импульсов- это я так понимаю "ключ" для того, чтобы, к примеру конечно, в общественном китайском туалете приблуда (пульт) срабатывала именно на свой смыватель, а не на все сразу. Вот этот пульт я хотел дополнить таймером, чтобы смывала- по времени, вне зависимости от посещений, путем отсылки пачки импульсов на смыватель. Вы спросите: а чего не поставить таймер на сам смыватель и не управлять двигателем- напрямую? Так мне показалось сложней. Я могу расписать, конечно почему, но самое главное, как мне показалось- в этом случае мог быть конфликт между приблудой (пультом) и самой смывалкой, когда они решат крутить мотор одновременно, но в разные напрвления. В общем- сложно...
Линух- пропустим. Два года я пытался делать вид, что мне его "хватает на все", но эмулятор винды работал в нем постоянно. В итоге я решил, что если так, то лучше в случае надобности эмулировать линукс и вернул винду. И вот что забавно... за много лет эмулировать линукс мне не понадобилось- ни разу. Странно, понимаю, но объяснить не могу. Хотя, на работе поставил и люди работаею на нем!
Если от механизма смыва не приходит какая-то обратная связь (через проточные датчики, токовые или какие-либо другие), то - да, поставить именно таймер управления этим механизмом, будет проще всего.
Заголовок сообщения: Re: Как повторить последовательность импульсов?
Добавлено: Сб янв 31, 2026 15:16:09
Друг Кота
Карма: 107
Рейтинг сообщений: 3841
Зарегистрирован: Пн фев 09, 2009 22:19:49 Сообщений: 25379 Откуда: Когда-то был прекрасный город для людей
Рейтинг сообщения:0
Просто каждый час импульс на исполнительное устройство может и платка таймера 555 без проблем и без конфликтов вообще-то. Но вот сколько воды зря утечет ... Нам к потопу готовится, ковчег строить ?
Последний раз редактировалось Муркиз Сб янв 31, 2026 17:14:54, всего редактировалось 1 раз.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения