Змінюй хід війни! Допомагай ЗСУ!

Электрофлуд :)

🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4581
В прерывания проваливается и все четко отрабатывает. Релюхой щелкать то слишком, диодиком помигаю. Так вот мигаю этим диодиком в прерывании в части, что генерирует секунды - мигает. Мигаю в минутной части, прямо рядом с выдачей минутного флага для основного цикла - мигает. Мигаю в основном цикле в части ожидающей того самого флага - и нифига не происходит. Смотрю листинг, явного криминала нет - rjump в начало основного цикла, загрузка переменной, "и", brne+2, rjump куданибудь Неужель прийдется самому выполнять работу компилятора разбирая весь асм:(



Я худею с этой студии. Ставлю разные уровни оптимизации, и оно работает по разному. При чем понять где написано то, что делает, невозможно.



Бля, я уже головой еду.
В прерываниях все нормально отрабатывает. Если поставить мигалочку в прерывании рядом с выдачей флага для главного цикла - мигает. Если мигалочку поставить в главном цикле под флагом, то нихера не мигает. То есть логично предположить, что прерывание устанавливает иную переменную от той, что проверяется в качестве флага основным циклом. Собственно из-за этого я все в кучу скинул, чтобы исключить возможность такой проблемы. Но нифига.

Вот листинг.
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

Конечно читать это не интересно, потому приведу ключевые моменты.

1 - начало основного цикла. Загрузка переменной по адресу 0x019B и стандартное if-ветвление.
Код:
    while(1)
    {
        if(bMinuteFlag)
 10e:	80 91 9b 01 	lds	r24, 0x019B
 112:	88 23       	and	r24, r24
 114:	09 f4       	brne	.+2      	; 0x118 <main+0x72>
 116:	89 c0       	rjmp	.+274    	; 0x22a <main+0x184>

2 - выдача флага. Как видно устанавливается та же самая переменная по адресу 0x019B.
Код:
      bMinuteFlag = true;
 2ee:	91 e0       	ldi	r25, 0x01	; 1
 2f0:	90 93 9b 01 	sts	0x019B, r25

3 - ну и самый конец основного цикла, где видно, что он чудесно прыгает на начало, коим собственно проверка этого проблемного флага и является.
Код:
 228:	72 cf       	rjmp	.-284    	; 0x10e <main+0x68>

Как все это может быть? То, что не пашет, я имею ввиду.



Ахуеть ребята. Никак кроме этой картинки охарактеризовать ЭТО я не могу.
WSSeIo9fEPU.jpg


Волшебное слово volatile решило проблему. Просматривая листинг я заметил в коде знакомый адрес, по которому эта падла компилятор писала другую переменную. Заюзав поиск я нашел еще кучку записей по тому же адесу всяких других переменных.
Было это уже в нулячем проекте, который я заново создал и закидал нужными файлами. Изначально там все цивильно собрано, а не в куче, как то, что я показывал. Переменные объявляются в отдельном файле как extern, который инклюдится везде, опять же в отдельном файле все создаются и инициируются, инклюдится в один из сишных файлов. Но не ясно как-то выходит - пускай в файле, где переменные создаются, компилятор повыкидывал неиспользуемые, но при сборке то линкер бы не нашел екстерны и должен был бы забить тревогу.
К тому же не работало оно и скинутое в одну кучу, как я показал выше.
Ничего не менял нигде - только волшебных слов добавил.


А CVAVR нормально пропалил екстерны, потом видимо перекомпилировал все с учетом того, чтобы экстерны оставить.
 
Останнє редагування:
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4582
Ну, компілятор не палить змінні, що змінюються не в основному циклі програми, а в перериваннях.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4583
Угадайте, где делают КРЕНки, КТ\КП транзиторы?

Ага, в Китае.
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4584
Однако... я то грешным делом предположил что в Белоруссии, на Интеграле(((
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4585
Угадайте, где делают КРЕНки, КТ\КП транзиторы?

Ага, в Китае.
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

После того, как я видел китайский карб на 21 волгу, меня уже сложно удивить тем, что делают китайцы.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4586
После того, как я видел китайский карб на 21 волгу, меня уже сложно удивить тем, что делают китайцы.

Та то еще хуйня. Встречайте, полностью китайский "Урал" (он же МТ, он же "Днепр" и т.д.) по имени Chang Jiang

201103101258_000_moto_0211_030.jpg
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4587
Та то еще хуйня. Встречайте, полностью китайский "Урал" (он же МТ, он же "Днепр" и т.д.) по имени Chang Jiang
Ну днепры и пиндосы даже копировали и продавали за хорошие деньги своим ценителям. Просто потому, что класический олдовый корч, где чем топорнее, тем лучше. Днепр топорный и уебищный, что и делает его через 50 лет трушным в этой категории.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4588
Ну дык, потому и сделали что спрос есть. Карбы на ГАЗ-21, видимо тоже были нужны. А вот кому нужны КРЕНы и совкотранзисторы я ума не приложу.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4589
Росийским заводам, которые потом перепродают на гос предприятия втридорога. Ну и выебываются еще по поводу отечественного производителя.
у нас подшипниковый тоже так работает. Сами производят только нестандарт хуйового качества.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4590
у нас подшипниковый тоже так работает. Сами производят только нестандарт хуйового качества.
И велозавод собирает из китайской комплектухи. Правда, таки стараются не совсем унылое Г. лепить...
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4591
Ну ты еще прозиводство самолетов и транзисторов сравни. Велосипеды сегодня никто в мире полностью сам не делает.

О. я щас до ума довожу шестиканальный (на самом деле в коробке 14 каналов, двойное резервирование плюс еще 2 канала в запас) ламповый предварительный усилитель.

Бля, это реальный олдовый корч.

"Обожаю" :D разъемы "ШР"

Повыдирай 5 каналов, отпили неиспользуемый кусок платы, кожух верхний выкинь нафиг, бп тоже выкинь и замени зарядкой от телефона - вот это будет корч :D
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4592
добрый день
подскажите как можно автоматизировать наполнение бочки с водой
вычитал что есть всякие заводские реле уровня вроде ЭРСУ-2, но малость отпугивает высокая цена и лохматые года изготовления. да и габарит какой то устрашающий

может быть возможно наваять что то самостоятельное?

насос наполняющий бочку кушает около киловатта.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4593
Две металлические пластины закрепить в точке максимального уровня воды. Вода набежала, замкнула пластины, автоматика выключила насос.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4594
тогда нужно простое реле?

ну и плюс чтобы оно держало большой ток, правильно?
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4595
и полевик подтянутый в одну сторону резистором на мегаомы, и в другую конденсатором, тогда он будет боль-мень не глючным.
А реле, это уже на выход всего вешать. Или не реле, или кто ж его знает без магического шара.
Учтите что всё надо отвязать со знанием дела, а то даже если нейтраль проползёт может неслабо дёрнуть.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4596
Ну и плюс кое какая схема с триггером, дребезг контактов никто не отменял. А потом уже реле или симистор, то дело хозяйское.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4597
Скорее не тригер, а задержку.

Я пардон за рисование, но примерно такое если пальцем в небо
ertj.jpg
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4598
Так задержку нормальную и нормально не реализовать, там нормальный гистерезис нужен. Посему к этому надо добавить еще один электрод и чуток логики для того, чтобы включал нижний, а выключал верхний.
 
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4599
а если поплавковый выключатель?

запуск насоса как вариант можно организовать таймером розеточным, а вот с выключением делать что...



может на герконах сделать?
 
Останнє редагування:
  • 🟡 15:21 Відбій тривоги в Харківський район.Зверніть увагу, тривога ще триває у:- Харківський район#Харківський_район
  • #4600
Как сделать вкл\выкл народ уже рассказал.

Теперь думает как упорядочить, если это будет просто выключатель то насос будет дёргать туда сюда от волн при работе самого насоса, от малейшего снижения уровня, фаз луны и пробегающих зайцев, и в итоге помрёт от такого радео насос.
Вопрос в том что надо ввести задержку как включения так и выключения.

Т.е. уровень чуть снизился - подождали, если уровень продолжает снижатся включаем сразу, если нет через какое то время начинаем накачку.
Если начали закачку то закачиваем какой-то минимум, даже если датчик уже среагировал. итд

Вопрос больше реализации и хотелок. Ну и вопрос собственно знаний реализатора, ибо продумывать 100% никто не станет, тут достаточно посмотреть на любые схемы в интернете, под которые даже статьи написаны, 90% из них это жуткая хрень.
 
Назад
Зверху Знизу