реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> ATmega328P I2C, и примеры из сети
ClockworkOrange
сообщение Feb 5 2014, 13:12
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 337
Регистрация: 17-05-07
Пользователь №: 27 784



Задача - работа с шиной I2C,
изучаю примеры, которые в сети.

Не могу взять в толк - почему во всех примерах не задаётся конфигурировние пинов, на которых сидит HW I2C (dвыбор I2C/GPIO и режим - открытый коллектор)?

для примера тут - http://www.embedds.com/programming-avr-i2c-interface/


--------------------
Чтoбы yзнaть, кaкaя дopoгa впepeди, cпpocи тex, ктo пo нeй вoзвpaщaeтcя ©
Go to the top of the page
 
+Quote Post
mempfis_
сообщение Feb 5 2014, 13:26
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Цитата(ClockworkOrange @ Feb 5 2014, 16:12) *
Не могу взять в толк - почему во всех примерах не задаётся конфигурировние пинов, на которых сидит HW I2C (dвыбор I2C/GPIO и режим - открытый коллектор)?


Какое конфигурирование Вы имеете ввиду? Давно работал с AVR, но там вроде если разрешается переферийный модуль, то автоматически разрешаются альтернативные ф-ии пинов, соответствующие этому модулю. Поэтому вероятно ничего не конфигурируют в GPIO. Достаточно разрешить I2c - и пины сами автоматически настроятся.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 5 2014, 13:36
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(ClockworkOrange @ Feb 5 2014, 15:12) *
Не могу взять в толк - почему во всех примерах не задаётся конфигурировние пинов, на которых сидит HW I2C (dвыбор I2C/GPIO и режим - открытый коллектор)?
Так сделано в MegaAVR. Но можно и задавать:
Цитата
Note that the internal pull-ups in the AVR
pads can be enabled by setting the PORT bits corresponding to the SCL and SDA pins, as
explained in the I/O Port section. The internal pull-ups can in some systems eliminate the need
for external ones.
Go to the top of the page
 
+Quote Post
ClockworkOrange
сообщение Feb 5 2014, 13:50
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 337
Регистрация: 17-05-07
Пользователь №: 27 784



да, но в тех же примерах для AVR для интерфейса SPI выводы конфигурятся "руками" - задаётся направление, а для ~CS еще и полностью ручное руление.


--------------------
Чтoбы yзнaть, кaкaя дopoгa впepeди, cпpocи тex, ктo пo нeй вoзвpaщaeтcя ©
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Feb 5 2014, 14:21
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(ClockworkOrange @ Feb 5 2014, 15:50) *
для интерфейса SPI выводы конфигурятся "руками"
Ну так то SPI - там возможны варианты использования:
для мастера
1) используется CS-SCK-MISO-MOSI
2) CS-SCK-MISO
3) CS-SCK-MOSI
4) SCK-MISO-MOSI
5) что-то забыл?
А для TWI какие варианты? Кроме подключить-не подключить pull-up внутри и нет ничего.

P.S. Для UART-а тоже направление не задаётся (UART для примера привожу). Альтернативная функция переписывает TX. А RX? Хм - может pullup можно и подвесить. Не, пишут что - RxD pin is overridden by the USART.

Случаи бывают разные...
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th June 2025 - 20:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01383 секунд с 7
ELECTRONIX ©2004-2016