Заливка скетча через MEGA2560 в ATMEG 1284 проблема

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

zumer67 пишет:

а с таймером как подружиться?

почитать даташит, других вариантов нет

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

кстати, я делал таймер секундных импульсов в стиле ардуино -
1. analogWrite (3,127);
2. на третьем пине висит прерывание INT1
3. так как частота ШИМ 490 герц подсчитываю в прерывании и распоряжаюсь как мне надо

zumer67
Offline
Зарегистрирован: 17.06.2021

подружился  с millis(). как то тяжело идет после PIC и MPLAB

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

zumer67 пишет:

подружился  с millis(). как то тяжело идет после PIC и MPLAB

у PIC красивый ассемблер, соглашусь, у меня в 500 или 600 байт уложился код управления вязальной машиной

b707
Offline
Зарегистрирован: 26.05.2017

zumer67 пишет:

подружился  с millis(). как то тяжело идет после PIC и MPLAB

изучайте Си. думаю вам этого в первую очередь не хватает.

b707
Offline
Зарегистрирован: 26.05.2017

ua6em пишет:

кстати, я делал таймер секундных импульсов в стиле ардуино -
1. analogWrite (3,127);
2. на третьем пине висит прерывание INT1
3. так как частота ШИМ 490 герц подсчитываю в прерывании и распоряжаюсь как мне надо

это называется "стоя в гамаке" ....

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

ua6em пишет:

кстати, я делал таймер секундных импульсов в стиле ардуино -
1. analogWrite (3,127);
2. на третьем пине висит прерывание INT1
3. так как частота ШИМ 490 герц подсчитываю в прерывании и распоряжаюсь как мне надо

это называется "стоя в гамаке" ....

это называется а можем ли мы как-то еще получить и использовать мерные отрезки таймера )))
PS простой тест на русскость в образности мышления )))
PPS если посмотреть полученный код, там будет и настройка таймера и всё остальное, только не надо никаких заумностей, когда достаточно одной ардуиновской команды аналограйт

zumer67
Offline
Зарегистрирован: 17.06.2021

в MPLAB на С и пишу - только pic не через зад программируется как в ардуине ))) ! я не хочу никого обидеть - вы уже наблатыкались вам проще.

b707
Offline
Зарегистрирован: 26.05.2017

zumer67 пишет:

только pic не через зад программируется как в ардуине )))

вообще-то язык программирования ардуино - это С++, компилятор GCC

А если вы что-то делаете через зад - то ардуина то тут причем?

Green
Offline
Зарегистрирован: 01.10.2015

Наоборот, на Ардуино как раз куча удобств. И фреймворк тебе и библиотеки...
Как то приходилось писать для х51 - там даже delay свою приходилось придумывать.(

zumer67
Offline
Зарегистрирован: 17.06.2021

т.е. обращение через номера а не через порты это не через зад???!!! 

zumer67
Offline
Зарегистрирован: 17.06.2021

то что написано много библиотек это конечно хорошо! 

zumer67
Offline
Зарегистрирован: 17.06.2021

но среда разработки полный отстой! 

zumer67
Offline
Зарегистрирован: 17.06.2021

а в чем правите h файлы?

zumer67
Offline
Зарегистрирован: 17.06.2021

проблему для себя вижу в том что не могу настроить таймера - хз возможно они задействованы в библиотеке. прерывания тоже не понятно вызывает библиотека сами или надо установаливать. в mplab  весь проект как на ладони! да MCC можно настроить все и подключить библиотеки . тот же куб для СТМ тоже супер. а в ардуино все убого. ну хз работает и работает ! 

Green
Offline
Зарегистрирован: 01.10.2015

Какие то странные вопросы... И странная логика...
Ну так не используй Ардуино! И библиотеки не используй! Пиши с нуля. Тогда и порты будут как надо и таймера все твои. Точно как у ПИКов.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

zumer67 пишет:

а в чем правите h файлы?

я в npp+ если они не в папке проекта, если в папке проекта, то в IDE, они жеж закладками висят

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

zumer67 пишет:

т.е. обращение через номера а не через порты это не через зад???!!! 

это идеология Ардуино, в этом весь цимес, чтобы не зависимо от стипендии у кого повышенная у кого какая от процессора код был переносимый, открой любую библиотеку работающую с прерываниями, ту же SoftwareSerial.h посмотри как там прописываются разные контроллеры

b707
Offline
Зарегистрирован: 26.05.2017

zumer67 пишет:

т.е. обращение через номера а не через порты это не через зад???!!! 

Хотите через порты - обращайтесь через порты   В Ардуино можно и так и так.

например, записать HIGH в порт PD5 можно так:

pinMode(5, OUTPUT);
digitalWrite(5, HIGH);

а можно так:

DDRD |= (1<<5);
PORTD | = (1<<5);

То, что вы потратили кучу времени, чтобы понять, что номера пинов и имена портов - не одно и тоже, связано во-первых, с тем что это новая для вас и область...

А во-вторых - с тем что и в своих привычных ПИКах и MPLAB вы явно не вникали, как это работает а просто заучили команды своей IDE. В ардуино команды другие, а понимания сути у вас нет - вот вы и "поплыли".

Потому и с таймерами у вас проблемы, что похоже что вы просто не понимаете, как они работают...

 

zumer67
Offline
Зарегистрирован: 17.06.2021

ну как бы там нибыло устройство готово тесты прошли успешно! главное в плате не накосячил не пришлось переделывать ! зачазчик конечно как всегда - сначала рассказывал что клапана будут на 12 или 24 вольта - оказалось 220! ))) 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

например, записать HIGH в порт PD5 можно так:

pinMode(5, OUTPUT);
digitalWrite(5, HIGH);

а можно так:

DDRD |= (1<<5);
PORTD | = (1<<5);

можно, но такие извращения входят в прямое противоречие концепции ARDUINO  )))

Green
Offline
Зарегистрирован: 01.10.2015

b707 пишет:

например, записать HIGH в порт PD5 можно так:

pinMode(5, OUTPUT);
digitalWrite(5, HIGH);

а можно так:

DDRD |= (1<<5);
PORTD | = (1<<5);


А так?
 

#define LED               B,5,H
#define BUZ               D,4,L

  off(LED);
  out(LED);
  off(BUZ);
  out(BUZ);
  
  on(LED);
  on(BUZ);

Зависит ли это от МК? А от схемы?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

zumer67 пишет:

т.е. обращение через номера а не через порты это не через зад???!!! 

Конечно нет.

А иначе как Вы сможете единообразно обращаться к к разным камням, у которых разные наименования и различная ширина портов? (например как у Arduino Uno и Arduino Due)

nik182
Offline
Зарегистрирован: 04.05.2015

Для каждого чипа есть файл pins.h в котором расписано какие выводы соответствуют ногам ардуины. Собственно там можно посмотреть как идёт переназначение.