Отговори на тема  [ 572 мнения ]  Отиди на страница Предишна  1 ... 33, 34, 35, 36, 37, 38, 39  Следваща
Логически Анализатори .... 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
TheWizard написа:
<API> група команди
<LEN>
<CMD> команда
<Data...>
<CS xor all>

Е протокол които го ползват дори GSMs Siemens - доста добър и бърз е... експериментирал съм доста с него и дава добри резултати
Ако командите са от 0-255, API-то може да отпадне - протокола печели време от 1 char


Един char няма да помогне с кой знае колко, идеята е колкото се може по голям пакет наведнъж.


Пет Сеп 23, 2005 1:34 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6107
Мнение 
Както гледам тази идея като цяло може спокойно да бъде преместена в раздел БЕЗУМНИ ИДЕИ....


Съб Сеп 24, 2005 1:08 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
Не ни подценявай :!:


Съб Сеп 24, 2005 1:12 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6107
Мнение 
:) това беше само ирония ама мисля че е време да направите нещо вече по този проект


Съб Сеп 24, 2005 1:15 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
Правим, само че проекта се движи бавно, на участниците не се плаща за него, всеки си има някаква работа и малко свободно време 8)


Съб Сеп 24, 2005 1:18 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6107
Мнение 
Един съвет - Обобщете го някъде - може и други да мислят по проекта


Съб Сеп 24, 2005 1:20 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
Благодарим за съвета, огледай раздела, обобщили сме каква е крайната цел. Ако искаш да се включиш с нещо, заповядай :D


Съб Сеп 24, 2005 1:31 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Като гледам предложения от The Wizard протокол не виждам нещо с което да е по добър или по универсален от предложения от мен.

Този протокол съм го мислил специално за управлението на подобно устроиство.
- има ID на устроиството което е удобно за изграждането на алгоритъма на приемане от страна на процесора. То не е необходимо при работата с USB-to тъи като FTDI си има сериен номер които индетифицира съответното устроиство. Но все пак това ID прави протокола удобен за работа и с друг вид сериина комуникация.
- има къси команди / тези на които най старшия бит е 0 при които пакета е само 6 байта / предават се 3 баита като операнд на командата.
- дълги команди които изппращат или приемат до 256 баита данни + 2 байта операнд и 1 баит дължина на пакета които може също в някои случаи да се ползва като операнд.
- Ако е необходимо да се изпрати по голям от 256 баита пакет от данни по този протокол става като се пусне заявка с команда към устроиството което трябва да изпрати данните след което се очаква за отговор в вид на "data package" като ограничение за максималната дължина на пакета няма тъй като в "SENT DATA PACKAGE" няма дължина на пакета. Което дава свобода на реализацията на работата с пакети данни.

А ако някой прояви желание да работи по проекта е добре дошъл а това да прочете темите и да разбере кое защо е така е наи малкото което може да направи.


Съб Сеп 24, 2005 10:05 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6107
Мнение 
възможно най късата команда е 4 байта
[01 04 01 04]

01 API/ID.....група команди..... можеш да имаш 256 групи(pipes,endpoints... в този смисъл)
04 дължина на буфера
01 командата - например PING
04 XOR

дълга команда
01 FF read .....data[252]............... xor
максималната дължина на буфера е 256
ако LEN стане INT..... данните са доста

Това не е измислено от мен - взел съм го от Сименс ГСМ - просто казах че съм го пробвал многократно и дава много добри резултати

Интересното беше да разгледате пик 18F4550 - 12 MPS, има си USB2.0 със 16 end-points, както и Паралелен порт за FPGA-то. Така FTDI-то отпада и може да се развие много по голяма скорост на дата обмен, както и този протокол за който дискутираме може да отпадне(USB - контролен EP0, Сериален EP1, паралел EP2....)


Нед Сеп 25, 2005 12:17 pm
Профил ICQ
Ранг: Професионалист
Ранг: Професионалист
Аватар

Регистриран на: Сря Окт 13, 2004 11:24 pm
Мнения: 500
Местоположение: Стара Загора
Мнение 
Господа, извинявам се, че се намесвам в движение! Хрумна ми нещо относно протокола за връзна:
никъде не споменавате /или аз поне не съм видял/ за протокол удобен за POSIX /Portable Operating System Interface/, ще поясня малко. Aко се работи под Linux например, можете да изчетете цялата памет от анализатора във файл /давам пример по RS232 COM1/ с простите команди в един текстов файл:
Код:
#!/bin/sh
echo Logic Analizer dump memory script is runnig...
#setting RS-232 speed
stty -F /dev/ttyS0 115200
echo CMD_DUMP_LOGIC_ANAL_TO_FILE > /dev/ttyS0
cat /dev/ttyS0 > DUMP_LOGIC_ANAL_FILE.BIN

за USB-to мисля ще стане със /dev/sda0.

нещо като FTP протокола може да е ASCII или BIN, всички команди към ЛА-то да са в ASCII формат включително и операндите, а ще предвидите команда която да превключва трансфера на данните от ЛА-то към PC във формат ASCII или BIN.

Какви са предимствата:
под WIN си работите със драйвери и обмена е във BIN формат /както ще го правите/;
под Linux Unix си работите в ASCII формат и избягвате писането на драйвери, можете да пренасочвате входа и изхода на данните от ЛА към друга програма, управлението може да се сведе само до текстови комадни от файл, ЛА може да се управлява дистанционно по TCP/IP в интернет от една малка Linux<50MB инсталация на някаква дънна платка, резултата може да се вижда като HTML страница и т.н. И всичко това без написването на нито един драйвер или ред програма!


Нед Сеп 25, 2005 1:16 pm
Профил YIM
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
TheWizard
всъщност подобна организация на протокол даде Predator. Обмислях го тоя вариант но има следното неудобство като се ползава.
- при указване на големина на буфера с един байт имаме буфер до 256 байта и на всичкото отгоре не е 256 баита защото от 256 баита трябва да извадим 4те баита на командата ИДтата и Xor-a . И нямаме операнди.

Да разгледаме случая искаме да запишем страница от паметта на серииния флаш които е вързан на микроконтролера.
По предложения от мен протокол това ще стане само с една комада тъй като има 256 баитов буфер + 2баита операнд който посочва коя страница трябва да се пише.

Да разгледаме и друг случай. Искаме да натъпчем цялата Рам на анализатора с данни през USB-to. Ще стане така:
- изпращаме команда която да активира функция в анализатора която да очаква пакет дата 1 Мб. След получаване потвърждение за готовност от страна на анализатора се започва изпращането на Data Package с големина 1 Мб. Тъи като в процесорния модул приемането е реализирано изцяло на прекъсването едновременно с приемането може де се изпраща приетото по SPI или паралелен канал (зависи как ще е реализирана връзката) към FPGA модула. Така се получава че изпращаме 1 мегабаит данни по възможно най бързия начин.

Ако ползваме 2 баита за големина на буфера при твоя протокол положението се пооправя но пак губи по удобство на работа в сравнение с този. Също и XOR е по неудачна проверка от SUM. Все пак това е е устроиство в което има доста енергонезависима памет и не е желателно да има грешно интерпретирани команди или данни. Протокола които предлагам е защитен с 2 контролни суми. Първо на самата команда което изключва възможноста командата да се интерпретира погрешно и втора 2 баитова контролна сума за самите данни. Като ако съответно нямаме данни в съответната команда втората секция на командата е напълно изключена и не се излъчва и не се очаква.

forest_gump
Ако трябва да работим с ASCII команди това ще усложни протокола и са излишни главоболия. Управлението на това устроиство е много по сложно от четене на паметта му. FTDI си има драйвер и за под линукс и не е проблем да се направи всичко както си е под Windows. А и както изглежда ентусиасти за проекта липсват така че надали някой ще напише софт и за линукс.


Нед Сеп 25, 2005 2:01 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
Идеята за протокола е моя, аз обаче отдавна съм променил тоя протокол, в момента дължината на <Data Size> е 2 байта и се стремя да предавам по-големи пакети ако става въпрос за трансфер по USB. Наистина няма нужда от 2 ID байта, аз го ползвах заедно с RS485 протокол и идеята ми беше бъдеща възможност за разширяване на устройството. Аз лично съм съгласен с протокола на Nikola, не виждам какво пречи дължината на <Data Size> да е 2 байта. А и говорим за USB кабел не по-дълъг от 1m, едно CRC8 май ще свърши чудесна работа :wink: Идеята за PIC18F4550 ми допада, особено след като в сайта на Microchip има драйвер за "USB Mass Storage Device"


Нед Сеп 25, 2005 3:52 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Окт 31, 2004 9:19 pm
Мнения: 4464
Местоположение: Stara Zagora
Мнение 
Аз си мислех за CRC16 но преди по ICQ-to ти бях споменал че съм правил експеримент на 500000 бода. Цяло денонощие бях оставил компа да праща 256 байтов буфер random data а АТмегата да го връща и бях направил CRC32 контрол. За цялото денонощие нямаше един грешен пакет. Кабела ми е грубо някъде 1,5 - 2 метра а от FTDI do ATmega имам някъде около 60 см свободно висящ кабел като включително и масата е така висяща. И сметнах че връзката е доста надежна и не е необходимо CRC, затова и оставих обикновенна контролна сума. А дължината на буфера на командата изходих не само от опростяване на протокола. На практика се явява че трябва данните обикновенно да се зареждат в буфер в RAM паметта. Но дори да се ползва АТmega128 рама е 3кб. Просто няма място за по голям буфер. Ако се прехвърлят повече данни накуп то това се прави в съответствие с това откъде вземаш и къде пращаш. А в такъв случаи е по удачно да се ползват различни процедури в зависимост от случая затова и метода Sent Data Package e по удачен от голям буфер в самата команда.

А дори да оставим настрана негативизма които Microchip е създала около произведенията си все пак пика не може да замени двуканалния FTDI. С него няма да има директна връзка с FPGA-to. А за драйвера на Микрочип имам много съмнения доколко ще работи като хората. А който вече се е разправял с драивера на FTDI вече знае че забележки по него няма. Отработили са го хората.
А и за АТмега имам вече готова настроена и изтествана опашка от задачи и още някои неща които са си нещо като операционна система,имам направени библиотека за комуникация,библиотека за работа с цветния LCD ot Ericson. BrianStorm беше казал че е готов с библиотеката за зареждане на ядрото в Спартана от серииния флаш. Освен това имам доста дребни и полезни библотечки пак за АТмегата. Това хич не е малко работа която е свършена. Дори с това дето е написано процесорния модул може вече да си работи.


Нед Сеп 25, 2005 4:40 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Пон Юли 04, 2005 11:51 pm
Мнения: 651
Местоположение: София
Мнение 
Abre az principno s bibliotekata o6te ne sym gotow ... :cry: taka i ne izqhnihte kwi funkcii to4no iskate .... rabotata e 4e uspqh da probwam procesa sys zarezdaneto na qdroto koeto e i cqlata rabota .... natam si e samo 10-20min pred kompa ...

Abre gledam 4e ste po4nali tuka protokoli da mislite ..... ima li smisyl da se prawi towa ne tozi etap ... ?

Daite pyrwo da spretnem okon4atelniq wariqnt na shemata i da po4nem s iz4ertawaneto na PCB'to ... taka de ako 6te pi6eme soft .. pone da znaem ot kakwo 6te se systoi zelqzoto ..... (PS sori za latinicata .. ama na teq kompowe w TU't nqma FlehType ..... :) )

_________________
От наше село са види връо, ама от връо се невиди наше село ... що така и я незнам .. ?!?


Пон Сеп 26, 2005 8:23 am
Профил ICQ WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Окт 07, 2004 1:22 pm
Мнения: 1949
Местоположение: София
Мнение 
Nikola, за PIC18F4550 нямах в предвид да ползваме наготово драйвери от сайта на Microchip :D Идеята ми беше по скоро за USB device със повече контрол... PIC-a има хардуерен PSP (Paralell Slave Port), SPI и I2C, една камара I/O-та и възможност за по-голям буфер за разлика от FTDI чиповете. Казвам го като идея :idea: Верно си падам малко мазохист :lol:


Пон Сеп 26, 2005 10:17 am
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 572 мнения ]  Отиди на страница Предишна  1 ... 33, 34, 35, 36, 37, 38, 39  Следваща

Кой е на линия

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


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

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