Отговори на тема  [ 39 мнения ]  Отиди на страница 1, 2, 3  Следваща
USB Full Speed device - кой контролер да избера? 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение USB Full Speed device - кой контролер да избера?
Трябва да се прави един проект, който да прехвърля доста прилично количество информация към PC.

Данните представляват непрекъснат поток който може да се каже че откъм устройството постъпва синхронно. Скоростта е близо 300 кбайта за секунда (12 канала 24 битa 8Khz ADC).

Скоростта е височка и предвид синхронността на данните - гледам към изохронен USB трансфер.

В полезрението ми са следните чипове:

1. PIC18F4550
2. AT91SAM7S
3. LPC214X
4. C8051F34X (обаче не ми допада 8051 ядрото, т.е няма кой да седне да го мъчи тепърва).

Имате ли опит с нещо подобно? Как мислите възможно ли е по принцип?

Освен това ми виси и проблема с драйверите за Windows. Никога не съм се блъскал в тая посока. Дали има нещо готово за целта, да не откривам топлата вода.

Друга еретична мисъл дето ми хрумва е Ethernet. Ама с USB поне имам малък опит откъм дивайса, а за мрежата съм бос както откъм устройство, така и откъм PC. А и много харчи пусти Ethernet, а аз се храня на батерии.

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


Сря Апр 19, 2006 4:08 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Яну 10, 2006 2:40 pm
Мнения: 2258
Мнение 
ако не си правил драйвери за USB за Windows забрави всички гореизброени, тръгнахме в таз насока от няколко месеца си блъскаме главите и писането е най-малкия проблем, после идват маса въпроси от клиенти - драйвера не работи със Windows build XXX, SP YYY, защо пренебрегвате великата система Lunux (или Mac OS) и прочее

FT245 + процесор по избор е най-бързото решение


Сря Апр 19, 2006 4:37 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
няма начин да стане FTто. То има ограничение на 3Мbit. А моя трафик отива на малко над 3М, защото ми трябва и служебна информация. Някъде къде 3,2 мбита ми трябват.

По отношение на драйверите си мислех не може ли да се ползват някакви стандартни класове - например за stream audio.

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


Сря Апр 19, 2006 4:43 pm
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Сря Дек 21, 2005 2:09 pm
Мнения: 145
Мнение 
Цецо това са байтове бе влизаш в нормата ?! --> http://ftdichip.com/Products/FT245BM.htm
драйверите VCO - 300 кбайт/сек ако с D2XX - 1Mбайт/сек трансфери. Аз между другото искам да питам варианта PIC18F4550 - USB некой пускал ли го е въобще поне като виртуален ком ?


Сря Апр 19, 2006 4:47 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение 
Цецо
- PIC18F4550 - ексампъла(можеша да си го оптимизираш) на микрочип работи на 98 и на ХР и по скорост бие омразното ми FT. Допуска смяна на драйвери, но е все тая...

backson
- какъв е смисъла да го правиш на СОМ като можеш да го адресираш дирекно

3aek
- за 4550 невиждам смисъл да си пиша драйвер(WIN) освен да бъда оригинален. Проблем остават други операционни системи


Сря Апр 19, 2006 5:34 pm
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Сря Дек 21, 2005 2:09 pm
Мнения: 145
Мнение 
Брех тоз магьосника ни сипа на всичките да ядем. :) :) Значи аз тогава the wizzard да те разбирам че си пускал USB на 4550 ли ? Какви фрайвери ползва за XP ? има ли готови ? Как конфигурира PICa под MCC18 с функците на Майкрочип ли ? Дай малко разяснения плс :idea:


Сря Апр 19, 2006 5:56 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение 
Значи ако компилнеш примера им работи в дебуг режим с ICD2 - махаш фусето за дебуг
Драйверите дето съм пробвал са оригиналния на микрочип и USBIO98.SYS - разлика - малка и несъществена

main.c
#include <p18cxxx.h>
#include "config.h"
...................


Conifg.H

#ifdef __18F4550_H
#pragma config PLLDIV = 3 // Divide by 3 (12MHz input)
#pragma config CPUDIV = OSC1_PLL2 // [OSC1/OSC2 Src: /1][96MHz PLL Src: /2]
#pragma config USBDIV = 2 // Clock source from 96MHz PLL/2
#pragma config FOSC = HSPLL_HS // HS oscillator, PLL enabled, HS used by USB
#pragma config FCMEM = OFF // Fail Safe Clock Monitor
#pragma config VREGEN = ON // USB Voltage Regulator
#pragma config IESO = OFF // Internal/External Switch Over
#pragma config PWRT = ON // Power Up Timer
#pragma config BOR = OFF // Brown Out Reset
#pragma config BORV = 21 // Brown Out Voltage
#pragma config WDT = OFF // Watchdog Timer
#pragma config WDTPS = 32768 // 1:32768
#pragma config MCLRE = OFF // MCLR Enable
#pragma config LPT1OSC = OFF // Low Power Timer1 Oscillator Enable
#pragma config PBADEN = OFF // Port B A/D Enable: PortB<4:0> pins are configured as digital I/O on RESET
#pragma config CCP2MX = OFF // CCP2 Mux bit
#pragma config STVREN = OFF // Stack Overflow Reset
#pragma config LVP = OFF // Low Voltage ICSP:
#pragma config ICPRT = OFF // Dedicated In-Circuit Debug/Programming Enable
#pragma config XINST = OFF // Extended Instruction Set Enable
#pragma config DEBUG = OFF // Background Debugger Enable

#pragma config CP0 = OFF //Code Protection Block 0
#pragma config CP1 = OFF //Code Protection Block 1
#pragma config CP2 = OFF //Code Protection Block 2
#pragma config CP3 = OFF //Code Protection Block 3
#pragma config CPB = OFF //Boot Block Code Protection
#pragma config CPD = OFF //Data EEPROM Code Protection:
#pragma config WRT0 = OFF // Write Protection Block 0:
#pragma config WRT1 = OFF //Write Protection Block 1:
#pragma config WRT2 = OFF //Write Protection Block 2:
#pragma config WRT3 = OFF //Write Protection Block 3:
#pragma config WRTB = OFF //Boot Block Write Protection:
#pragma config WRTC = OFF //Configuration Register Write Protection:
#pragma config WRTD = OFF //Data EEPROM Write Protection:
#pragma config EBTR0 = OFF //Table Read Protection Block 0:
#pragma config EBTR1 = OFF //Table Read Protection Block 1:
#pragma config EBTR2 = OFF //Table Read Protection Block 2:
#pragma config EBTR3 = OFF //Table Read Protection Block 3:
#pragma config EBTRB = OFF //Boot Block Table Read Protection:
//#pragma config //

#endif


Сря Апр 19, 2006 7:00 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение 
SAM&LPC са за предпочитане, даже по-скоро само SAM заради това че има DMA-та.

но... първо трябва да помислиш как ще ги вкараш в съответния контролер...
Всичко зависи от интерфейса на АЦП-то... Ако примерно е SPI - тогава най-лесно ще стане с SAM - пускаш си ДМА-тата и чакаш...
Ама ако ще ги вкарваш прези GPIO-ta имаш сериозен проблем... Ако си мастер, ще ти трябват поне 3 операции с бавните портове, ако си слейв - може евентуално да успееш с FIQ-a


Сря Апр 19, 2006 7:11 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
Верно че 245 цата работи до 1 мегабайт (поне така пише).

Магьостник, какъв трансфер си вдигал със драйвера на микрочип? Ако не ме лъже паметта той беше за виртуален COM. Пробвал ли си да правиш непрекъснат трансфер - не кратки и бързи пакети, а продължителен трансфер да кажем 10 минути на висока скорост. Че контролера го може е ясно, ама не знам драйверите дали са написани като хората.

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


Сря Апр 19, 2006 7:19 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение 
синхрония трансфер е 64кБАЙТА/сек
асинхронния - скороста ти зависи от натовареноста на виндоуса
за 4550
max 800 кбайта/сек - само прехвърля масив
ном 400 кбайта/сек - работи без проблем
пробите за време(постоянен обмен) бяха около няколко часа(над 2)

Има и виртуален ком - не съм го пробвал, но работил - има много примери в нета за ком
Аз пробвах дирекния със IOCTL и ReadFile, WriteFile


Сря Апр 19, 2006 7:38 pm
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Чет Апр 13, 2006 11:06 pm
Мнения: 109
Мнение 
Главното преимущество на C8051F3xx на Silabs e високопроизводителното ядро - от 2 до 4 пъти по-производително от PIC18F4550, както и бързото АЦП, вграден осцилатор (и за USB).

_________________
You can't manage what you can't measure.
You can't measure what you can't define.
You can't define what you don't understand.


Чет Апр 20, 2006 1:15 am
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
Ама е 8051. А аз него не го обичам (защото просто не го познавам добре), а пък тепърва да седна да се занимавам с него, нямам време и нерви. Иначе нищо лично към процесорите - сигурно са си ОК.

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


Чет Апр 20, 2006 10:13 am
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Сря Дек 21, 2005 2:09 pm
Мнения: 145
Мнение 
Цецо към какво се насочи все пак ? Аз също имам един проект с USB и PIC ма не ми се рискува с 4550, мисля да си ползвам FTxxx чисто решение без да ставам "гуру" в протокола на USB. Много ми се ще да ползвам 4550 щото ще спестя пари и място на платката, ама нещо нямам доверие на PIC с USB, пък и някой беше казал някога във форума май беше бач Кольо, че ако трябва да се прави нещо дет работи читаво по-добре от FTDI няма, а 4550 ще си го оставя кат имам по-свободно време да го разцъкам


Чет Апр 20, 2006 10:18 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пон Сеп 27, 2004 9:22 am
Мнения: 15501
Местоположение: София
Мнение 
И аз имам същия проблем. Трябва ми бързо решение, без много да се мисли. Засега ще пробваме с 245цата.
Но иначе имам желание да разбера как да стане с пика, на по късен етап, може да го ползвам.

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


Чет Апр 20, 2006 10:26 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Фев 26, 2006 6:52 pm
Мнения: 11266
Местоположение: Добрич
Мнение 
Цецо какъв ти е проблема с AT91SAM7S32 ?
само с това животно може да постигнеш >12мбита. Разбира се, ако можеш да си направиш и входния и изходен трансфер с ДМА-та, а по средата CPU-to компресира "on the fly".... Не занам какво мериш с тези АЦП-та, но много вероятно е от 24-бит стойности с проста компресия да ги намалиш поне до 8-бит.


Чет Апр 20, 2006 10:42 am
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 39 мнения ]  Отиди на страница 1, 2, 3  Следваща

Кой е на линия

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


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

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