Уважаемые посетители! Форум CQHAM.RU существует исключительно за счет показа рекламы. Мы будем благодарны, если Вы не будете блокировать рекламу на нашем Форуме. Просим внести cqham.ru в список исключений для Вашего блокировщика рекламы.
Страница 95 из 223 ПерваяПервая ... 458592939495969798105145195 ... ПоследняяПоследняя
Показано с 941 по 950 из 2227

Тема: ARDUINO

  1. #941

    Регистрация
    23.07.2010
    Адрес
    ЕАО с.Белгородское
    Сообщений
    1,974
    Записей в дневнике
    2
    Позывной
    UD0DAB exUD0CAJ
    А какая разница в чем писать? Тут у меня скорее с логикой проблемы. Я не могу монять какой должна быть логическая структура программы моего синтеза. Может накропать блок-схему для начала? В глубине души программистику недолюбливаю, а теперь вот столкнулся с чем-то сложнее HelloWorld и начались проблемы.


  2. #942
    блок схема- это правильно. Там же и все флаги расставить.
    было бы не плохо смотреть, что твориться в регистрах, на чем затыкается программа, включать пошаговое выполнение.
    а в чем писать - не разницы. Можно даже в блокноте или консольном редакторе
    Создавать шедевры примитивными инструментами могут только Мастера.
    ЗЫ. Может стоить взять готовый чужой проект и изменить его под себя?
    Ведь наверняка используете библиотеки, несовместимые друг с другом...
    Последний раз редактировалось UA0YAS; 13.10.2017 в 09:02.

  3. #943

    Регистрация
    23.07.2010
    Адрес
    ЕАО с.Белгородское
    Сообщений
    1,974
    Записей в дневнике
    2
    Позывной
    UD0DAB exUD0CAJ
    Цитата Сообщение от UA0YAS Посмотреть сообщение
    Ведь наверняка используете библиотеки, несовместимые друг с другом...
    Исчо раз - все у меня работает. Затык не в совместимости. Затык в том что я НЕ УМЕЮ писать сложные программы в принципе. А код сам по себе помодульно работает без вопросов. Вот например я включаю синтез. Надо проверить есть ли в памяти предСостояние частоты и прочего. Если нет - надо выставить дефолтные. Потом вот меню. Енкодер должен как-то этим управлять, оно должно в память сохраниться. И частотой еще управлять. И если часы показывают, то запрашивать их и на экран раз в секунду... А во время ТХ еще, только КСВ показывать на экран.

    И как эту всю кашу в голове собрать пока не сообразил

    Цитата Сообщение от UA0YAS Посмотреть сообщение
    Может стоить взять готовый чужой проект и изменить его под себя?
    В чужом коде вечно все как-то непонятно. Свои грабли опыту больше дают и потом чувствуешь маленькую пободу

  4. #944
    наверное стоит постепенно усложнять проект? начните с валкодера..
    еще можно подсматривать в чужой код, очень помогает при самообучении...

  5. #945

    Регистрация
    18.06.2008
    Адрес
    Санкт-Петербург
    Сообщений
    2,242
    Цитата Сообщение от UA0YAS Посмотреть сообщение
    ...было бы не плохо смотреть, ... на чем затыкается программа, включать пошаговое выполнение.
    А что мешает? IMHO посмотреть нужное место можно всегда. Было бы желание. Остальное, дело субъективное и зависит от привычек, предпочтений и задуманного.
    R1AIT / OH7FUV ех RA1AIT, UB5LQJ, UB5-077-1242

  6. #946

    Регистрация
    28.04.2005
    Адрес
    Московская обл., г. Мытищи
    Сообщений
    3,923
    Позывной
    ex RW3DKC
    Ардуина мешает - там пошаговой отладки нет Хотя обычно и не нужна. Наличие пошаговой отладки не избавляет от необходимости понимания как оно вообще работает и должно работать.

    Мне кажется UD0CAJ понимает проблему совершенно правильно если раньше не программил. Отлаживать так глубоко, что аж до регистров особой необходимости нет - вывода переменных в com-порт или на экран разрабатываемого девайса чаще всего хватает. Думаю нужно почитать что нибудь про "конечные автоматы" и ситуация прояснится. В целом ничего особо хитрого - в основном цикле опрос датчиков (кнопок, энкодера) и реакция на события (смена частоты, обновление информации на дисплее). Для опроса и реакции пишется кучка функций типа опроситьКнопки, опроситьЭнкодер, установитьЧастоту, обновитьИнфуНаДиспле е, обновитьУправляющиеС игналыДПФ и т.п., в основном цикле обычно какой нибудь case из событий "нажали кнопку 1" / "нажали кнопку 2" / "изменилось положение энкодера" и все это бегает по кругу опрос - case - опрос - case ...

  7. Спасибо от UD0DAB

  8. #947

    Регистрация
    23.07.2010
    Адрес
    ЕАО с.Белгородское
    Сообщений
    1,974
    Записей в дневнике
    2
    Позывной
    UD0DAB exUD0CAJ
    Цитата Сообщение от R2DHG Посмотреть сообщение
    в основном цикле обычно какой нибудь case из событий "нажали кнопку 1" / "нажали кнопку 2" / "изменилось положение энкодера" и все это бегает по кругу опрос - case - опрос - case ...
    Вот оно в голове по кругу и бегает Буду рисовать блоксхему, а то сам не всегда понимаю чего хочу добиться. А блоки потом кодом заменить несложно...

  9. #948

    Регистрация
    18.06.2008
    Адрес
    Санкт-Петербург
    Сообщений
    2,242
    Цитата Сообщение от R2DHG Посмотреть сообщение
    Отлаживать так глубоко, что аж до регистров особой необходимости нет - вывода переменных в com-порт или на экран разрабатываемого девайса чаще всего хватает.
    и я об этом.
    R1AIT / OH7FUV ех RA1AIT, UB5LQJ, UB5-077-1242

  10. #949
    Добавлено через 6 минут(ы):

    Цитата Сообщение от UD0CAJ Посмотреть сообщение
    В чужом коде вечно все как-то непонятно. Свои грабли опыту больше дают и потом чувствуешь маленькую победу
    До победы путь может оказаться далеким, а стоит одним глазом подсмотреть чужой код, и вот оно то, на что потратил уйму времени. И уже подсказывали - если у Вас куча событий, которые надо выполнять, в зависимости от состояний, почитайте о флаговых автоматах, диспетчерах и пр. Вот ссылка, где кое-что есть об этом:
    http://easyelectronics.ru/avr-uchebn...-programm.html
    А вообще, я не представляю среду разработки, где нет пошаговой отладки. Поэтому, попробовал среду Ардуино и сразу отказался. Но сами платы Ардуино, использую, учитывая их удобство загрузки программ, а для написания WinAVR2010, отладка AVR Studio 4.19. Можно и то и другое делать в AVR Studio, 6 и последующие. Загрузчик Ардуино (бутлоадер) этими программами поддерживается. Правда, с 6-студией, что-то мне не повезло, старые программы (некоторые) пришлось подгонять, а это время, поэтому пока WinAVR.


    Цитата Сообщение от UD0CAJ Посмотреть сообщение
    Вот оно в голове по кругу и бегает
    Этим должны заниматься таймеры их может быть много, каждый отвечает за задачу, которую должна отработать программа. Каждый таймер выставляет свой бит (флаг), программа просматривая флаги последовательно и, найдя установленный бит, выполняет соответствующую этому биту задачу. Другие флаги выставляются событиями. Но надо это читать, так как то, что я написал, использовал мало и глубокого понятия пока нет.
    Последний раз редактировалось Владимир_К; 13.10.2017 в 12:25.


  11. #950
    Еcть вот такой дисплейчик..tftlcd 3.5 ili 9327..можно что нибудь с него сделать,хотя бы те же часы или выкинуть его и не заморачиваться с ним..

Страница 95 из 223 ПерваяПервая ... 458592939495969798105145195 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •