Программирование МК AVR



Помечено: 

Просмотр 15 сообщений - с 1 по 15 (из 56 всего)
  • Автор
    Сообщения
  • #10143
    Narod Stream
    Хранитель

    Здесь можно обсудить проблемы, связанные с программированием микроконтроллеров AVR.

    #11040
    DimanLM
    Участник

    Всем привет. Повторил урок №20 там где вывод температуры на LCD 1602 температура отображается все отлично. После этого решил собрать градусник, но для индикации взял 7-ми сегментный индикатор, из урока №20 взял файлы: DS18B20.c, DS18B20.h, main.h имена могут отличаться от оригиналов, но содержимое тоже. Индикаторы запустил по уроку №11 — динамическая индикация. Микроконтроллер взял ATTiny2313A.
    Так вот это месево уже три месяца не могу запустить. Помогите пожалуйста.

    Вот ссылка на архив с проектом в папке файл для протеуса (.DSN)
    https://cloud.mail.ru/public/9dT8/aVYhRyidz

    #11250
    Dmitriy
    Участник

    Добрый день!
    Подскажите, правильно ли я использую команды по ассемблерным вставкам в коде, написанном в Atmel Studio 7:
    __asm__(«cli»);
    __asm__(«sei»);
    __asm__(«nop»);
    В CodeVisionAVR 4, в котором я начал изучать Си и программирование микроконтроллеров, синтаксис несколько другой.
    Судя по отсутствию ошибок в Atmel Studio 7 при компиляции кода, вроде всё работает. Но хотелось бы уверенности. Также обратил внимание, что в одном из хед-файлов есть макроподстановки в виде sei(); и cli(); Но для команды nop макроподстановки в виде nop(); нет.

    #12497
    Pavel
    Участник

    Доброго времени суток! Хотелось бы увидеть урок по теме DHT11 и DHT22 (что наиболее актуально). Спасибо!

    #12504
    Narod Stream
    Хранитель

    DimanLM.
    К сожалению, я не располагаю временем тестить проекты, своих чересчур много. Возможно, кто занимается плотно с такими МК, посмотрят.

    #12505
    Narod Stream
    Хранитель

    Pavel,
    Я давно хотел освоить подобные датчики. Посмотрел документацию на первый — точность слабовата, а вот второй меня заинтересовал.

    #13478
    daswindows
    Участник

    Pavel и Narod Stream, заказал себе датчики DHT22, как придут, оттестирую и отпишусь.
    По поводу датчиков DHT11, у них большая очень погрешность. На макетной плате собрал 4 датчика. все 4 показывали разную температуру. погрешность +-2 градуса по цельсию

    #13567
    gogaze
    Участник

    Подскажите: можно ли в Atmel Studio сделать переменную из _delay_ms (50); 50=переменная типа так

    unsigned int e;

    e=50

    Я пробовал — компилятор выдает __builtin_avr_delay_cycles expects a compile time integer constant и ссылается на delay.h строку __builtin_avr_delay_cycles(__ticks_dc);

    #13596
    daswindows
    Участник

    [URL=http://vfl.ru/fotos/ebfdeeb119773657.html][IMG]http://images.vfl.ru/ii/1513024229/ebfdeeb1/19773657_m.jpg[/IMG][/URL]

    Фото с датчиков 6 шт подключены паралельно

    #13628
    Pavel
    Участник

    Братцы!Проблема! ATTiny13 не выходит из спящего режима по прерыванию о переполнении таймера. Help me! Контроллеры из Китая.

    #13653
    volw
    Участник

    Добрый день! Narod Stream, хотелось бы увидеть уроки про ПИД регулятор на AVR в вашем исполнении.

    #13654
    Berg
    Участник

    Так получилось, что у меня появилась макетная плата
    под микроконтроллер ATmega16. На что надо обращать внимание
    при написание (переписывания программ из уроков под ATmega8)
    под микроконтроллер ATmega16.

    #13657
    gogaze
    Участник

    По-моему надо начать с даташита, найти соответствующие выводы на МК и под них переделать программу.

    #13661
    DJPashA
    Участник

    из урока 8
    Затеял сделать мигающую точку:

    #define F_CPU 8000000
    #include <avr/io.h>
    #include <util/delay.h>

    int main(void)
    {
    //unsigned char i;
    //unsigned char button=0;
    DDRD = 0xFF;
    DDRB = 0x00;
    PORTD = 0b00000000;
    PORTB = 0b00000001;
    while(1)
    {

    PORTD = ~0b10000110;
    _delay_ms(500);
    PORTD = ~0b01011011;
    _delay_ms(500);
    PORTD = ~0b11001111;
    _delay_ms(500);
    PORTD = ~0b01100110;
    _delay_ms(500);
    PORTD = ~0b11101101;
    _delay_ms(500);
    PORTD = ~0b01111101;
    _delay_ms(500);
    PORTD = ~0b10000111;
    _delay_ms(500);
    PORTD = ~0b01111111;
    _delay_ms(500);
    PORTD = ~0b11101111;
    _delay_ms(500);
    PORTD = ~0b00111111;
    _delay_ms(500);

    }
    }

    и тут ворнинги:
    Warning 2 large integer implicitly truncated to unsigned type [-Woverflow] D:\Atmel\7segm\7segm\7segm.c 20 2 7segm

    без точек не было.
    в протеусе всё работает, но само по себе… Что это и чем страшно?

    #13881
    Yer
    Участник

    здравствуйте всем как можно реализовать опрос по rs485 протоколу использовав usart

  • Автор
    Сообщения
  • #10143

    Narod Stream
    Хранитель
    • Оффлайн

    Здесь можно обсудить проблемы, связанные с программированием микроконтроллеров AVR.

    #11040

    DimanLM
    Участник
    • Оффлайн

    Всем привет. Повторил урок №20 там где вывод температуры на LCD 1602 температура отображается все отлично. После этого решил собрать градусник, но для индикации взял 7-ми сегментный индикатор, из урока №20 взял файлы: DS18B20.c, DS18B20.h, main.h имена могут отличаться от оригиналов, но содержимое тоже. Индикаторы запустил по уроку №11 — динамическая индикация. Микроконтроллер взял ATTiny2313A.
    Так вот это месево уже три месяца не могу запустить. Помогите пожалуйста.

    Вот ссылка на архив с проектом в папке файл для протеуса (.DSN)
    https://cloud.mail.ru/public/9dT8/aVYhRyidz

    #11250

    Dmitriy
    Участник
    • Оффлайн

    Добрый день!
    Подскажите, правильно ли я использую команды по ассемблерным вставкам в коде, написанном в Atmel Studio 7:
    __asm__(«cli»);
    __asm__(«sei»);
    __asm__(«nop»);
    В CodeVisionAVR 4, в котором я начал изучать Си и программирование микроконтроллеров, синтаксис несколько другой.
    Судя по отсутствию ошибок в Atmel Studio 7 при компиляции кода, вроде всё работает. Но хотелось бы уверенности. Также обратил внимание, что в одном из хед-файлов есть макроподстановки в виде sei(); и cli(); Но для команды nop макроподстановки в виде nop(); нет.

    #12497

    Pavel
    Участник
    • Оффлайн

    Доброго времени суток! Хотелось бы увидеть урок по теме DHT11 и DHT22 (что наиболее актуально). Спасибо!

    #12504

    Narod Stream
    Хранитель
    • Оффлайн

    DimanLM.
    К сожалению, я не располагаю временем тестить проекты, своих чересчур много. Возможно, кто занимается плотно с такими МК, посмотрят.

    #12505

    Narod Stream
    Хранитель
    • Оффлайн

    Pavel,
    Я давно хотел освоить подобные датчики. Посмотрел документацию на первый — точность слабовата, а вот второй меня заинтересовал.

    #13478

    daswindows
    Участник
    • Оффлайн

    Pavel и Narod Stream, заказал себе датчики DHT22, как придут, оттестирую и отпишусь.
    По поводу датчиков DHT11, у них большая очень погрешность. На макетной плате собрал 4 датчика. все 4 показывали разную температуру. погрешность +-2 градуса по цельсию

    #13567

    gogaze
    Участник
    • Оффлайн

    Подскажите: можно ли в Atmel Studio сделать переменную из _delay_ms (50); 50=переменная типа так

    unsigned int e;

    e=50

    Я пробовал — компилятор выдает __builtin_avr_delay_cycles expects a compile time integer constant и ссылается на delay.h строку __builtin_avr_delay_cycles(__ticks_dc);

    #13596

    daswindows
    Участник
    • Оффлайн

    [URL=http://vfl.ru/fotos/ebfdeeb119773657.html][IMG]http://images.vfl.ru/ii/1513024229/ebfdeeb1/19773657_m.jpg[/IMG][/URL]

    Фото с датчиков 6 шт подключены паралельно

    #13628

    Pavel
    Участник
    • Оффлайн

    Братцы!Проблема! ATTiny13 не выходит из спящего режима по прерыванию о переполнении таймера. Help me! Контроллеры из Китая.

    #13653

    volw
    Участник
    • Оффлайн

    Добрый день! Narod Stream, хотелось бы увидеть уроки про ПИД регулятор на AVR в вашем исполнении.

    #13654

    Berg
    Участник
    • Оффлайн

    Так получилось, что у меня появилась макетная плата
    под микроконтроллер ATmega16. На что надо обращать внимание
    при написание (переписывания программ из уроков под ATmega8)
    под микроконтроллер ATmega16.

    #13657

    gogaze
    Участник
    • Оффлайн

    По-моему надо начать с даташита, найти соответствующие выводы на МК и под них переделать программу.

    #13661

    DJPashA
    Участник
    • Оффлайн

    из урока 8
    Затеял сделать мигающую точку:

    #define F_CPU 8000000
    #include <avr/io.h>
    #include <util/delay.h>

    int main(void)
    {
    //unsigned char i;
    //unsigned char button=0;
    DDRD = 0xFF;
    DDRB = 0x00;
    PORTD = 0b00000000;
    PORTB = 0b00000001;
    while(1)
    {

    PORTD = ~0b10000110;
    _delay_ms(500);
    PORTD = ~0b01011011;
    _delay_ms(500);
    PORTD = ~0b11001111;
    _delay_ms(500);
    PORTD = ~0b01100110;
    _delay_ms(500);
    PORTD = ~0b11101101;
    _delay_ms(500);
    PORTD = ~0b01111101;
    _delay_ms(500);
    PORTD = ~0b10000111;
    _delay_ms(500);
    PORTD = ~0b01111111;
    _delay_ms(500);
    PORTD = ~0b11101111;
    _delay_ms(500);
    PORTD = ~0b00111111;
    _delay_ms(500);

    }
    }

    и тут ворнинги:
    Warning 2 large integer implicitly truncated to unsigned type [-Woverflow] D:\Atmel\7segm\7segm\7segm.c 20 2 7segm

    без точек не было.
    в протеусе всё работает, но само по себе… Что это и чем страшно?

    #13881

    Yer
    Участник
    • Оффлайн

    здравствуйте всем как можно реализовать опрос по rs485 протоколу использовав usart

Просмотр 15 сообщений - с 1 по 15 (из 56 всего)
  • Для ответа в этой теме необходимо авторизоваться.