Jump to content

Recommended Posts

Объясните т.к. я полный товарищ дерево в програмировании , возможно ли прошивкой ATMEGA8 в корпусе PDIP прошить ATMEGA8L в корпусе TQFP без потери функций изделия .(Хочется одно из изделий сделать более миниатюрным )

Share this post


Link to post
Share on other sites
Только что, Yuretskok сказал:

Нет. Нумерация выводов другая.

При чем тут нумерация выводов? Прошивка подойдет, а печатку разрабатывать под другой корпус все равно.

Share this post


Link to post
Share on other sites

Тестирование литиевых батареек Fanso в нормальных условиях

Компания Компэл, эксклюзивный дистрибьютор компании Fanso, предлагает широкий перечень ЛХИТ, позволяющий подобрать элемент питания, в наибольшей степени соответствующий конкретным требованиям. Для тестирования параметров, указанных в Datasheet, специалисты Компэл организовали в апреле 2019 г. полугодовой тест на постоянный разряд в нормальных условиях четырех наиболее популярных моделей литий-тионилхлоридных и литий-диоксидмарганцевых батареек Fanso.

Посмотреть результаты первого среза

50 минут назад, ARV сказал:

При чем тут нумерация выводов?

Попробовал в протеусе развести схему заменив атмегу8 на атмегу8л забил прошивку  протеус ругается -мол прошивка не та .Имена пинов развел как у атмеги8. 

ATMEGA8L-PINOUT-4.jpg

Share this post


Link to post
Share on other sites
Только что, БАРЕТТЕР сказал:

протеус ругается -мол прошивка не та

Интересно, как протеус по прошивке опознал "не тот корпус"? В прошивке об этом нет ни слова!

Share this post


Link to post
Share on other sites

Новое бюджетное семейство микроконтроллеров STM32G0 и планы его развития

Семейство STM32G0 сочетает в себе лучшие качества представителей семейств STM32F0 и STM32L0 - относительно высокую производительность и низкое энергопотребление. Модели STM32G0 имеют упрощенную схему питания, улучшенную периферию, систему тактирования и быстрые порты в/в, доп.средства защиты ПО, повышенную устойчивость к статическим разрядам, широкий ассортимент корпусов, обновленные пакеты библиотек для STM32CubeMX. STMicroelectronics планирует развивать новое семейство.

Подробнее...

2 минуты назад, ARV сказал:

В прошивке об этом нет ни слова!

Тогда объясните такой факт, почему под одно и тоже устройство есть прошивки под dip и под tqfp корпуса?

Share this post


Link to post
Share on other sites
Posted (edited)

Единственное различие в atmega8 разной корпусировки - это наличие в TQFP двух дополнительных входов АЦП, которых нет в DIP - кристаллы внутри корпусов одинаковые, соответственно, вcе регистры и т.п. периферия тоже одинаковые.

А прошивки разные могут быть потому, что выводы расположены иначе, и то, что в DIP удобно выводить на PORTD5, например, для TQFP по трассировке оказывается неудобным, и его заменяют, например, на PORTB0. Ну и дополнительные входы АЦП тоже могут быть задействованы (что, конечно, вряд ли, ибо они "кривые")

Edited by ARV

Share this post


Link to post
Share on other sites
50 минут назад, БАРЕТТЕР сказал:

Попробовал в протеусе развести схему заменив атмегу8 на атмегу8л

А не смущает, что мега8 и мега 8несколько разные МК? Как минимум по максимальной тактовой частоте. У обычной меги она до 16МГц, а у L - до 8МГц.

Share this post


Link to post
Share on other sites
56 минут назад, Yuretskok сказал:

Тогда объясните такой факт, почему под одно и тоже устройство есть прошивки под dip и под tqfp корпуса?

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

Share this post


Link to post
Share on other sites
24 минуты назад, BARS_ сказал:

У обычной меги она до 16МГц, а у L - до 8МГц.

В моём устройстве фьюз стоит на 8МГц ,А делать я хочу сей девайс . На большой атмеге я его собрал и загорелось теперь миниатюризировать до минимума .

2019-04-24_145505.jpg

Share this post


Link to post
Share on other sites

А почему тогда и для протеуса проекты разные бывают?

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
Guest ПЫМ
2 часа назад, БАРЕТТЕР сказал:

Попробовал в протеусе развести схему заменив атмегу8 на атмегу8л

Ну да,в программе(прошивке) указан определённый контроллер,вот он и ругается.Можно попробовать попросить автора устройства изменить тип контроллера под ваш(делов на минуту)

Share this post


Link to post
Share on other sites
27 минут назад, Yuretskok сказал:

А почему тогда и для протеуса проекты разные

По той же причине. От корпуса ничего не зависит. Можно открыть даташит и убедиться в этом.

Share this post


Link to post
Share on other sites
26 минут назад, Гость ПЫМ сказал:

Ну да,в программе(прошивке) указан определённый контроллер,вот он и ругается

Не пиши чушь. Тип там один, AtMega8.

Share this post


Link to post
Share on other sites

А зачем вам с буквой L. Для ATMEGA8 есть три корпуса - Dip (28), TQFP (32), MLF (32).

Я собирал программатор Usbasp. Была схема под Dip, я собрал в корпусе TQFP. Просто выводы другие и все.

atmega8.pdf

Share this post


Link to post
Share on other sites
3 часа назад, Гость ПЫМ сказал:

Можно попробовать попросить автора устройства изменить тип контроллера под ваш(делов на минуту)

Афтар молчит как партизан 

2 часа назад, nvju1967 сказал:

 TQFP (32),

для минитюаризации девайса

Share this post


Link to post
Share on other sites

Автор не при чем. Уже 3 человека вам сказали, что корпус значения не имеет для прошивки

Отправлено с моего Nexus 5 через Tapatalk

Share this post


Link to post
Share on other sites
9 часов назад, БАРЕТТЕР сказал:

...возможно ли прошивкой ATMEGA8 в корпусе PDIP прошить ATMEGA8L в корпусе TQFP без потери функций изделия ...

Другого варианта просто нет, а вот схему необходимо разводить согласно разницы нумерации выводов между DIP и TQFP.

Share this post


Link to post
Share on other sites
Posted (edited)
2 часа назад, BARS_ сказал:

Уже 3 человека вам сказали, что корпус значения не имеет для прошивки

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

Edited by БАРЕТТЕР

Share this post


Link to post
Share on other sites

Как говорил мой знакомый лет 30 назад - правильно собранная схема работает сразу, потом только подстройка. Этим и следую всю свою жизнь. Проверка, проверка и еще раз проверка монтажа.

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. 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...

  • Similar Content

    • By Антон Плюшкин
      В общем есть небольшая тривиальная задача - сделать свитюльку. Контроллер управляет светодиодиками, цвета меняются, людишки довольны.
      Схема проста: Attiny44a -> 2n3904 x3 -> RGB-светодиод.
      Собрал, протестил, всё норм, но!
      Как только в коде я использую функцию задержки - _delay_ms (util/delay.h) - контроллер повисает!
      #define F_CPU 16000000UL #include <avr/io.h> #include <util/delay.h> int main(void) { // Input/Output Ports initialization // Port A initialization // Function: Bit7=Out Bit6=Out Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In DDRA=(1<<DDA7) | (1<<DDA6) | (0<<DDA5) | (0<<DDA4) | (0<<DDA3) | (0<<DDA2) | (0<<DDA1) | (0<<DDA0); // State: Bit7=0 Bit6=0 Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T PORTA=(0<<PORTA7) | (0<<PORTA6) | (0<<PORTA5) | (0<<PORTA4) | (0<<PORTA3) | (0<<PORTA2) | (0<<PORTA1) | (0<<PORTA0); // Port B initialization // Function: Bit3=In Bit2=Out Bit1=In Bit0=In DDRB=(0<<DDB3) | (1<<DDB2) | (0<<DDB1) | (0<<DDB0); // State: Bit3=T Bit2=0 Bit1=T Bit0=T PORTB=(0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0); // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: 16000,000 kHz // Mode: Phase correct PWM top=0xFF // OC0A output: Non-Inverted PWM // OC0B output: Non-Inverted PWM // Timer Period: 0,031875 ms // Output Pulse(s): // OC0A Period: 0,031875 ms Width: 0 us // OC0B Period: 0,031875 ms Width: 0 us TCCR0A=(1<<COM0A1) | (0<<COM0A0) | (1<<COM0B1) | (0<<COM0B0) | (0<<WGM01) | (1<<WGM00); TCCR0B=(0<<WGM02) | (0<<CS02) | (0<<CS01) | (1<<CS00); TCNT0=0x00; OCR0A=0x00; OCR0B=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: 16000,000 kHz // Mode: Ph. correct PWM top=0x00FF // OC1A output: Non-Inverted PWM // OC1B output: Disconnected // Noise Canceler: Off // Input Capture on Falling Edge // Timer Period: 0,031875 ms // Output Pulse(s): // OC1A Period: 0,031875 ms Width: 0 us // Timer1 Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=(1<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (1<<WGM10); TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (1<<CS10); TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 0 Interrupt(s) initialization TIMSK0=(0<<OCIE0B) | (0<<OCIE0A) | (0<<TOIE0); // Timer/Counter 1 Interrupt(s) initialization TIMSK1=(0<<ICIE1) | (0<<OCIE1B) | (0<<OCIE1A) | (0<<TOIE1); // External Interrupt(s) initialization // INT0: Off // Interrupt on any change on pins PCINT0-7: Off // Interrupt on any change on pins PCINT8-11: Off MCUCR=(0<<ISC01) | (0<<ISC00); GIMSK=(0<<INT0) | (0<<PCIE1) | (0<<PCIE0); // USI initialization // Mode: Disabled // Clock source: Register & Counter=no clk. // USI Counter Overflow Interrupt: Off USICR=(0<<USISIE) | (0<<USIOIE) | (0<<USIWM1) | (0<<USIWM0) | (0<<USICS1) | (0<<USICS0) | (0<<USICLK) | (0<<USITC); // Analog Comparator initialization // Analog Comparator: Off // The Analog Comparator's positive input is // connected to the AIN0 pin // The Analog Comparator's negative input is // connected to the AIN1 pin ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0); ADCSRB=(0<<ACME); // Digital input buffer on AIN0: On // Digital input buffer on AIN1: On DIDR0=(0<<ADC1D) | (0<<ADC2D); // ADC initialization // ADC disabled ADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0); unsigned char VL_OCR0A = 0, VL_OCR0B = 0, VL_OCR1A = 0; OCR0A = 0; OCR0B = 0; OCR1A = 0; while(1) { _delay_ms( 100 ); VL_OCR0A = VL_OCR0A + 1; VL_OCR0B = VL_OCR0B + 1; VL_OCR1A = VL_OCR1A + 1; if( VL_OCR0A >= 250 ){ VL_OCR0A = 0; } if( VL_OCR0B >= 250 ){ VL_OCR0B = 0; } if( VL_OCR1A >= 250 ){ VL_OCR1A = 0; } OCR0A = VL_OCR0A; OCR0B = VL_OCR0B; OCR1A = VL_OCR1A; } } Т.е. если указать задержку в начале цикла, то светодиод не светится вообще.
      Если задержку убрать - светодиод немного подсвечивает всеми цветами.
      while(1) { _delay_ms( 100 ); // <--- ЗАДЕРЖКА --- VL_OCR0A = VL_OCR0A + 1; VL_OCR0B = VL_OCR0B + 1; VL_OCR1A = VL_OCR1A + 1; if( VL_OCR0A >= 250 ){ VL_OCR0A = 0; } if( VL_OCR0B >= 250 ){ VL_OCR0B = 0; } if( VL_OCR1A >= 250 ){ VL_OCR1A = 0; } OCR0A = VL_OCR0A; OCR0B = VL_OCR0B; OCR1A = VL_OCR1A; } Где я накосячил?
      З.Ы.: Замечаний по поводу оптимизации кода, излишних переменных и п.р. прошу не писать - изощряюсь как могу ибо не пойму почему не работает
    • Guest Денис
      By Guest Денис
      В общем, есть такое чудо китайской техники (фото)
      Что оно может:
      1. Заряжаться через microUSB порт
      2. Кнопка вкл/выкл, она же переключает режимы
      3. 3 режима свечения светодиода (он светит разными цветами)
      Что я хочу сделать:
      1. Пункты 1 и 2 выше
      2. Разнообразить количество режимов, переливание статичный цвет и тд...
      Вопрос: как это сделать? что купить?

      P.S. К сожалению, в гугле не нашел подробной инструкции, а я в электронике я дуб дубом


    • By bustamax
      Привет хочу сделать лазерный проектор по типу элт монитора. Из vga разъёма выходят 2 Синала срочной и кадровой развёртки. Со строчной разобрался. Вопрос по кадровой. Она будет реализована с помощью гальванометра который после каждой строки отклоняет зеркало на какой то угол ( пускай строк 480 тогда если взять напряжение управления гальво от 0 до 10 вольт и шаг задать 0,01 в - будет 1000 строк) даже если строк будет 720 в 1000 они уместятся.
      Так вот принцип придумал такой - с выхода Hsync поступает сигнал строки - микросхема прибавляет пускай напряжение +0,01 вольт, затем поступает 2й сигнал от Hsync микросхема прибавляет ещё 0,01 вольт ( напряжение 0,02) наш гальво отклонился уже до 3й строки и так далее пока не поступит сигнал VSYNC о смене кадра - Гальво возвращается в 0.
      Хотя правильней вот так:
      Либо сделать что бы гальво двигался при отсутствии сигнала Hsync - скажем поступает сигнал строчной развёртки отрабатывает строчная развертка затем сигнал становится логическим 0 и тут срабатывает гальво и т.д пока не придёт сигнал от vsync (логическая 1).
       
      по факту схема даж считать не должна - есть сигнал прибавляем есть другой сигнал сбрасываем
       Я в электронике логический 0 но спаять по приведённой схеме смогу)
      если кто поможет спасибо
       
       
    • By small girl
      Привет, ребят! Кто возьмется написать на С протокол взаимодействия для сети микроконтроллеров. База: STM32 с bluetooth модулем HC-06,- slave. ПК - master?

      За вознаграждение
    • By LegionKC
      Добрый день.
      Экспериментирую с платой TP4056 и MK ATmega8, конкретнее - пытаюсь собрать простенькое зарядное устройство с выводом параметров при зарядке/разрядке на АЦП МК. Для измерения тока нашел ACS712. Думаю, что получится выводить ток при зарядке (т.е. когда идет питание на TP4056 и нагрузка отключена) и при разрядке (питание выключено, нагрузка подключена). Нагрузка - резистор. Возникла проблема с измерением напряжения на АКБ. Вернее, проблема с отсутствием идей как это сделать. Может какую-нибудь схему делителя напряжения нужно сделать? Прошу помочь советом. Схему из пэинта прилагаю.
      Спасибо.
       

×
×
  • Create New...