Например TDA7294

Форум РадиоКот • Просмотр темы - Помогите с библиотекой TWI для Attiny85
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 23, 2024 19:07:37

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 16 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Ср сен 13, 2017 05:56:55 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
Первая моя тема :) В общем я ещё новичек, поигрался с ардуиной и для себя решил начать изучать МК с самого младшего семейства аттини, установил AVR studio 6, ну и как любой новичек сразу уперся в камень)) не могу найти готовую библиотеку для attiny85 для работы с шиной I2C (он же TWI) в режиме мастера. МК мне нужно связать с PCF8574 к которой в свою очередь подключен 7-сегментный индикатор. Знаю что в данном МК нет аппаратной реализации этого интерфейса, поэтому ищу программную, т.e. готовую библиотеку. Нашел либу для ардуины https://github.com/adafruit/TinyWireM , но столкнулся с проблемой компиляции

Error 3 unknown type name 'USI_TWI'
Error 1 unknown type name 'class'
Error 2 expected '=', ',', ';', 'asm' or '__attribute__' before '{' token

я так понимаю эта проблема связана с языками C и С++. т.к. в архиве исходники идут с разрешением .cpp. а в самой avr studio компилируется на С.

есть ли у кого готовая библиотека? или пример реализации подключения по i2c.

З.Ы. Литературы массы перечитал в т.ч. и на данном сайте по данному вопросу, но ещё по уровню не дотягиваю


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Ср сен 13, 2017 07:23:46 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2058
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18030
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Пользуюсь сам и могу рекомендовать вам библиотеки Peter Fleury: http://homepage.hispeed.ch/peterfleury/ ... tware.html
Имейте ввиду, что его библиотеки не содержат таймаутов ожидания, поэтому в случае проблем с аппаратурой (неисправность чипов, обрыв проводников и т.п.) могут зависать. В 99.9% случаев это не критично, но иметь ввиду стоит. Да и доделать таймауты не сложно - не так много там циклов "тупого" оджидания битика...

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

Мой уютный бложик... заходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Ср сен 13, 2017 08:02:27 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
ARV писал(а):
Пользуюсь сам и могу рекомендовать вам библиотеки Peter Fleury: http://homepage.hispeed.ch/peterfleury/ ... tware.html
Имейте ввиду, что его библиотеки не содержат таймаутов ожидания, поэтому в случае проблем с аппаратурой (неисправность чипов, обрыв проводников и т.п.) могут зависать. В 99.9% случаев это не критично, но иметь ввиду стоит. Да и доделать таймауты не сложно - не так много там циклов "тупого" оджидания битика...


Там в описании написано

This I2c library is implemented as a compact assembler software implementation of the I2C protocol
which runs on any AVR (i2cmaster.S) and as a TWI hardware interface for all AVR with built-in TWI hardware (twimaster.c).

В аттини85 ток USI есть с помощью которого можно реализовать TWI, аппаратного TWI в нем нету.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Ср сен 13, 2017 08:14:17 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2058
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18030
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
я вам хрени не посоветую
Цитата:
a compact assembler software implementation of the I2C protocol
which runs on any AVR (i2cmaster.S)
компактная программная реализация протокола I2C, которая запускается на любом AVR

забудьте USI, как страшный сон, и работайте обычным ногодрыгом. зато на любых портах, а не на паре предопределенных

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

Мой уютный бложик... заходите!


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Ср сен 13, 2017 16:00:52 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
Всё зашевелилось, спасибо.


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Чт сен 14, 2017 10:53:59 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
В общем недолго я радовался. в протеусе с микросхемой памяти 24c02 все четко работает, посмотрел как ячейки перезаписваются. А вот с PCF8574 никак не могу заставить работать.A0, A1, A2 подтянуты к земле, адрес микрухи 0х20 получается, но такое ощущение что МК не видит её. На осцилографе все как надо выдается. В чем может быть подвох, никак не могу понять?


Вложения:
TEST01.rar [65.32 KiB]
Скачиваний: 220
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 06:09:42 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1384
Рейтинг сообщения: 0
По даташиту адрес микросхемы 0x40.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 06:17:43 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
По даташиту адрес микросхемы 0x40.

Это адрес + бит W/R. Там следующий столбец

7-bit
hexadecimal
address
without R/W

в нем 0х20

т.е. в моем случае 0x20 + 0x01 (бит на запись)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 06:27:37 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1384
Рейтинг сообщения: 0
Изображение
Слева направо. Старший бит. 7 битов адреса, младший бит - направление данных. Получаем 0b01000000 - 0x40.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 06:52:21 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
у меня отправляет 9 бит :((( последний бит это на запись


Вложения:
Снимок.PNG [111.96 KiB]
Скачиваний: 639
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 09:25:36 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1384
Рейтинг сообщения: 0
Почитайте в инете внимательно, что такое TWI (она же I2C) шина. После этого отпадут многие вопросы. Какой адрес у микросхемы, как шина вообще работает.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 09:39:01 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
Почитайте в инете внимательно, что такое TWI (она же I2C) шина. После этого отпадут многие вопросы. Какой адрес у микросхемы, как шина вообще работает.


Да я её уже на сто рядов всю перечитал. Товарищ ARV рабочую бибилиотеку посоветовал, она на ассемблере написана, в котором я не особо силен. Так вот там пример есть с микросхемой памяти 24с02, с ней все работает, но на этот же адрес вешаю PCF8574 и тишина.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 09:46:36 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1384
Рейтинг сообщения: 1
Неважно, ассемблер или какой другой язык, когда обращаешься к устройству на TWI шине, в функции обращения к устройству как параметр задание адреса устройства. И он задается как есть, то есть, если по даташиту адрес 0b01000000, 0x40, он не может быть другим.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 09:49:44 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2058
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18030
Откуда: Новочеркасск
Рейтинг сообщения: 1
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Вам же русским языком сказали: адрес микросхемы 0x40, а не 0x20
в вашем коде неверно
Код:
#define PCF8574  0x20      //  адрес PCF8574 00100000

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

Мой уютный бложик... заходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Пт сен 15, 2017 10:00:09 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
Вам же русским языком сказали: адрес микросхемы 0x40, а не 0x20
в вашем коде неверно
Код:
#define PCF8574  0x20      //  адрес PCF8574 00100000


с этим разобрался, но в протеусе диаграмма не верная получается

Код:
#include <avr/io.h>
#include "i2cmaster.h"


#define PCF8574  0x40      //  адрес PCF8574 01000000


int main(void)
{
    unsigned char ret;
   

    DDRB  = 0xff;                              // PORTB на выход
                       

    i2c_init();                                //Инициализируем I2C 

   
    ret = i2c_start(PCF8574+I2C_WRITE);       // отправляем побитно в SDA 0b01000000+1 режим записи
    if ( ret ) {
       i2c_stop();
        /* не удалось запустить условие запуска, возможно, не найдено ни одного устройства */
    }else {
        i2c_write(0x46);                     
        i2c_stop();                           
 
    }
   
    for(;;);   
   


не видит микросхему


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Помогите с библиотекой TWI для Attiny85
СообщениеДобавлено: Вт сен 19, 2017 05:30:21 
Первый раз сказал Мяу!

Зарегистрирован: Ср сен 13, 2017 05:53:24
Сообщений: 31
Рейтинг сообщения: 0
Всё заработало, спасибо ARV и Demiurg. В протеусе у меня косяк был.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 16 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y