Jump to content

    

taoga

Участник
  • Content Count

    52
  • Joined

  • Last visited

Community Reputation

0 Обычный

About taoga

  • Rank
    Участник

Recent Profile Visitors

579 profile views
  1. em9203

    Привет! Удалось что-нибудь узнать об этой микросхеме? Может быть вы знаете как включить прередачу принятых данных на ножки FPGA(DATA и CK)?
  2. smbus в linux

    Цитата(taoga @ Sep 18 2015, 21:40) Спасибо, мне и Том ответил. В понедельник попробую. Помогло. Сначала пытался считать. Но безрезультатно. Потом до победного слал команду запись блока 44 c данными C9 47 20. После того как команда прошла, передернул питание evm(включая батарею). Bqstudio стала снова автоматически определять bq40z60. Также мне стало понятно где найти адреса регистров конфигурации. Нажно открыть окно Preferences (Меню Window->Preferences). Затем установить флаг "Show Advanced Views" в ветке "All Global Settings". После чего в в окне "Data Memory" появились адреса регистров flash. Спасибо.
  3. smbus в linux

    Цитата(Jury093 @ Sep 18 2015, 16:28) вроде как с чтением куска флеша я чего-то получил, читаем ман: КодRead from DF example: Taking the same assuming from the read DF example, to read DF, a. Send SMBus write block with command 0x44, block = 0x00 + 0x40 b. Send SMBus read block with command 0x44 The returned block = a starting address + 32 bytes of DF data = 0x00 + 0x40 + data1_LowByte + data1_HighByte + data2_LowByte + data2_HighByte.... data32_LowByte + data32_HighByte сначала запись блока командой 0x44 и адрес разбитый на две байта с обратным написанием (надо 0x47c9 пишу c9 47) потом считываю блок командой 0x44 вижу ожидаемое 0x31 - это мои бродкасты и максимальный таймаут.. а вот как записать, пока идей нет - будем на вашем чипе тренироваться может надо скопипастить весь блок, поправить нужные параметры и записать, а может как-то по другому.. Спасибо, мне и Том ответил. В понедельник попробую.
  4. smbus в linux

    Цитата(Jury093 @ Sep 18 2015, 13:46) ну хорошо.. а что у вас считывается старт-студии->view->data-memory->setting->sbs-configuration? есть ли там что осмысленное? если есть, то мышкой тыкаете прямо в значение (value) и должно появиться битовое поле, подсвеченное красными и зелеными квадратами.. попробуйте там почистить и тут же есть кнопка записи, может это поможет (при попытке записи смотрите в левый нижний угол студии, там показывают ошибки) если пройдет, то далее Reset.. Ничего не считывается, ячейки значений пустые. Я ж говорю не выполняется команда Read All. Когда тыкаешь во вкладку data memory программа скорее всего автоматом запускает Read All, после удачного выполнения которой появляются значения. У меня их нет, пусто. Соответственно изменить отдельные значения регистров тоже не дает. Выдает ошибку, что сначала значения должны быть считаны. Я пробовал это делать, открывал старт-студии->view->data-memory->setting->sbs-configuration тыкал в нее, устанавливал зеленые квадраты(0) во все поля которые я менял, потом нажимал на кнопку write и появлялась ошибка, что сначала значения должны быть считаны.
  5. smbus в linux

    Цитата(Jury093 @ Sep 18 2015, 12:44) система на imx6q, с подключенной sata и поднятой мультимедийностью прилично кушает и ваш вариант 2p3s вполне потянет такую нагрузку.. если что, то вполне можно на 3p3s перекрутить.. пока Томас размышляет, попробуйте все же подолбить по алгоритму: - ручная загрузка - открываете вкладку "view->data memory" - там сбрасываете биты на исходную - и настойчиво на кнопку "Write all" идея в том, что студия будет не все подряд перезаписывать, а только измененные значения, и шансы на запись значительно увеличатся.. если удалось перезаписать, то в правой колонке жмите кнопку "Reset" Пока не выполнится удачно Read All (а он не выполняется, полдня долбил) недоступны команды Write All, Import, Export. Write to data memory не выполняется по той-же причине и выдает ошибку "Operation failed because initial read of all data flash failed". Остаются только: команда из расширенного режима для записи нового значения регистра конфигурации или перепайка микросхемы.
  6. smbus в linux

    Цитата(Jury093 @ Sep 17 2015, 21:39) глянул в инете - хорошая машинка, на imx6, жаль памяти всего 1Г, да и число minipcie явно избыточно, а так хорошо выглядит.. в студии можно выключить активность - левая панель (дашборд), она ломится на интерфейс, вот ее и выключить.. дальше самому настойчиво исправить биты, если конечно в них дело.. ваша bq40z60 должна уметь fast-i2c, а вот за em2300 я не уверен.. еще может PEC (включенный) добавляет, причем я не удивлюсь, если писатели bqstudio не учли такой расклад.. для надежности перед сеансом пощелкайте кнопкой wakeup с поданным внешним питанием я бы не стал - лучше все же использовать заведомо совместимое оборудование и софт.. GW5404 - c 2Гб памяти. Из-за большого количества pci-e и наличия видео она нам и нужна. Недавно рекламу кинули: GW11036 Embedded Android Development Kit - тоже на imx6, но с 1Гб памяти. Но почему-то в этом ките нет батареи. Я им задал вопрос. Они мне ответили, что батарея не проблема, т.к. входное напряжение от 8 до 60В. С помощью GSC (gateworks system controller) можно переводить борду в спящий режим, просыпаться по нажатию кнопки или по таймеру, также можно получить значение входного напряжение. Скрипты для Linux в описании GSC. По bq40z60: Отключил активность. Попробовал послать команду (для пробы) из режима "Advanced comm SMB" - c n-ой попытки удалось. Только вот не нашел в документации кодов команд с помощью которых можно записать значение "SBS Configuration". Нашел описание для bq20z70, но там формат регистров конфигурации не такой, и скорее всего адреса отличаются. Попросил помочь с командой на форуме TI e2e.
  7. smbus в linux

    Цитата(Jury093 @ Sep 17 2015, 19:29) а что такое SBC? плата хоста, куда цепляете bq40z60? попробуйте зайти хоть в ручном режиме и почистить на исходную XL, HPE, CPE тут есть два варианта: - считать память регистров и там поправить, потом обратно записать - в расширенном режиме есть возможность посылать отдельные команды, вот там попробовать обнулить те же биты.. потом команду сброса чипа, либо через гуевую кнопку, либо через команду расширенного режима.. SBC - это Gateworks GW5400 (Ventana). Про то чтобы с помощью отдельной команды в расширенном режиме изменить значения регистра конфигурации я думал, но пока не совсем додумал.http://electronix.ru/forum/style_emoticons/default/laughing.gif. Попробую. Мне показалась, что bqStudio слишком агрессивно работает по интерфейсу, пытаясь связаться с EVM. Еще была мысль к другой плате отладочной подсоединить, у меня есть Atmel'ая. И тоже командой поменять значения этого регистра.
  8. smbus в linux

    Цитата(Jury093 @ Sep 17 2015, 17:39) вы не перепутали SDA<>SCL? gnd подсоединили? судя по выхлопу i2cdetect физически сами шины исправны и если перед подключением вы не загнали чип в shutdown, то он должен детектироваться примерно по адресу 0x09, 0x0b или 0x12.. общие рекомендации: добиваетесь того, чтобы чип продетектировался утилитой i2cdetect утилитами i2cset/i2cget "изучаете регистры чипа и его поведение вооружившись рефманом на чип (Technical Reference Manual (SLUUA04)), пишете драйвер для своего ядра в разделе drivers/power Не перепутал, раза 3 проверял. И прозванивал. На обе платы(SBC и bq40z60evm) нанесена маркировка контактов. Подключал SDA, SCL, GND. Далее начал экспериментировать с настройками bq40z60 и почти убил ее. Сделал вот что: Последние изменения конфигурации bq40z60: in "SBS Configuration" - XL = 1(red), HPE=1, CPE=1, BCAST=1 Эти биты включают обмен на 400кГц и периодическую отправку информационных сообщений. После чего Bqstudio перестало автоматически определять bq40z60evm. Использую EV2300. Выбираю вручную bq40z60, в окне "Battery Management Studio() Supported Target" Очень редко проходят команды: "DEVICE_NUMBER", "CHEM_ID", "RESET" ... "CHEM_ID" - возвращает правильное значение. Если включить в Bqstudio автоматическое чтение регистров, то иногда читаются достоверные значения регистров! Очень редко. Т.е. линии smbus целые. Пробовал залить сохраненный ранее srec в окне "F / W Programming" но возникают ошибки: "Program Srec: Timeout or unexpected response communicating wi th device" или "Program Srec: Packet checksum mismatch" Очень редко появляется индикатор прогресса "F / W Programming" но вероятно прошивка не завершается, т.к. появляется ошибка: "Execute Command: Timeout or unexpected response communicating with device". Странно, что они не сделали сброс значений параметров с помощью внешней ножки. В итоге bq40z60 наполовину живая. Работает по старым настройкам. Заряжает батарею, реагирует на внешний источник питания, показывает с помощью светодиодов заряд. Но начего больше с ней сделать не могу. Заказал еще несколько новых микросхем, будем чинить EVM.
  9. smbus в linux

    Здраствуйте! Имеется bq40z60evm http://www.ti.com/product/bq40z60?keyMatch...h-EN-Everything - полный менеджер батареи(батарей): зарядка, защита, контроль состояния. Для связи есть smbus. Зарядил от нее 3S2P сборку батарей типоразмера 18650. Запитал SBC. С помощью ПО bqstudio можно контролировать, и изменять параметры микросхемы bq40z60, они сохраняются во флэш. Здесь вопросов почти нет. Далее мне нужно контролировать bq40z60 из Linux(ubuntu 14.04 linaro с lxde). На борде есть i2c, подсоединяю и нечего не вижу. i2cdetect не видит адресов bq40z60. Т.е. bq40z60 отсоединено или подсоединено, вывод i2cdetect остается одним и тем же. linaro@linaro-alip:~$ ls /dev autofs loop7 ram13 tty12 tty4 ttymxc0 block mem ram14 tty13 tty40 ttymxc1 bus mtd0 ram15 tty14 tty41 ttymxc4 char mtd0ro ram2 tty15 tty42 ubi_ctrl console mtd1 ram3 tty16 tty43 urandom core mtd1ro ram4 tty17 tty44 v4l cpu_dma_latency mtd2 ram5 tty18 tty45 vcs disk mtd2ro ram6 tty19 tty46 vcs1 dri mtdblock0 ram7 tty2 tty47 vcs2 fb0 mtdblock1 ram8 tty20 tty48 vcs3 fb1 mtdblock2 ram9 tty21 tty49 vcs4 fd mxc_asrc random tty22 tty5 vcs5 full mxc_hdmi rfkill tty23 tty50 vcs6 fuse mxc_hdmi_cec rtc tty24 tty51 vcs7 galcore mxc_ipu rtc0 tty25 tty52 vcsa hwrng mxc_vpu rtc1 tty26 tty53 vcsa1 i2c-0 mxs_viim sda tty27 tty54 vcsa2 i2c-1 network_latency sda1 tty28 tty55 vcsa3 i2c-2 network_throughput sdb tty29 tty56 vcsa4 input null sdb1 tty3 tty57 vcsa5 kmsg port shm tty30 tty58 vcsa6 log pps0 snd tty31 tty59 vcsa7 loop-control ptmx stderr tty32 tty6 vga_arbiter loop0 ptp0 stdin tty33 tty60 video0 loop1 pts stdout tty34 tty61 video1 loop2 ram0 tty tty35 tty62 video16 loop3 ram1 tty0 tty36 tty63 video17 loop4 ram10 tty1 tty37 tty7 watchdog loop5 ram11 tty10 tty38 tty8 zero loop6 ram12 tty11 tty39 tty9 linaro@linaro-alip:~$ i2cdetect -l i2c-0 i2c i2c-0 unknown 21a0000.i2c N/A i2c-1 unknown 21a4000.i2c N/A i2c-2 unknown 21a8000.i2c N/A linaro@linaro-alip:~$ sudo i2cdetect -y 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: UU 21 -- UU -- -- -- -- -- UU -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: UU UU UU UU -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- linaro@linaro-alip:~$ sudo i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- UU -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 3f 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- UU -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- 6b -- -- -- -- 70: -- -- -- -- -- -- -- -- linaro@linaro-alip:~$ sudo i2cdetect -y 2 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- UU -- -- -- -- -- UU -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- UU -- 20: UU -- -- -- -- -- -- -- -- -- UU -- -- -- -- -- 30: -- -- -- -- UU 35 -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 50: UU -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- От bq40z60 и Linux мне нужно несколько вещей: 1) Переходить в спящий режим (из bqstudio это команда shutdown ); 2) Просыпаться из спящего режима (есть кнопка wake up на bq40z60evm); 3) Отображать индикатор состояния батареи; 4) Отображать текущий источник питания( батарея или сетевой адаптер); Кто нибудь имел дело с smbus и с подобными микросхемами в linux? Как настроить это в Linux, подскажите куда копать?
  10. Цитата(Herz @ Sep 16 2015, 10:48) Верно ли Вы выбрали раздел? Ведь к источникам питания проблемы с шиной и ОС отношения не имеют. Здесь комплексная проблема. bq40z60 это менеджер батареи. Я понимаю, что ОС через i2c должна увидеть адреса bq40z60. Смогу послать какие-то команды по I2C. В конце концов написать драйвер. И состыковать его с какой-то библиотекой которая отвечает за питание в Linux. Но может быть есть путь проще. И хорошо если бы подсказали конкретику вместо слова "какие-то" в вопросах. На E2E TI мое сообщение перекинули из ветки Linux в ветку менеджеров питания и ответов пока нет.
  11. Здраствуйте! Имеется bq40z60evm "http://www.ti.com/product/bq40z60?keyMatch=bq40z60&tisearch=Search-EN-Everything" - полный менеджер батареи(батарей): зарядка, защита, контроль состояния. Для связи есть smbus. Зарядил от нее 3S2P сборку батарей типоразмера 18650. Запитал SBC. С помощью ПО bqstudio можно контролировать, и изменять параметры микросхемы bq40z60, они сохраняются во флэш. Здесь вопросов почти нет. Далее мне нужно контролировать bq40z60 из Linux(ubuntu 14.04 linaro с lxde). На борде есть i2c, подсоединяю и нечего не вижу. i2cdetect не видит адресов bq40z60. Т.е. bq40z60 отсоединено или подсоединено, вывод i2cdetect остается одним и тем же. [attachment=95383:log.txt] От bq40z60 и Linux мне нужно несколько вещей: 1) Переходить в спящий режим (из bqstudio это команда shutdown ); 2) Просыпаться из спящего режима; 3) Отображать индикатор состояния батареи; 4) Отображать текущий источник питания( батарея или сетевой адаптер); Кто нибудь имел дело с smbus в linux? Как настроить это в Linux, подскажите куда копать?
  12. STM407DISCOVERY+DM-STF4BB+lwip

    Здравствуйте! FreeRTOS здесь можно не использовать. Зачем излишне усложнять? Я сам сильно не вникал в lwip хозяйство, собрал, то что мне нужно из работающих примеров. Если есть работающий пример с lwip под ваше железо, соберите его. Напишите клиентскую программу со стороны ПК для обмена данными с железом. Разберитесь с реализацией callback функций lwip. Поэкспериментируйте с параметрами lwip в файле:lwipopts.h чтобы добиться максимальной скорости и минимизировать использование памяти. Соберите работающий пример с UART. Соберите два примера вместе. Вот ссылка с примерами lwip: http://cvs.savannah.gnu.org/viewvc/contrib/apps/?root=lwip Я использовал пример tcpecho_raw.
  13. sam7s/7x пример ADC c PDC

    Здравствуйте! Спасибо! Есть еще кто-то живой . Я уже разобрался. Вопрос правда к вашему коду есть. Уже второй раз вижу код, который мне вроде бы подходит но, без инициализации таймера. К чему бы это?
  14. STM32F4 SD SPI FATFS под Coocox

    Здравствуйте! Может быть не очень в тему. У меня FatFS не работал на SAM9 с включенным MMU, пока я "FATFS fatFs" не положил в некэшируемую область памяти.
  15. sam7s/7x пример ADC c PDC

    Здравствуйте! Может кто-нибудь поделиться примером непрерывного приема данных от АЦП с использованием PDC для at91sam7s/sam7x?