Jump to content
Sign in to follow this  
dikabraz

Atmega128 , Разводка Отладочной Платы.

Recommended Posts

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

Посмотрите, пожалуйста, разводку, может, накосячил где? Перепроверял много раз, скорее всего взгляд "замылился"

Плата не ахти, конечно, но буду стараться лучше=)

post-187256-0-91321100-1422432276.jpg

atm128.lay

Edited by dikabraz

Share this post


Link to post
Share on other sites

Меня как-то раз попросили девайс тупо скопировать и вот оставил себе пару штук таких, меги 128. И 64. Можно припахивать и играться. Вот только плс нету. Ну впринципе ото же девайс)))post-166713-0-25175100-1422434790_thumb.jpg

Share this post


Link to post
Share on other sites

Меня как-то раз попросили девайс тупо скопировать и вот оставил себе пару штук таких, меги 128. И 64. Можно припахивать и играться. Вот только плс нету. Ну впринципе ото же девайс)))post-166713-0-25175100-1422434790_thumb.jpg

Нет у меня технологий для сквозной металлизации)

Мне бы в своей печатке найти косяк

Share this post


Link to post
Share on other sites

Особенности схемотехники и трассировки печатных плат для STM32WB55

Разработка новых устройств на базе беспроводного микроконтроллера STM32WB от STMicroelectronics может быть сделана в короткий срок, если выполнять некоторые важные правила и воспользоваться готовыми конструктивными решениями и рекомендациями инженеров ST.

Читать статью

это я на завод заказывал)))

кондеры от кварца на + посажены, косяк))

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

Edited by Viktor26

Share this post


Link to post
Share on other sites

это я на завод заказывал)))

Да, так и подумал) Вряд ли у вас дома валяется хлористый палладий и прочее извращение=)

А по плате что скажете?

Share this post


Link to post
Share on other sites
                     

CoolGaN - на предельной скорости коммутации!

Решения на галлий-нитриде (GaN) обладают фундаментальными преимуществами перед кремнием. В частности, имея более высокую критическую напряжённость электрического поля, в сравнении с традиционными кремниевыми транзисторами, транзисторы на основе галлий-нитрида обладают выдающимися динамическими характеристиками, что позволяет коммутировать их на высоких частотах. Семейство CoolGaN™ – это именно то, что необходимо, чтобы поднять ваши устройства на принципиально новый уровень. Мы собрали все самые интересные материалы по данной теме на одной странице.

Читать статьи

я в четвертом посте свое сообщение правил вы прочитали его?

Нет, это стаб на 3.3в, ЛМка, у нее правая нога- вход, левая- земля, корпус- выход, для питания периферии

Share this post


Link to post
Share on other sites

а ноги 62 и 63 через конденсатор это что, я обычно видел ноги 63 и 64 через конденсатор делают

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

Edited by Viktor26

Share this post


Link to post
Share on other sites

а ноги 62 и 63 через конденсатор это что, я обычно видел ноги 63 и 64 через конденсатор делают

Таки чтобы помех меньше было, землю ацп на землю через конденсатор, вроде норм, разве не так?

А 64я - это же плюс ацп, ее к плюсу подключил, рядом с подключением еще конденсатор на землю в 100нФ.

Share this post


Link to post
Share on other sites

ага точно это я ошибся. даташит открыл и посмотрел и сразу ясно все стало))

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

Share this post


Link to post
Share on other sites

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

Подключение ровно такое же, моси-моси, мисо-мисо, sck-sck и у 128, и у 16. Проблема не в этом.

Посмотрел старую отладочную плату, там есть площадка для подтяжки PEN к +, НО! он не подключен был, и работал. Без проблем причем

Share this post


Link to post
Share on other sites

а я вот что нашел)))

Несмотря на то, что при последовательном программирования используется тот же модуль SPI, что и при обычной работы микроконтроллера, имеется одно важное отличие: выводы MOSI/MISO модуля ввода-вывода SPI, которые совмещены с PB2 и PB3, не используются при программировании. Вместо них используются PE0 и PE1 для ввода и вывода данных при последовательном программировании

http://www.gaw.ru/html.cgi/txt/doc/micros/avr/arh128/19_2.htm

короче вот здесь все написано и табличка есть

Edited by Viktor26

Share this post


Link to post
Share on other sites

а я вот что нашел)))

Несмотря на то, что при последовательном программирования используется тот же модуль SPI, что и при обычной работы микроконтроллера, имеется одно важное отличие: выводы MOSI/MISO модуля ввода-вывода SPI, которые совмещены с PB2 и PB3, не используются при программировании. Вместо них используются PE0 и PE1 для ввода и вывода данных при последовательном программировании

http://www.gaw.ru/ht...arh128/19_2.htm

короче вот здесь все написано и табличка есть

Етитькина титька.

Я же знал это. Табличку помнил. Вот собака.

Спасибо огромное! Мой склероз меня доканает.=)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Similar Content

    • By vbh99
      Как бороться с квадратиками при печати в Sprint-Layout 6? Пробовал выводить в PDF, но и там они появляются рандомно и только в файлах из спринта. Всё остальное сам по себе притер печатает нормально (фото кота, например, тексты и т.д.) Принтер LaserJet 6L.

      Dip8 to Sip8.lay6
    • By pndbr
      Здравствуйте. Может у кого есть печатная плата для отладочной платы на atmega8,32,128 в корпусе tqfp или attiny2313.
      Накопилось много распая с незалоченными камнями и очень хочется пустить их в дело и наконецто научиться хоть как-то программировать. Рисовать печатку самому не хватает опыта. Может у кого есть наработки? Прошу поделиться.
      Поиск выдает только отладочные платы в дип. А если и есть tqfp то в ардуиновском формате т.е без доп перефирии (же дисплеев,клавиатуры,7 сегментных индикаторов,потенциометров,энкодеров..и.т.д)
    • By -Ilnur-
      Приветствую.
      Возникла следующая проблема: использовал ATmega2560 с библиотекой TimerOne - проблем не было.
      После перехода на ATmega128 появилась ошибка: "'TIMSK1' was not declared in this scope".
      Покопавшись в интернете выяснил - дело в том, что названия некоторых регистров таймера ATmega128 отличается от ATmega2560.
      Вообщем это и надо поправить.

      Может есть тут кто разбирается в таймерах ATmega? Готов финансово отблагодарить за помощь.
      Код из TimerOne.h, требующий исправления.
      #ifndef TimerOne_h_ #define TimerOne_h_ #if defined(ARDUINO) && ARDUINO >= 100 #include "Arduino.h" #else #include "WProgram.h" #endif #include "config/known_16bit_timers.h" #define TIMER1_RESOLUTION 65536UL // Timer1 is 16 bit class TimerOne { #if defined(__AVR__) public: //**************************** // Configuration //**************************** void initialize(unsigned long microseconds=1000000) __attribute__((always_inline)) { TCCR1B = _BV(WGM13); // set mode as phase and frequency correct pwm, stop the timer TCCR1A = 0; // clear control register A setPeriod(microseconds); } void setPeriod(unsigned long microseconds) __attribute__((always_inline)) { const unsigned long cycles = (F_CPU / 2000000) * microseconds; if (cycles < TIMER1_RESOLUTION) { clockSelectBits = _BV(CS10); pwmPeriod = cycles; } else if (cycles < TIMER1_RESOLUTION * 8) { clockSelectBits = _BV(CS11); pwmPeriod = cycles / 8; } else if (cycles < TIMER1_RESOLUTION * 64) { clockSelectBits = _BV(CS11) | _BV(CS10); pwmPeriod = cycles / 64; } else if (cycles < TIMER1_RESOLUTION * 256) { clockSelectBits = _BV(CS12); pwmPeriod = cycles / 256; } else if (cycles < TIMER1_RESOLUTION * 1024) { clockSelectBits = _BV(CS12) | _BV(CS10); pwmPeriod = cycles / 1024; } else { clockSelectBits = _BV(CS12) | _BV(CS10); pwmPeriod = TIMER1_RESOLUTION - 1; } ICR1 = pwmPeriod; TCCR1B = _BV(WGM13) | clockSelectBits; } //**************************** // Run Control //**************************** void start() __attribute__((always_inline)) { TCCR1B = 0; TCNT1 = 0; // TODO: does this cause an undesired interrupt? resume(); } void stop() __attribute__((always_inline)) { TCCR1B = _BV(WGM13); } void restart() __attribute__((always_inline)) { start(); } void resume() __attribute__((always_inline)) { TCCR1B = _BV(WGM13) | clockSelectBits; } //**************************** // PWM outputs //**************************** void setPwmDuty(char pin, unsigned int duty) __attribute__((always_inline)) { unsigned long dutyCycle = pwmPeriod; dutyCycle *= duty; dutyCycle >>= 10; if (pin == TIMER1_A_PIN) OCR1A = dutyCycle; #ifdef TIMER1_B_PIN else if (pin == TIMER1_B_PIN) OCR1B = dutyCycle; #endif #ifdef TIMER1_C_PIN else if (pin == TIMER1_C_PIN) OCR1C = dutyCycle; #endif } void pwm(char pin, unsigned int duty) __attribute__((always_inline)) { if (pin == TIMER1_A_PIN) { pinMode(TIMER1_A_PIN, OUTPUT); TCCR1A |= _BV(COM1A1); } #ifdef TIMER1_B_PIN else if (pin == TIMER1_B_PIN) { pinMode(TIMER1_B_PIN, OUTPUT); TCCR1A |= _BV(COM1B1); } #endif #ifdef TIMER1_C_PIN else if (pin == TIMER1_C_PIN) { pinMode(TIMER1_C_PIN, OUTPUT); TCCR1A |= _BV(COM1C1); } #endif setPwmDuty(pin, duty); TCCR1B = _BV(WGM13) | clockSelectBits; } void pwm(char pin, unsigned int duty, unsigned long microseconds) __attribute__((always_inline)) { if (microseconds > 0) setPeriod(microseconds); pwm(pin, duty); } void disablePwm(char pin) __attribute__((always_inline)) { if (pin == TIMER1_A_PIN) TCCR1A &= ~_BV(COM1A1); #ifdef TIMER1_B_PIN else if (pin == TIMER1_B_PIN) TCCR1A &= ~_BV(COM1B1); #endif #ifdef TIMER1_C_PIN else if (pin == TIMER1_C_PIN) TCCR1A &= ~_BV(COM1C1); #endif } //**************************** // Interrupt Function //**************************** void attachInterrupt(void (*isr)()) __attribute__((always_inline)) { isrCallback = isr; TIMSK1 = _BV(TOIE1); } void attachInterrupt(void (*isr)(), unsigned long microseconds) __attribute__((always_inline)) { if(microseconds > 0) setPeriod(microseconds); attachInterrupt(isr); } void detachInterrupt() __attribute__((always_inline)) { TIMSK1 = 0; } static void (*isrCallback)(); static void isrDefaultUnused(); private: // properties static unsigned short pwmPeriod; static unsigned char clockSelectBits; #endif }; extern TimerOne Timer1; #endif  
    • By Vlad Zubarev
      Доброго времени суток!  Кто разбирается с Atmega128,  ассемблером и кому не жалко времени,  пожалуйста помогите. 
      Как можно корректировать скорость падения маятника (он должен постеменно набирать скорость падения и плавно замедляться к верхней точке)... Какие данные нужно менять?!  Спасибо! 
      логин маятник 2.zip

    • By star_ok
      Требуется помощь в реализации некого микроконтроллера+ написания кода прошивки на с++.
      Контроллер будет работать на ATMEGA128A
      Требуется принципиальная схема некоторой части функционала, а именно:
      1. Управление LED лентой суммарный ток потребление ленты 7А, напряжение питания -12в. Нужно подобрать mosfet(N-канал) и обвзяку, привести пример кода для управление ШИМ. Находил тут примеры контроллеров для управление лентой, но у меня почему-то шим больше 5В не получился.
      2. Управление 16 двигателями 12В(0.15А каждый ), управление через ШИМ. Но не отдельно для каждого двигателя, а по 8. Т.е. 1 шим-канал на 8 двигателей. Я так понимаю что для этого можно будет использовать 1 шим контроллера+ сдвиговый регистр на 8 портов. Двигатели одновременно не будут работать. Будут подключаться по-очереди. Тоже нужен подбор компонентов, схема подключения, пример кода на си++
      3. Аналоговое чтение, 16 каналов принципиальная схема подключения(я так понимаю что там только токоорграничивающий резистр и конденсатор к земле)+ пример кода для чтения из канала(аналог функции analogRead() в ардуино)
      4. Схема обвязки микроконтроллера не нужна- она типовая, есть у меня.
       
      отвечу на вопросы. Напишите кто готов сделать, сроки и цену.
       
       
  • Сообщения

    • да ни куда он - навальный - не денется) недавно видео смотрел его - про самолетик и самую дорогую тп - молодчик ВТБ - совсем не за навального - но никто толком из типа *оппозиция * ничего не делает - ток ля-ля ))
    • Что ты предлагаешь делать и как поступать, чтобы остановить вражеский захват наших территорий? Кого ты считаешь друзьями и кто продвигает антикатайское движение? Ведь само по себе и без лидера оно никуда не двинется. Кто его финансирует?
    • Хех ... , а почему такой "зоопарк" кондеев до , шунта ??? До , шунта , ставлю не более (а даже менее ибо стараюсь эту ёмкость уменьшить по максимуму) 1000 мкФ , чтобы хоть какая-то мал мальски ёмкость была , достаточная чтобы при КЗ не "жужжало"  , а вот после шунта всё остальное , ёмкое и зело тяжёлое. Почему ??? А подумай что будет после глухого КЗ на клеммах и , не только. Когда после КЗ произойдёт переход от ограничения тока к ограничению напряжения. Ёмкость , которая расположена до шунта , её шунт "не видит" , в смысле что не будет ограничивать ток её заряда после КЗ , когда эта ёмкость фактически пустая как бубен. Ну и на затравку из практики , при 17В напряжения , ёмкость 3300 мкФ , которую я присоединял по ходу работы ИИПа к его клеммам , у меня "зажигала" ограничение тока на отметке чуть более ~ 15А. Не было бы токовой ограничилки = ИИП однозначно в ремонт и скорее всего это же самое ты сейчас поимел с тяжёлой гирляндой кондюков до , шунта.
    • А еще можно 2,2мкФ провернуть на 90 градусов по часовой стрелке относительно правого вывода, тогда  22к сдвинуть вправо к 6 выводу МС. А резистор 1к повернуть на 90 градусой и провести к затвору под резистором 22к. Может, еще чуть фен-шуйнее станет.
    • а вы забавный...  требовать понижающий трансформатор для устройства которое питается от сети 220в это круто... вам нужен тр-тр 220/120 или 220/127  30-50Вт  , включенный как повышающий.
    • Набор разработчика CC1200DK на 868МГц + модули CC1200EMK-420-470 на 433МГц Новый. 20т р.
    • В некоторых случаях удобнее воспользоваться конвертером без всяких переделок ... https://www.google.com/search?q=автомобильный+конвертер+укв+фм&sxsrf=ACYBGNR3YuH2U0iwrvdzjc_iJXGVRJTjPg:1576428789044&source=lnms&tbm=isch&sa=X&ved=2ahUKEwiW5u_vjrjmAhXtmIsKHQzWCHsQ_AUoAXoECAwQAw&biw=1678&bih=728&dpr=1.13
×
×
  • Create New...