Перейти к содержанию

ALEX__45

Members
  • Постов

    21
  • Зарегистрирован

  • Посещение

Весь контент ALEX__45

  1. ЗЫ: Помучался, но таки нашел решение: https://www.cyberforum.ru/cpp-beginners/thread1175688.html В итоге: сначала обьявляю массив кнопок GButton buttons[8]; потом делаю присваивание конструктора в цикле: void setup() { for(int i=0;i<6;i++){ buttons[i] = GButton(14+i); } buttons[6] = GButton(2); buttons[7] = GButton(3); } и без проблем далее: void loop() { for(int i=0;i<=7;i++){ buttons[i].tick(); } for(int i=0;i<=7;i++){ if (buttons[i].isPress()) bitWrite(sendButtons, i,1); if (buttons[i].isRelease()) bitWrite(sendButtons, i,0); } }
  2. ну, я бы не был столь резок это мой говнокод) Главное что это осознаю и стремлюсь к исправлению) вы предлагаете использовать другую библиотеку кнопок, более удачную - в целом вполне себе вариант. И все же для себя хотелось бы разобраться в синтаксисе языка. Возможно ли изменить объявление кнопки с использованием текущей библиотеки, так чтобы объявить сразу массив кнопок? как то по типу: GButton buttons[8]( {пин1.пин2б...} ); кстати у меня не матрица, а просто 8 кнопок и мне кажется (при беглом осмотре библиотеки) она не подойдет для этого случая
  3. дано: библиотека кнопок вида: //кнопки #include "GyverButton.h" GButton b1(A0); GButton b2(A1); GButton b3(A2); GButton b4(A3); GButton b5(A4); GButton b6(A5); GButton b7 (2); GButton b8 (3); Собственно вопрос в том, как правильно объявить масив из кнопок, чтобы легко можно было конструкцию вида: b1.tick(); b2.tick(); b3.tick(); b4.tick(); b5.tick(); b6.tick(); b7.tick(); b8.tick(); if (b1.isPress()) bitWrite(buttons, 1 -1,1); if (b1.isRelease()) bitWrite(buttons, 1 -1,0); if (b2.isPress()) bitWrite(buttons, 2 -1,1); if (b2.isRelease()) bitWrite(buttons, 2 -1,0); if (b3.isPress()) bitWrite(buttons, 3 -1,1); if (b3.isRelease()) bitWrite(buttons, 3 -1,0); if (b4.isPress()) bitWrite(buttons, 4 -1,1); if (b4.isRelease()) bitWrite(buttons, 4 -1,0); if (b5.isPress()) bitWrite(buttons, 5 -1,1); if (b5.isRelease()) bitWrite(buttons, 5 -1,0); if (b6.isPress()) bitWrite(buttons, 6 -1,1); if (b6.isRelease()) bitWrite(buttons, 6 -1,0); if (b7.isPress()) bitWrite(buttons, 7 -1,1); if (b7.isRelease()) bitWrite(buttons, 7 -1,0); if (b8.isPress()) bitWrite(buttons, 8 -1,1); if (b8.isRelease()) bitWrite(buttons, 8 -1,0); заменить на: for(i=1;i<=8;i++){ if (b{i].isPress()) bitWrite(buttons, i -1,1); if (b[i].isRelease()) bitWrite(buttons, i -1,0); } как мне объявить массив из пользовательских переменных и возможно ли это вообще с учетом разных входных данных конструктора? Благодарю всех ответивших!
  4. С китайскими копиями нужно крайне осторожно вести себя с питанием. В Ардуино есть встроенный стабилизатор напряжения на 5 вольт. именно он принимает на вход до 20 вольт. Но нужно понимать что чем больше напряжение тем больше он греется. Кроме того он расщитан только на питание самой Ардуины, но никак не периферии (экранчики, сервомоторчики и т .п.). Эсли преобразователь сгорит то либо вам повезет и он станет разрывом, либо не повезет и он подаст 12 в на 5 вольтовую шину... эсли при этом плата поключена к юсб - сгорит Юсб. Если правильно подключаете при соединении одновременно и Юсб и 12 вольт питания. проблем не будет. и программироваться будет норм. Главное не перегружать стабилизатор. А лучше всего вообще им не пользоваться а подавать 5 вольт на пин 5в от отдельного источника. Так надежнее и безопаснее.
  5. хочу измерить напряжение до 110 вольт примерно. Проблема в том что земля не общая. Соединить невозможно (коммутируется мосфетом). Поэтому простой резист. делитель не подходит. Подозреваю нужен ОУ. Не подскажете как подключить? Схема примерно такая: Новый точечный рисунок.bmp
  6. здравствуйте! перерыл поиск но не нашел в чем проблема начитался про boards.txt (для дополнения доп плат) но ни одна моя правка в него не принесла никаких новых меню что может быть не так? что делать? благодарю!
  7. заработала последняя схема но пришлось уменьшить скорость для карты в прошивке мк
  8. благодарю а одним никак да? а если так но биполярным?
  9. Это я и так знаю мне нужно повысить лог уровень не понизить! в прочем погорячился не до конца посмотрел
  10. но вить есть схема с общей базой но у меня почему то не заработала еще у меня есть pnp http://uamper.com/products/datasheet/2N2907.PDF а если и на двух то какую
  11. Здравствуйте поверхностный поиск в Яндексе не дал результатов решил обратится к вам суть в следующем: к мк с логикой 5в подключена карта памяти по spi с логикой 3.3в через буферный элемент здесь все в порядке поскольку сигнал от карты памяти 3.3в из за длинны шнура он теряется и становится ниже уровня лог 1 контроллера 5в вопрос как простым методом усилить его до 5 вольт чтоб он не терялся предполагаю биполярным транзистором но по какой схеме? у меня есть такой он подойдет? http://uamper.com/products/datasheet/2N2222.pdf благодарю.
  12. Я думаю что все же куплю новый БП аналогичный первому и подключу параллельно через два диода проще и быстрее
  13. я действительно думал сделать БП своими руками паять умею плату вытравлю но все просчитать это сложно для меня к тому же тема новая для меня сложно это а ровно зделать можно есть чпу фрезер
  14. Доброго времени суток дорогие форумчане! Собственно собрал я 3д принтер с подогревом стола изначально на БП 12В 20А все работало (но дьявол в деталях) подогрев стола до номинальной темературы непозволительно длительный (20 минут до 100 градусов!) это известная проблема стандартных столов одно из решений здесь коим я и воспользовался. Закономерно что уменьшение сопротивления в 2 раза пропорционально увеличивает ток и мой БП не потянул (БП автора статьи 40А!).В итоге я купил еще один БП 12В 20А но другой, с вентилятором. Запараллив их получил 40 А и все заработало нагрев за две минуты! Все проработало около месяца и однажды при запуске печати поработав минут 20 с небольшим БАХ второй БП издох. Поменял по гарантии но поменянный вообще оказался нерабочим. Вернул деньги и вот сижу и думаю как теперь Надежно организовать нагрев стола подумывая как обойтись без второго БП или если уж с ним то как обеспечить надежность. ВАРИАНТЫ: 1.Силиконовая грелка из китая по ссылке (не реклама) в Киеве не нашел по разумной цене не хотелось бы долго ждать https://ru.aliexpress.com/af/silicone-heater.html?ltype=wholesale&d=y&origin=n&isViewCP=y&catId=0&initiative_id=SB_20160910090526&SearchText=silicone+heater&blanktest=8 2.Изготовление нагревательного стола из печатной платы (подобно обычному нагревательному столу) с параметрами 220 вольт размер нагреваемой части стола 20х20 см. И здесь мне требуется ваш опыт и знания для расчета ширины и длинны дорожек на ней чтоб ничего не сгорело и обеспечить нагрев до 130 градусов 3.Ваши предложения. Как лучше поступить?
  15. Сейчас опробовав linux cnc и поняв что lpt порт из промышенности уйдет не скоро (да на потребительских компах он не нужен но были есть и будут платы расширения lpt порта да и зачастую он есть на материнских платах но не выведен) и комп действительно функциональней будет + функциональность расширяема (скриптами, фичами и т.п.) решил что похоже вы правы Однако на будущее для практики и морального удовлетверения все таки попробую закончить дело до конца
  16. какие ошибки выдает? направьте вывод сюда
  17. Доработка По Контроллера Чпу На Базе Grbl & Mendel присоединяйтесь если интересно http://forum.cxem.net/index.php?showtopic=161394
  18. Начнём пожалуй... Итак сперва сообщение модераторам: тема создана в этом разделе а не ЧПУ поскольку в данном случае больше требуются программисты а не чпушники поэтому просьба не перемещать. Спасибо. Если вы хорошо изучали вопрос создания самодельного станка чпу и 3д принтера то в курсе что эти два устройства по сути одно и тоже - и в принципе состоят из следующих основных элементов: 1.Контроллер 2.драйвера ШД 3.Шаговые двигатели 4.Блок питания 5.Механика, позволяющая в простейшем случае 3 линейные оси(X,Y,Z) а в перспективе ещё и поворотные (A,B,C) (в 3д принтере E0 E1 ...) Обычно в чпу повально используется программа Math3 которая ставится на ПК с winХР превращая эго в контроллер чпу управление производится через лпт порт и в этом решении имеется ряд недостатков: 1. Для по сути простых операций (чтение текстового файла и интерпретация команд) используется целый компьютер! -> дорого $( 2. win xp далеко не система реального времени из чего вытекает что комп будет занят исключительно станком и ничем иным иначе будут теряться шаги и как следствие пороться детали 3. Лпт порт потерял популярность и не соответствует современным реалиям а переходники увеличивают задержки 4. и тд. и тп. по сему альтернатива: GRBL Достоинства: 1. Open Sourse 2. Дешево $) 3. Юсб! 4.Arduino uno / nano 5. ??? Недостатки: 1. нет автономности (чтение g-code с карты памяти), экрана, клавиатуры например как в мерлин 2. 4-я ось имеет эксперементальную поддержку, 5-я или 6-я не поддерживаются вообще Цели проекта: 1. исправить недостатки путём дописывания/переписывания кода 2. скорректировать распиновку в соответствии с ramps 1.4 3. как конечная цель сделать мултиконтроллер чпу/3д принтер (просто смени голову) 4. поддержка repetier host и Universal g-code sender 5.??? 6.PROFIT! Както так... Жду помощи пожеланий и конструктивной критики Кому неинтересно пожалуйста проходите мимо не засоряйте тему пустыми комментариями и демотивациями. Заранее спасибо! Также убедительная просьба ползоватся гуглом/яндексом ПЕРЕД тем как задать вопрос на форуме. ссылки по теме: https://yandex.ua/se...43&clid=1959251 https://github.com/L..._with_Arduino http://arduino34.ru/....php?id=1091011 http://cncmasterkit.....php?f=5&t=4627 https://github.com/g...uring-Grbl-v0.9 https://github.com/p...roller/releases http://xitfilms.ru/o...XNPZGluSFRQUGs= http://sale.panmaneecnc.com/
×
×
  • Создать...