реклама на сайте
подробности

 
 
13 страниц V  « < 5 6 7 8 9 > »   
Reply to this topicStart new topic
> ARM. Энкодеры и акселерометры, Помогите решить задачу
aaarrr
сообщение Sep 3 2009, 20:13
Сообщение #91


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Zliva @ Sep 4 2009, 00:06) *
Что вы имеете ввиду?

Выше упоминалась такая ситуация с TIOAx.

Цитата(Zliva @ Sep 4 2009, 00:06) *
И еще, когда пины 27, 28, 29, 30 энкодера настраиваю на вход, в симуляции пин 27 выдает коварное сообщение (которое выше), которое я игнорирую, но когда пины 26, 28, 29, 30 энкодера настраиваю на вход, в симуляции пин 26 работает нормально.

Угу. Просто надо все смотреть на железе.
Go to the top of the page
 
+Quote Post
Zliva
сообщение Sep 4 2009, 19:45
Сообщение #92


Частый гость
**

Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318



Есть проблемка с ADXL210AQC – он не работает. На Украине не могу нигде купить.
Остановил свой выбор на MMA7261QT (выходной сигнал аналог) и LIS302DL(выходной сигнал SPI/I2S). Кто-то работал с этими датчиками? Может, порекомендуете какие-то другие? Буду рад всем предложениям. Все равно покупать. Так что ШИМ наверное отпадает. Хотя плюсы в этом есть. Освоил ТС, это уже что-то.


--------------------
If the person is successful, he is successful in any sphere.
Go to the top of the page
 
+Quote Post
Zliva
сообщение Sep 5 2009, 22:38
Сообщение #93


Частый гость
**

Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318



Настало время USB. Пока доставят акселерометры, не буду тратить время. Вы говорили, что в моем случае класс CDC вполне подойдет и тип передачи данных bulk, так я писал, что нужна гарантия доставки данных. Начитался Агурова. Кругом голова идет. Много информации в книгах, а четко выраженной последовательности нет, или я пока себе её не сформировал. Ну да ладно. Впринципе, со стороны МК проблем не вижу, а вот со стороны ПК нужно потрудится. Может у кого-то есть заготовка для инициализации дескрипторов для МК в случаи использования класса CDC? И еще, не нашол информации. RS-232 дет скорость 115,2кБит/с, в случаи использования CDC, я могу получить скорость 12 МБит/с, или я ошибаюсь?
Может когда-то по-играюсь с OTG через MS и с флеш карточкой.


--------------------
If the person is successful, he is successful in any sphere.
Go to the top of the page
 
+Quote Post
head_sk
сообщение Sep 6 2009, 06:47
Сообщение #94


Частый гость
**

Группа: Участник
Сообщений: 80
Регистрация: 3-07-09
Пользователь №: 50 897



Цитата(Zliva @ Sep 6 2009, 01:38) *
Может у кого-то есть заготовка для инициализации дескрипторов для МК в случаи использования класса CDC?


Код
const char devDescriptor[] =  {
    /* Device descriptor */
    0x12,  // bLength
    0x01,  // bDescriptorType
    0x10,  // bcdUSBL
    0x01,  //
    0x02,  // bDeviceClass:    CDC class code
    0x00,  // bDeviceSubclass: CDC class sub code
    0x00,  // bDeviceProtocol: CDC Device protocol
    0x08,  // bMaxPacketSize0
    0xFF,  // idVendorL
    0xFF,  //
    0xFF,  // idProductL
    0xFF,  //
    0x10,  // bcdDeviceL
    0x01,  //
    0x00,  // iManufacturer    // 0x01
    0x00,  // iProduct
    0x00,  // SerialNumber
    0x01  // bNumConfigs
  };

  const char cfgDescriptor[] =  {
    /* ============== CONFIGURATION 1 =========== */
    /* Configuration 1 descriptor */
    0x09,  // CbLength
    0x02,  // CbDescriptorType
    0x43,  // CwTotalLength 2 EP + Control
    0x00, 0x02,  // CbNumInterfaces
    0x01,  // CbConfigurationValue
    0x00,  // CiConfiguration
    0xC0,  // CbmAttributes 0xA0
    0x00,  // CMaxPower

    /* Communication Class Interface Descriptor Requirement */
    0x09,  // bLength
    0x04,  // bDescriptorType
    0x00,  // bInterfaceNumber
    0x00,  // bAlternateSetting
    0x01,  // bNumEndpoints
    0x02,  // bInterfaceClass
    0x02,  // bInterfaceSubclass
    0x00,  // bInterfaceProtocol
    0x00,  // iInterface

    /* Header Functional Descriptor */
    0x05,  // bFunction Length
    0x24,  // bDescriptor type: CS_INTERFACE
    0x00,  // bDescriptor subtype: Header Func Desc
    0x10,  // bcdCDC:1.1
    0x01,

    /* ACM Functional Descriptor */
    0x04,  // bFunctionLength
    0x24,  // bDescriptor Type: CS_INTERFACE
    0x02,  // bDescriptor Subtype: ACM Func Desc
    0x00,  // bmCapabilities

    /* Union Functional Descriptor */
    0x05,  // bFunctionLength
    0x24,  // bDescriptorType: CS_INTERFACE
    0x06,  // bDescriptor Subtype: Union Func Desc
    0x00,  // bMasterInterface: Communication Class Interface
    0x01,  // bSlaveInterface0: Data Class Interface

    /* Call Management Functional Descriptor */
    0x05,  // bFunctionLength
    0x24,  // bDescriptor Type: CS_INTERFACE
    0x01,  // bDescriptor Subtype: Call Management Func Desc
    0x00,  // bmCapabilities: D1 + D0
    0x01,  // bDataInterface: Data Class Interface 1

    /* Endpoint 1 descriptor */
    0x07,  // bLength
    0x05,  // bDescriptorType
    0x83,  // bEndpointAddress, Endpoint 03 - IN
    0x03,  // bmAttributes      INT
    0x0A,  // wMaxPacketSize
    0x00, 0xFF,  // bInterval

    /* Data Class Interface Descriptor Requirement */
    0x09,  // bLength
    0x04,  // bDescriptorType
    0x01,  // bInterfaceNumber
    0x00,  // bAlternateSetting
    0x02,  // bNumEndpoints
    0x0A,  // bInterfaceClass
    0x00,  // bInterfaceSubclass
    0x00,  // bInterfaceProtocol
    0x00,  // iInterface

    /* First alternate setting */
    /* Endpoint 1 descriptor */
    0x07,  // bLength
    0x05,  // bDescriptorType
    0x01,  // bEndpointAddress, Endpoint 01 - OUT
    0x02,  // bmAttributes      BULK
    AT91C_EP_OUT_SIZE,  // wMaxPacketSize
    0x00, 0x00,  // bInterval

    /* Endpoint 2 descriptor */
    0x07,  // bLength
    0x05,  // bDescriptorType
    0x82,  // bEndpointAddress, Endpoint 02 - IN
    0x02,  // bmAttributes      BULK
    AT91C_EP_IN_SIZE,  // wMaxPacketSize
    0x00, 0x00  // bInterval
  };

  const char languageIdDescriptor[] =  {
    0x04, 0x03, 0x09, 0x04
  };

  const char manufacturerDescriptor[] =  {

    10, 3, 'F', 0, 'I', 0, 'R', 0, 'M', 0
  };

  const char serialNumberDescriptor[] =  {

    10, 3, '1', 0, '2', 0, '3', 0, 'A', 0
  };

  const char nameDeviseDescriptor[] =  {

    14, 3, 'D', 0, 'E', 0, 'V', 0, 'I', 0,'C',0,'E',0
  };
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 6 2009, 10:05
Сообщение #95


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Zliva @ Sep 6 2009, 02:38) *
Впринципе, со стороны МК проблем не вижу, а вот со стороны ПК нужно потрудится.

В случае CDC все как раз наоборот.

Цитата(Zliva @ Sep 6 2009, 02:38) *
И еще, не нашол информации. RS-232 дет скорость 115,2кБит/с, в случаи использования CDC, я могу получить скорость 12 МБит/с, или я ошибаюсь?

Тыц
Go to the top of the page
 
+Quote Post
head_sk
сообщение Sep 6 2009, 11:04
Сообщение #96


Частый гость
**

Группа: Участник
Сообщений: 80
Регистрация: 3-07-09
Пользователь №: 50 897



Советую использовать libusb
Go to the top of the page
 
+Quote Post
Zliva
сообщение Sep 7 2009, 19:43
Сообщение #97


Частый гость
**

Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318



Вот здесь скачал реализацию CDC, в IAR-е получил бинарник и залил в кристалл. Работает. В Keil-е не хочет. Вот код.
Прикрепленные файлы
Прикрепленный файл  Encoder_v.01.rar ( 5.25 килобайт ) Кол-во скачиваний: 21
 


--------------------
If the person is successful, he is successful in any sphere.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 8 2009, 08:24
Сообщение #98


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Здесь можете скачать атмеловские примеры для IAR, Keil и GCC.

Качество - ниже плинтуса, поэтому использовать не рекомендую (как и найденное вами).
Go to the top of the page
 
+Quote Post
Zliva
сообщение Sep 8 2009, 12:17
Сообщение #99


Частый гость
**

Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318



Может кто-то имеет нормальную, работоспособную версию реализации CDC? Версия с атмела тоже какая-то кучерявая.


--------------------
If the person is successful, he is successful in any sphere.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 8 2009, 12:20
Сообщение #100


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Боюсь, бесплатно будут только "кучерявые" - на то они и примеры.
Go to the top of the page
 
+Quote Post
Zliva
сообщение Sep 8 2009, 12:30
Сообщение #101


Частый гость
**

Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318



Цитата(aaarrr @ Sep 8 2009, 15:20) *
Боюсь, бесплатно будут только "кучерявые" - на то они и примеры.

Ладною. Попробую прикрутить к своему проекту. Может что-то получится.


--------------------
If the person is successful, he is successful in any sphere.
Go to the top of the page
 
+Quote Post
head_sk
сообщение Sep 8 2009, 15:35
Сообщение #102


Частый гость
**

Группа: Участник
Сообщений: 80
Регистрация: 3-07-09
Пользователь №: 50 897



Корявая это да... Но там напильником работать не более суток и не так сложно
Go to the top of the page
 
+Quote Post
Zliva
сообщение Sep 8 2009, 15:59
Сообщение #103


Частый гость
**

Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318



Цитата(head_sk @ Sep 8 2009, 18:35) *
Корявая это да... Но там напильником работать не более суток и не так сложно

Да. Согласен. Если конечно знать, что пилить.


--------------------
If the person is successful, he is successful in any sphere.
Go to the top of the page
 
+Quote Post
singlskv
сообщение Sep 8 2009, 19:18
Сообщение #104


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(head_sk @ Sep 8 2009, 19:35) *
Корявая это да... Но там напильником работать не более суток и не так сложно

Ну чтоб качественный итог получить нужна примерно неделя...


Цитата(Zliva @ Sep 8 2009, 19:59) *
Да. Согласен. Если конечно знать, что пилить.

Пилить там нужно в основном неправильную работу прерываний(ну просто апшибки типа забыли
запретить прерывание на ендпоинте ) и сильно
избыточные в некоторых местах вызовы вложенных функций...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 8 2009, 19:22
Сообщение #105


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(singlskv @ Sep 8 2009, 23:18) *
Ну чтоб качественный итог получить нужна примерно неделя...

Дык лучше за ту же неделю свое написать. Ну, если опыт есть, конечно. А так работать будет, но уродства останутся.
Go to the top of the page
 
+Quote Post

13 страниц V  « < 5 6 7 8 9 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 9th August 2025 - 22:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.01504 секунд с 7
ELECTRONIX ©2004-2016