|
Узнал новое о GPIO портах AVR |
|
|
|
Oct 16 2012, 05:49
|

неотягощённый злом
     
Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643

|
Цитата из даташита на atmega1281 Цитата 13.2.2 Toggling the Pin Writing a logic one to PINxn toggles the value of PORTxn, independent on the value of DDRxn. Note that the SBI instruction can be used to toggle one single bit in a port. Забавно, но в достаточно свежих мегах эта фича есть, а в старых мегах типа mega16,64,128 не было, поэтому не обращал внимания. А так получается за один такт можно атомарно инвертировать несколько бит в порту например так PINA = (1<<7)|(1<<0); Может кому-нибудь пригодится..
--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
|
|
|
|
|
 |
Ответов
|
Oct 23 2012, 05:18
|

неотягощённый злом
     
Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643

|
Цитата(ILYAUL @ Oct 22 2012, 21:50)  а sbi PORTX,N чем плох? Ничем не плох, но он только устанавливает, а мы говорим об инвертировании... Цитата(Сергей Борщ @ Oct 22 2012, 23:05)  Не возьмут. Аргументируют это тем, что эти заголовочники они генерят скриптом из каких-то атмеловских файлов студии (xml?). Т.е. надо либо патч к их скрипту делать, либо патч в атмел посылать. Поговорить можно с Dean Camera он теперь ведь на Атмел работает. Он очень адекватный малый и думаю, что если ему донести сию мысль, то возможно он её продвинет.
--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
|
|
|
|
|
Oct 25 2012, 05:20
|

неотягощённый злом
     
Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643

|
Цитата(ILYAUL @ Oct 24 2012, 16:00)  cli PORT,N Почитайте наконец уже доку на avrasm... Цитата(ILYAUL @ Oct 24 2012, 16:00)  через PIN - только себя в итоге запутать Чтобы не путать никого Код #define CPLPORTx PINx CPLPORTx |= (1<<n);
--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
|
|
|
|
Сообщений в этой теме
demiurg_spb Узнал новое о GPIO портах AVR Oct 16 2012, 05:49 kovigor Цитата(demiurg_spb @ Oct 16 2012, 08:49) ... Oct 16 2012, 07:31 demiurg_spb Цитата(kovigor @ Oct 16 2012, 11:31) заче... Oct 16 2012, 07:42 _Pasha Цитата(kovigor @ Oct 16 2012, 10:31) Пока... Oct 16 2012, 08:04  demiurg_spb Цитата(_Pasha @ Oct 16 2012, 12:04) Верно... Oct 16 2012, 08:14 SasaVitebsk Ну вы и даёте. Это было уже в меге88 лет 6 назад. Oct 16 2012, 07:47 demiurg_spb Цитата(SasaVitebsk @ Oct 16 2012, 11:47) ... Oct 16 2012, 07:53 ILYAUL Помоему они нашли свой баг и решили сделать из нег... Oct 16 2012, 09:40 SasaVitebsk Цитата(ILYAUL @ Oct 16 2012, 12:40) Помое... Oct 26 2012, 09:47  ILYAUL Цитата(SasaVitebsk @ Oct 26 2012, 13:47) ... Oct 26 2012, 15:50 V_G В xmega-х изначально есть регистры OUTTGL и DIRTGL... Oct 16 2012, 12:51 Genadi Zawidowski Ну в тех кусках, которые "ногодрыганием... Oct 16 2012, 20:45 LexaK ЦитатаПодумал что я не одинок в этом незнании (дум... Oct 21 2012, 07:37 ReAl Вот в этом pin_macros.h я стараюсь поддерживать сп... Oct 21 2012, 11:50 demiurg_spb Цитата(ReAl @ Oct 21 2012, 15:50) я стара... Oct 22 2012, 05:26 ReAl Цитата(demiurg_spb @ Oct 22 2012, 08:26) ... Oct 22 2012, 15:41 Сергей Борщ QUOTE (ReAl @ Oct 22 2012, 18:41) Надо ка... Oct 22 2012, 19:05   ae_ Цитата(ILYAUL @ Oct 24 2012, 21:00) cli P... Oct 25 2012, 02:57 ILYAUL Цитатаcli - опечатка, cbi Конечно.
Цитатавместо ..... Oct 25 2012, 05:58 ReAl Мало того, что атомарный доступ, еще и флаги при э... Oct 26 2012, 17:53 SasaVitebsk А где используется? ...
Я делал bootloader для at... Oct 26 2012, 18:47
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|