Не получается получить цикл.

jardon
Offline
Зарегистрирован: 29.10.2021

Добрый день.

Хочу немного подкорректировать готовый скетч.

Необходимо опрашивать вход, подтянутый внешним резистором. Если на входе 0, уйти в вечный цикл. Вывести на индикатор надпись и ждать изменения.

Если на входе 1, программа выполняется.

Непонятно. Какой вывод порта указывать в программе. Пин самого контроллера или пин платы.

 
    // очищаем экран
  lcd.clear();
// 37 НОГА аурдуино PORTC,0
  int MFPin = 37;
   digitalRead(MFPin);// Читает состояние пина   
  
    while (MFPin==LOW); // пока на выводе 37=0 )исполняем  код внутри фигурных скобок
  {
   //_delay_ms(50)
   lcd.begin(20, 4);
   lcd.setCursor(0, 1);
   lcd.print("    Режим  1"   );
                        }

Режим 1 постоянно выводится и программа продолжается. Что я неправильно делаю?

b707
Offline
Зарегистрирован: 26.05.2017

jardon пишет:

Что я неправильно делаю?

ВСЕ

Судя по всему. ваши знания практически на нуле, вы даже прочитать пин толком не можете.

А кроме того - что самое печальное - начинаете писать на форум. не прочитав его правила.

Вставьте код в сообщение ПРАВИЛЬНО, чтобы были номера строк. Тогда я вам напишу, в каких строках у вас ошибки.

jardon
Offline
Зарегистрирован: 29.10.2021

ошибка

jardon
Offline
Зарегистрирован: 29.10.2021
Я совершенно не знаю Си. Общее представление. 
Хорошо знаю Асм.  Там все читается легко и просто. )) Тут даже не понятно, к какому  пину обращаться. Плата отдельно от контроллера. 
Номера строк. Это что? Через нотепад? Я же в песочнице кажется.))
 Один вопрос, а сколько условий.)) Надо два дня правила читать, оказывается.)) Извините, не знал. 
На асме написал бы за две секунды. Но надо подправить именно проект на Аурдуино. Учить его я не собираюсь.  Не перспективно. Да и старый уже.
wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

Прочесть прикрепленную тему и научиться встявлять код правильно - это входной тест на интеллект. Ты его не прошел. Попробуй на другом форуме.

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

jardon пишет:

Я совершенно не знаю Си.  Но надо подправить именно проект на Аурдуино. Учить его я не собираюсь. 

А такие нам тут вообще не нужны. Нужно - марш в коммерческий раздел "Ищу исполнителя" и не отсвечивай в обсуждениях, если "учить не собираешься". Доступно?

b707
Offline
Зарегистрирован: 26.05.2017

jardon пишет:

На асме написал бы за две секунды. Но надо подправить именно проект на Аурдуино. Учить его я не собираюсь.  Не перспективно. Да и старый уже.

если учить не собираетесь. что вы забыли тут на форуме? - "давай досвиданья"

А байки про "написал бы на ассемблере" не надо тут плести,  видали мы тут таких, на деле ни асма, ни Си, ни железа - ничего не знаете

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

не верится что-то про ASM
PS читать пин надо в цикле

b707
Offline
Зарегистрирован: 26.05.2017

ua6em пишет:

читать пин надо в цикле

для начала пин просто надо читать :) - в программе даже этого нет

AndreyD
AndreyD аватар
Offline
Зарегистрирован: 07.10.2018

ua6em пишет:

PS читать пин надо в цикле

И если бы он там читался, в коде ТС, то он и так бы читался в "вечном" цикле. Из моего предположения, что он его всё-таки в loop() вставляет, а то мало ли.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

читает, только из регистра никакой переменной не присваивает )))
 

 digitalRead(MFPin);// Читает состояние пина   

 

b707
Offline
Зарегистрирован: 26.05.2017

коллеги. вы теперь этому придурку все его ошибки поправите?

Пусть научится в форум верно заходить

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

jardon пишет:

Я совершенно не знаю Си.  ... Учить его я не собираюсь. 

Тогда, что Вы здесь делаете? Для таких, как Вы есть коммерческий раздел. Заказывайте там.

jardon пишет:

Надо два дня правила читать

Не знаю, с какой скоростью Вы читаете. Может и два дня, а может - неделю.

jardon пишет:

Извините, не знал. 

Теперь знайте.

jardon пишет:

На асме написал бы за две секунды. 

Кто или что мешает? Пишите. На асме или ещё на 20-ти языках, которые Вы "знаете на уровне выше ..."

jardon
Offline
Зарегистрирован: 29.10.2021

Не удивительно. )) Бронзовеют люди. Как было хорошо в 99 году. Многие из Вас еще в школу ходили. Все были братья и сестры. Все хотели помочь. А теперь, не так холоп вошел. Ноги вытри, правила почитай.))

Людьми надо оставаться, всегда. Что Вам  написать на асм? Ни каких там циклов нет. Там все просто. Это у Вас мозжечки перевернулись.))

Моя любимая фраза Коли Лихачева. ( Криса Касперски) 

ассемблер — это разговор с компьютером на естественном для него языке, радость общение с голым железом, высший пилотаж особого полета свободной мысли и безграничное пространство для самовыражения

Жаль, что рано ушел. Он великий человек. Но он мне бы точно помог. Без понтов.

Удачи! 

b707
Offline
Зарегистрирован: 26.05.2017

Как и предполагалось, асм вы знаете не лучше Си... циклов вам в нем не хватает? Ню-ню... плохому танцору...

jardon
Offline
Зарегистрирован: 29.10.2021
;-----------------------------------------------------------------------------------------------------
shet_taim                            ; счет в десятичном виде  минут, часов 
;-----------------------------------------------------------------------------------------------------
          
           movlw       minyt          
           movwf       FSR           
           call        prv_1          
           call        prv_0          
           goto        prv_2          
prv_0      incf        FSR            
           btfsc       STATUS,C       
prv_1      incf        INDF           
           movlw       6             
           addwf       INDF           
           btfss       STATUS,DC      
           subwf       INDF           
           movlw       -060H               
prv_2      addwf       INDF,W         
           btfsc       STATUS,C       
           clrf        INDF           
           retlw       -024H         
jardon
Offline
Зарегистрирован: 29.10.2021

Напишите так.)))

Green
Offline
Зарегистрирован: 01.10.2015

Писали и на ПИКовском brainfack-е. Когда дурными были. И когда времени было вагон.(
Сейчас даже pic10f200 без ассемблера обходится.

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

Родное сердце! В 99 году у меня сын в третий класс пошёл. Если ты перестал учиться с возрастом, то ты всё просрал. И в том, что ты не можешь "сложить два и два" на незнакомом контроллере виноват только ты. Мы НЕ ПОМОГАЕМ бесплатно тем, кто не хочет учиться. На этом закончи, плз, разговор. Надоел.

jardon
Offline
Зарегистрирован: 29.10.2021

 Молодой ты еще. У меня младший пошел в 7.))

Я понимаю, что когда людям сказать нечего, они быкуют.))  Так что ты предлагаешь после 60 учиться?)) А Родину в 2000 году ты не защищал случайно, под Шатоем? Может встречались?)) Вот и получается, кто-то что-то полезное для страны делал и не получалось учиться., и сына в школу водить. Чему научился и то хорошо. Аурдуино это для больных людей.)) И здесь их много, как не странно. 

В тексте выше увидели знакомые команды 8 битных пиков. Но никто не увидел красоты.)) На Си так не напишешь. Верней, не каждый напишет. Мозги уже другие. А я люблю красивое.

В Лаб Х напишешь на Си на любом контроллере. Плюс среда разработки. Плюст куча внутрисхемных отладчиков.

А Вы тут извращаетесь. И еще время считаете.)) Зря микрочип купил Ваши любимые камни.))

 

sadman41
Offline
Зарегистрирован: 19.10.2016

Пришёл, обосрал и ещё об отношениях добрососедских рассуждает. Маладец ваще.

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

jardon пишет:

 Молодой ты еще. У меня младший пошел в 7.))

Я понимаю, что когда людям сказать нечего, они быкуют.))  Так что ты предлагаешь после 60 учиться?)) А Родину в 2000 году ты не защищал случайно, под Шатоем? Может встречались?)) Вот и получается, кто-то что-то полезное для страны делал и не получалось учиться., и сына в школу водить. Чему научился и то хорошо. Аурдуино это для больных людей.)) И здесь их много, как не странно. 

В тексте выше увидели знакомые команды 8 битных пиков. Но никто не увидел красоты.)) На Си так не напишешь. Верней, не каждый напишет. Мозги уже другие. А я люблю красивое.

В Лаб Х напишешь на Си на любом контроллере. Плюс среда разработки. Плюст куча внутрисхемных отладчиков.

А Вы тут извращаетесь. И еще время считаете.)) Зря микрочип купил Ваши любимые камни.))

Вы, похоже, уже в дрова, батенька!! :)

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

РФ в 1999ом году не находилась в состоянии войны. Это раз.
Не хочешь учится - нет проблем. Заплати школьнику 500 р. Жалко? Или совок в жопе мешает? Это два.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

форум столько употребляющих не выдержит когда-то

jardon
Offline
Зарегистрирован: 29.10.2021

РФ в 1999ом году не находилась в состоянии войны. Это раз.

Как молоды Вы и глупы.)) это два.

Все за деньги.)) Мне не жалко, пенсия большая. Но зачем разлагать. Мне знакомый СТМ- щик помог. И посоветовал не связываться с аурдуиной. Это для мамкиных дурачков, любителей халявы.  Ничего не понимают. Библиотеки ищут и плачут. Понтов выше крыши. Грубо. Но выходит, что верно.))

Так что спасибо. Вопрос закрыт.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

jardon пишет:

Добрый день.

    // очищаем экран

 
Уважаемый!
Готов помочь, но то, что вы вставили - не является программой, а какой-то урезкой. Из неё нихера не понятно. Кроме того нет схемы - возможно Вы что-то там накосячили (без обид - у всех бывает, а свежий взгляд...).
И вставьте программу по правилам форума, поверьте они созданы на соплях и воплях.
ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

jardon пишет:
Что Вам  написать на асм?

Нам - ничего, Вам там что-то нужно было, вот и напишите.

jardon пишет:
ассемблер — это разговор с компьютером на естественном для него языке, радость

Так и поговорите, порадуйтесь! А мы за Вас порадуемся.

jardon пишет:

Напишите так.)))

Зачем? Так работать не будет. 

jardon пишет:
А я люблю красивое.

Так напишите! И нам покажите, мы полюбуемся :-)

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Т.е. на АСМе нормальное явление объявить переменную, а потом нигде её не меняя ждать что она станет равна 0 ???
А читать состояние регистра "в никуда" , это тоже нормальная практика АМСа ?
Мне показалось, или кто то пи..ит ?

SAB
Offline
Зарегистрирован: 27.12.2016

да ещё и стек рушит goto. Похоже это троль.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

jardon пишет:

Как было хорошо в 99 году. ... А теперь, не так холоп вошел. Ноги вытри, правила почитай.))

Вы искренне полагаете, что пословица про чужой монастырь и свой устав родилась уже после 1999 года?

Или Вы вспоминаете именно 99 год с Рождества Христова?

Цитата:

Что Вам  написать на асм? Ни каких там циклов нет.

Я даже и не знаю, как это комментировать. Назовите мне хотя бы один процессор, Ассемблер которого не позволяет организовать цикл.

jardon пишет:

... аурдуиной. Это для мамкиных дурачков, любителей халявы.

Вот это - в точку!

Вы не представляете, сколько каждую неделю на форум приходит халявщиков, не желающих учить язык, но  зато твердо уверенных, что им здесь что-то должны.

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

Столько сёру, а по факту - кто мешает делать вставки на asm в проектах ардуино? Никто (вроде бы).
А вставка кода по правилам форума не для очередного сёру, а просто для удобства (и помогающим и спрашивающим). Просто всем уже (старожилам) надоело это объяснять...

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

jardon пишет:

Режим 1 постоянно выводится и программа продолжается. Что я неправильно делаю?

Так то, если не большой секрет (даже кода не нужно, можно на словах) - как Вам СТМщик то знакомый помог? Сразу кодом? Или объяснил что Вы делаете не так (как и было в первом сообщении)?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Kakmyc пишет:
Т.е. на АСМе нормальное явление объявить переменную, а потом нигде её не меняя ждать что она станет равна 0 ??? А читать состояние регистра "в никуда" , это тоже нормальная практика АМСа ? Мне показалось, или кто то пи..ит ?

Как всё приземлённо и меркантильно! Ни хрена Вы в красоте не понимаете :-(

А ТС любит, чтобы красиво!

jardon
Offline
Зарегистрирован: 29.10.2021

 забавно. брошу я еще дрожжей в этот сортир. Убогие, бедные люди. Клянчат деньги за всякую ерунду. Мне друг написал. Заведи переменную для считывания порта и убери ; после цикла и все заработает. И заработало.)) Исписали кучу, а я понял. Что плохо с деньгами, подайте хоть 500р. Мы не любим халвщиков.  Тут форум или биржа, или стол заказов? Где налоговая.)) Эх, люберальная жизнь совсем подрастающее поколение в задницу затащит. 

Ну и ответить на цитаты.

В асме,  нет циклов. Цикл есть в алгоритме.

порт считывать на асме, тем более один вывод, через переменную, это маразм. Чем Вы тут и занимаетесь.))

Есть аккумулятор W. Но это страшная тайна. И его можно даже опрашивать.))

Другой, боевые действия официальные в России ищет.. Была официально контртеррастическая операция, с 94 по 2009.  В 1999 году Путин подписал Указ о создании объединенной группировки войск на СК

Китайцы Вам плат напаяли. Европейцы примитивную  среду сделали, без отладчиков, симуляторов. Больше половины не знает, как работает DS1820. библиотеки же есть.))  Но Вы же не халявщики, Вы великие программисты. Исписали дружно две страницы. Результат ноль.

Но удивляюсь, откуда столько обломба в этой серой, нищей среде посредственностей? Наверно от чувства неполноценности.)) Детки, пересмотрите свои взгляды. Мне за Вас стыдно.)) Это все таки технический форум. 

 

jardon
Offline
Зарегистрирован: 29.10.2021

для mykaida

Спасибо, за нормальный разговор. Мне уже подсказали. Это не программа. А простой кусочек. Опросить вывод, порта. По его состоянию уйти в вечный цикл ( goto $) или продолжить. Не вижу ничего сложного. Еще раз говорю,  не знаю Си, но неплохо знаю асм.  Это элементарная вешь. Даже не думал, что столько вою будет из этой ерунды.  Меня раздражают условности и синтаксис ЯВУ. Старый наверно.  Не понимаю, зачем при опросе вывода создавать переменную. Он и так легко опрашивается. За два такта.

Еще раз,спасибо.  

b707
Offline
Зарегистрирован: 26.05.2017

jardon пишет:

 Мне друг написал. Заведи переменную для считывания порта и убери ; после цикла и все заработает. И заработало.))

не заработало. По крайней мере не по ТЗ из первого поста.

Там написано "... уйти в вечный цикл и ждать изменения".  Озвученные исправления вторую задачу не решают.

 

А что до упоминания боевых действий.... напоминает как в советское время некоторые ветераны ВОВ одевали награды, чтоб пройти без очереди в винный магазин.

 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

я тебе еще #7 подсказал, что опять не так?