Jump to content
Duhas

Примеры Кода Для Avr

Recommended Posts

А тактовая частота в протеусе, заданная в исходниках и прошитая битами конфигурации контроллера точно совпадает?

Share this post


Link to post
Share on other sites
Posted (edited)
On 19.07.2019 at 22:50, parovoZZ said:

к компаратору таймера

Я использую порт A на attiny для управление светодиодом, к чему вы это написали я не понял ?

Порт A это двунаправленный порт с дополнительными функциями, я его и использую как выход, конкретно пробовал PA0 и PA1 и в обоих случаях получил не корректную работу.

Вот код всего две строки:

    DDRA = 0b00000011;
    PORTA = 0b00000011; 

При этом получаю мигание светодиодом с частотой 12 Гц., есть у кого мысли, что не так.

Edited by alex_f73

Share this post


Link to post
Share on other sites
1 hour ago, alex_f73 said:

При этом получаю мигание светодиодом с частотой 12 Гц., есть у кого мысли, что не так.

А код точно заливается в МК? Может, просто создает видимость?

Я бы делал так - стер память, слил память. Убедился, что там FF везде. Если МК все равно мигает - летит в помойку.

Share this post


Link to post
Share on other sites

Вебинар STM32G0 – новый лидер бюджетных 32-битных микроконтроллеров от STMicroelectronics

Компания Компэл приглашает вас 25 сентября принять участие в вебинаре, который посвящен новому семейству микроконтроллеров STM32G0. Вебинар рассчитан на технических специалистов и тех, кто хорошо знаком с семейством STM32. На вебинаре будут освоены современные методы тестирования производительности микроконтроллеров на примере самых бюджетных 32-битных семейств общего назначения STM32G0 и STM32F0 и проведено их подробное сравнение.

Подробнее

Posted (edited)
14 hours ago, parovoZZ said:

А код точно заливается в МК? Может, просто создает видимость?

Записывается это точно, я выходил и заходил в прошивальщик, читал данные и они есть. 

Если я пишу так:   

DDRA = 0b00000011;
PORTA = 0b00000000; 

То светодиод не горит и не мигает.

Но стоит только подать 1 на выход, он начинает мигать вне зависимости, что потом идет в коде, его уже не потушить.

Светодиод не виноват, вставал на ножку осциллографом. И как назло я сделал первый проект на чистом avr в AtmelStudio и он конечно не мигание светодиодом. И он полностью работает в Протеусе. Зашил его в кристалл и вот...

выяснил, такое поведение и я проверил 2-е attiny из 5 с али.

Заказал еще atmega328, хоть и избыточны, но для проверки так сказать

Edited by alex_f73

Share this post


Link to post
Share on other sites
                     

Литиевые батарейки Fanso в беспроводных датчиках пожарно-охранной сигнализации

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

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

16 hours ago, alex_f73 said:

...есть у кого мысли, что не так.

Не так составлен вопрос и объяснение. Где схема и полный листинг кода? 

Share this post


Link to post
Share on other sites
54 minutes ago, alex_f73 said:

выяснил, такое поведение и я проверил 2-е attiny из 5 с али.

ну так а какие ещё вопросы?

Если так хочется из китая тянуть, то это алчипс или элсисоси. Но 2 тиньки можно и здесь купить с гарантированным результатом.

Мигание как организовано? Мы так до сих пор и не увидели.

Share this post


Link to post
Share on other sites
Posted (edited)

Купил attiny в чипдипе, не реклама и все заработало как надо, ни какой генерации в 12 Гц на выходной ножке. 

В общем с али ерунду какую то прислали, под видом attiny

Edited by alex_f73

Share this post


Link to post
Share on other sites

Можно здесь вопрос задать.

Подскажите пожалуйста есть микроконтроллер, Atmel ATmega128A, как его ресетнуть? И при физическом ресете удалится вся прошивка или нет? "Завис" он немного.

Share this post


Link to post
Share on other sites

Уважаемые, т.к. в программировании полный ноль, кто может написать пару строчек кода для тиньки 13?

Отзовитесь в личку, там расскажу подробно.

 

Share this post


Link to post
Share on other sites

Для "пары строчек" могли бы и здесь написать что нужно.

Share this post


Link to post
Share on other sites
5 часов назад, Alex сказал:

Для "пары строчек" могли бы и здесь написать что нужно.

Прикрутить пульт к нему РЦ5, на выходе 1 оптопара и реле.

Share this post


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

Прикрутить пульт к нему РЦ5

Да вы, батенька, оптимист! :) Прикрутить, конечно, можно, но вот на счет "пары строк" - это вы "слегка" перегнули палочку. 

Share this post


Link to post
Share on other sites

Я смотрю в основном поляляля так мы впереди планеты всей, а по делу так в кусты. Пара или 10 пар я понятия не имею, кто умеет напишет в личку и там обо всем договорится. 

Share this post


Link to post
Share on other sites

На какие ножки контроллера лучше вешать ИК приёмник, на какую - Реле, на какие оптопары.

попробую сделать схему

Share this post


Link to post
Share on other sites

Для выбранного вами МК есть только одно небольшое ограничение: вывод RST микроконтроллера лучше не использовать. Остальные - равнозначны (кроме выводов питания, естественно) - можно назначать для них любые функции - как входов, так и выходов.

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...

  • Similar Content

    • By Вячеслав_НС
      Здравствуйте ! подскажите , какую лучше библиотеку использовать (и где ее взять) для управления i2c atmega8 в atmel studio 7  .  задача - управлять atmega8 по i2c ,  цап  PCF8591T .
      понимаю , в интернете много примеров и библиотек , но хотелось бы пример максимально простой и точно рабочий . т.к. пока что все мои попытки не привели к успеху ... то Atmel Studio 7 при компиляции ругается на несуществующий файл ( к примеру - "stream.h") при использовании библиотеки i2c , то еще какие то грабли .
    • By Sofia Vin
      Предлагаем проектную работу в Москве:
      Микроконтроллер STM32F103.
        
      Есть встроенный код с использованием функций библиотеки FreeRTOS, код имеет описанный протокол для связи с внешним миром.
        
      Необходимо проводить доработку кода под задачи программиста верхнего уровня и его тестирование в составе оборудования. 
      Работа в лаборатории (м.Университет) и удаленно. 
      Оплата по договоренности.
      Если Вы обладаете опытом схемотехнического проектирования и программирования микроконтроллеров, и Вас заинтересовала данная возможность, ждем Ваши отклики по контактным данным:
      8 (925) 023-60-02   Алексей
      E-mail: nassa@marathon.ru
       
    • 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. К сожалению, в гугле не нашел подробной инструкции, а я в электронике я дуб дубом


  • Сообщения

    • А что под этим подразумевается?  Измеренные искажения? Топовая комплектуха? Продвинутая схемотехника или грамотный маркетинг?
    • Почему я заговорил вообще в этой ветке? Поразила тщательность показанного здесь, с любовью все сделано и достаточно подробно для повторения о чем только можно позавидовать и погрустить что в других ветках нет такого. Но! Не самый лучший усилитель, к сожалению... Да, когда то в СССР это было актуально небыло в продаже ничего и Интернета небыло... Сегодня было бы приятнее если бы появилась ветка с достойным усилителем высшего Hi-End для повторения... Звук которого был бы не хуже Дартзела. Чего не хватает для этого умов или деталей? Думаю то и другое есть... А ковырять Ланзар? Нет уж... таких усилителей сегодня в продаже валом и лучше... за копейки...
    • вот к примеру таблица по некоторым моторам в принтере
    • Бабушке Саре очень понравился скайп: - Нет, вы таки посмотрите, какая вещь! И вроде бы у нас гости были, а ничего и не съели ...
    • @BARS_ Да не услышит тебя Jaguar это гость из 2016, ради чего вся эта писанина, я давно забросил убеждать людей в силе CMSIS, пусть что хотят то и делают... просто я им на форумах не помогаю, потому как не могу)))
    • Тоже с дуру) и деньги были - Чет с в стабильность деревянного поверил) сейчас опа еще идет - у нас продажи в металле упали и хорошо - уже практически месяц с работой опа - зная по опыту - нас первым бьет - так что после н.г я уже ничего хорошего не жду - придумываю еще один бизнес - весной будем посмотреть - вечная задница в грузоперевозкам уже достала.
×
×
  • Create New...