Отговори на тема  [ 23 мнения ]  Отиди на страница 1, 2  Следваща
Проблем с ADXL345, TWI ? 
Автор Съобщение
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Пет Авг 07, 2009 4:58 pm
Мнения: 273
Мнение Проблем с ADXL345, TWI ?
Здравейте, пускам този чип по TWI (I2C), без прекъсвания и се оказа, че след превършването на един трансфер, трябва да изчакам, преди да започна следващия, определено време (около 10 микросекунди). Това комуникационният интерфейс ли го изисква или е особеност на ADXL345, която не намерих в документацията?
Прилагам сорса във файл. Когато извикам два пъти функцията един след друг, без закъснение, не работи. Като сложа закъснение около 10 микро, тръгва.
Струва ми се, че ще имам и други проблеми с комуникацията :)


Прикачени файлове:
TWI source.txt [1.59 KiB]
206 пъти
Чет Окт 14, 2010 9:40 am
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Вто Юни 27, 2006 11:13 am
Мнения: 381
Местоположение: Варна
Мнение 
по принцип всеки чип си има минимално изискуемо време за ресетване на контролната електроника, включително и дисплейте (там ако не спазиш кое и да е минимално време ще си гледкаш бози и тва си е, в наи добрия случей)


Чет Окт 14, 2010 10:54 am
Профил ICQ
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Пет Авг 07, 2009 4:58 pm
Мнения: 273
Мнение 
Може би и тук е нещо подобно, а иначе забравих да спомена, че контролерът е Атмега2560.


Чет Окт 14, 2010 11:02 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
Аз също почвам проект с тоя чип. Ама мислех да го ползвам по SPI. Това I2C си е пълна дивотия.....

_________________
"Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.


Чет Окт 14, 2010 11:07 am
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Чет Окт 06, 2005 2:06 pm
Мнения: 194
Местоположение: Sofia
Мнение 
Единственото което видях е време между стоп и старт което е 1.3uS, а ти казваш чак 10:


Прикачени файлове:
adxl345.JPG
adxl345.JPG [ 131.61 KiB | Прегледано 1686 пъти ]
Чет Окт 14, 2010 11:28 am
Профил
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Пет Авг 07, 2009 4:58 pm
Мнения: 273
Мнение 
Предполагам, открих причината за нужното забавяне. Смених издърпващите резистори от 10к на 5к (още един успоредно). За сега се държи по-добре, но пак очаквам номера.

И аз бих предпочел SPI интерфейса, но не зависи от мен, много магарии ми излизат с и2ц :)


Чет Окт 14, 2010 2:35 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение 
Е и 5 кила е много, 2 ако не и 1 (аз май все по 2 слагам и не съм имал зорове).

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Чет Окт 14, 2010 7:25 pm
Профил WWW
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Пет Авг 07, 2009 4:58 pm
Мнения: 273
Мнение 
И на мен ми се стори по спецификацията на и2ц, че над 1к все ще е добре, ама да не свалям запоените 10к, че със СМД съм малко скаран и ги свалям с пътечките понякога :)

Благодаря на отзовалите се, вече му чета и регистрите за ускорението, след инициализация. Остава само да пусна тая пущина с прекъсвания.


Чет Окт 14, 2010 11:03 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
Чакайте бе как ги ръгате тия резистори, ей така на око. Майко мила.

Те се смятат относително лесно - имаш честотата, в дейташита трябва да има капацитетите, можете да си сметнете какви са ви резисторите. В някой случаи може да са 10к в други 1к. Че и по малко.

То че I2C е ужасен интерфейс съм го признал, ама и вие съвсем лаишки подхождате. Част от гадоста на тоя интерфейс е че е полуаналогов образно казано. Утре като го позатоплиш чипа да не напишеш - абе неработи от време на време, ама не знам кога и защо.

Пък закачи един скоп и виж съотношението фронт/плато ако те мързи да смяташ. Пак става. Ама така да пробваш на око, докато тръгне....

_________________
"Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.


Пет Окт 15, 2010 11:07 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение 
Бе чак от много сметки няма нужда, а и 10 кила винаги ще създадат проблем,
много бавно ще е всичко що се катери. 1-2 кила ще е добре практически винаги,
от друга страна :-) .

Що ти се вижда толкова крив тоя интерфейс бе, Цецо? Аз за пръв път го bitbang-их
от едно HC11 преди 10-ина години (само master бях, което правеше нещата съвсем
лесни). Сега тоя 5200 дето ползвам има някакъв I2C контролер и него пак само
като master го ползвам, и беше някаква беля докато му угодя ама нищо особено,
не съм чувал скоро оттам. То остана и от него да чуя де, само 3 са май нещата
на тая платка към него - часовник, еепром и едно ADC (бавното, с много канали).
Всъщност баш сега ще трябва да почна да ползвам още два от каналите на ADC-то,
дано не предизвиквам белята.

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Пет Окт 15, 2010 11:20 am
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
Ми тъп е, щото е прекалено софтуерен и аналогов :) Аналогов е заради въпросните резистори, крайни стъпала и прочие. Софтуерен е защото иска цяла машина да го обслужва. Една купчина състояния има и повечето си искат да са на прекъсвания, става пълна каша. Трудно се връзва като хората за DMA. А като му погледнеш скоростта - пълна скръб като за тия ресурси и главоболия дето хабиш за него. Единственото му предимство е че е на две жици. Ама ако закачиш няколко устройства и то по бързички, става абсолютна каша. Най голямата му гадост е че поради многото си състояния, адреси, данни, акнолиджи и пр. понякога тръгват нещата привидно. И току в малко по особенна ситуация (съкратен ресурс, нещо хардуерно мръдне, засекат се два слейва) се оказва, че нещо си пропуснал и отгърми някъде... и то при клиента.

Затова хората са измислили - UART и SPI. Затова и съвременните контролери имат по 3 и повече от тези интерфейси, за да не си правя излишни главоболия. Просто и ясно.

В това отношение, един от най-тъпите контролери който съм виждал е ADUC72 нещо си. Който някой велик гении беше оборудвал с 2 I2C и по 1 UART и 1 SPI (без DMA). Пълен кретенизъм, ама така е като пройзводител на аналогови схеми реши да прави процесори.

_________________
"Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.


Пет Окт 15, 2010 11:57 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение 
Е има си недостатъците дето му ги споменаваш, разбира се, и си е бавен - ама е само
по две жици и лесно обикаля по платката, което му е идеята. Разни термосензори,
ей такива работи, да ги пръсне човек си е екстра. Ако процесорът ще е само
master е елементарен, моя bitbang код (правих го за HC11 и за 5420 DSP) беше
30-40 реда асемблер, нищо струващо си да се споменава. Ще взема да го изровя и постна
тук, може пък някой от коментарите ми да разбере нещо по-лесно :-).

А за скорости да, къде ти, аз сега имам едно ADC на 66 MbpS през един кодешко-SPI-чав
интерфейс, това са си немислими неща за I2C, отдалеееко немислими :-).

[edit] А бе бая бая повече от 30-40 реда се оказа :-). Сложих го все пак на
http://tgi-sci.com/misc/nmi2c.sa [/edit]

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Пет Окт 15, 2010 12:21 pm
Профил WWW
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Пет Авг 07, 2009 4:58 pm
Мнения: 273
Мнение 
И тук са дадени стоиностите на резисторите


Прикачени файлове:
Pull-up values.png
Pull-up values.png [ 49.63 KiB | Прегледано 1701 пъти ]
Съб Окт 16, 2010 9:19 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 2:01 pm
Мнения: 1952
Местоположение: Варна
Мнение 
[OT]
А как го лепите за платката тоя LGA корпус? Имам предвид на ръка, за прототипи. На QFN поне част от пина се пада отстрани, а на тоя целия пад е отдолу. Споделете някакъв опит.

_________________
Най-опасният враг на истината и свободата е мнозинството.


Чет Окт 21, 2010 3:04 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение 
И аз да добавя глас в питането на Zdrav. То тия излизащи отстрани точки в QFN помагат
като не стане някоя спойка да се замостят надолу (и такава свинщина съм правил и ме
е спасявала....), инак запояването и друг път съм го коментирал как е при мене - накратко
духалката, паста, флюс, инфрачервен термометър и най-вече майката.....

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Чет Окт 21, 2010 3:50 pm
Профил WWW
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 23 мнения ]  Отиди на страница 1, 2  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 4 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни