|
ARM. Энкодеры и акселерометры, Помогите решить задачу |
|
|
|
Jul 29 2009, 20:01
|
Частый гость
 
Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318

|
Всем привет! Нужна помощь. Есть виброплощадка с двумя дебалансными валами, с одной стороны которой через эластические муфты приделаны двигатели, а с другой – инкрементные энкодеры. Площадка крепится через пружины к станине. Двигатели прикручены к станине жестко. Валы площадки не синхронизированы. К площадке крепится датчик ускорения ADXL210 с выходным сигналом ШИМ. Двигатель вращается с частотой 1500 об/мин, следовательно это равно 25об/сек. Энкодер имеет разрешение 1024им/об, это равно 1024*25=25600Гц. Начальное положение определяться перед пуском. Поскольку дебалансный вал имеет эксцентриситет, то соответственно он направлен в низ. Это и есть его начальное положение. Контролер и комп НЕ УПРАВЛЯЕТ ДВИГАТЕЛЯМИ, а они запускаются отдельно через рубильник. Точность измерения: - угловое положение +/-0,4градуса;
- угловую скорость(+/-1.0град/сек);
- угловое ускорение (после интерполяции графика скорости. Зависит от метода);
- линейное ускорение(+/-0,1g);
Нужно периодично опрашивать датчики, чтобы знать его положение, ускорение в каждый момент времени. Данные через USB от датчиков должны заливаться на комп. Нужно измерять положения дебалансных валов и их скорость, ускорение, а также ускорение, скорость, положение площадки. Ловить сдвиг фаз между положениями валов. Здесь нимного обсуждалось и здесьЧто уже есть: изготовлена площадка, на ней стоят энкодеры. Уже запускал, работает. Прикупил ARM отладочную плату AT91SAM7S64_DBoard для ARM микроконтроллеров фирмы ATMEL и программатор J-Link - USB JTAG adapter. Хочу на базе этого дивайса решить эту задачу. Опит программирования только AVR. Знаю немного Си и Delphi. Очень нужно. Помогите пожалуйста.
--------------------
If the person is successful, he is successful in any sphere.
|
|
|
|
|
 |
Ответов
|
Aug 23 2009, 15:35
|
Частый гость
 
Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318

|
Вот код обработки по прерыванию положения первого энкодера. CODE #include <AT91SAM7S128.H> /* AT91SAM7S64 definitions */ #include "..\Board.h"
volatile unsigned int ENCODER1_Position = 0; /* Текуща позиция энкодера 1*/ volatile unsigned long int ENCODER1_Count = 0; /* Текуща позиция энкодера 1*/ #define ENCODER1_A_MASK (1<<20) /* PA19 */ #define ENCODER1_B_MASK (1<<19) /* PA20 */ #define ENCODER2_A_MASK (1<<15) /* PA15 */ #define ENCODER2_B_MASK (1<<14) /* PA14 */ #define ENCODER_A_MASK (ENCODER1_A_MASK|ENCODER1_B_MASK|ENCODER2_A_MASK|ENCODER2_B_MASK)
#define ENCODER1_A (1<<20) // PA19 #define ENCODER1_B (1<<19) // PA20 #define ENCODER2_A (1<<15) // PA15 #define ENCODER2_B (1<<14) // PA14
#define ENCODER1_resolution 1024 #define ENCODER2_resolution 1024
extern AT91S_PIO * pPIO; /* Global Pointer to PIO */
extern __irq void irq0_int (void); /* IRQ0 Function */
void irq0_nint (void) { /* Nested IRQ0 (Push button SW2) */
if ((pPIO->PIO_PDSR & ENCODER1_A) == 0) { /* Проверяем активный уровень на входе А энкодера 1*/ if ((pPIO->PIO_PDSR & ENCODER1_B) == 0) { /* Определяем направление вращения энкодера 1*/ if (ENCODER1_Position == (ENCODER1_resolution-1)) {/*Проверяем не прывисл ли ENCODER1_Position значения полосок на энкодере*/ ENCODER1_Position = 0;/*Если превысил то отсчитываем с 0*/ // ENCODER1_Count++; /*Увеличиваем на 1 значения оборотов */ } ENCODER1_Position++;} /* Если за часовой стрелкой то увеличиваем на 1*/ else { if (ENCODER1_Position == 0) { /* Проверяем не прывисл ли ENCODER1_Position значения 0*/ ENCODER1_Position = (ENCODER1_resolution-1);/*Если 0 то отсчитываем с ENCODER1_resolution-1*/ ENCODER1_Count++; /*Уменьшаем на 1 значения оборотов */ } ENCODER1_Position--; } /* Если против часовой стрелкой то уменьшаем на 1*/ }
*AT91C_AIC_EOICR = 0; /* End of Interrupt*/ }
void init_extint (void) { /* Setup IRQ 0 Interrupt */ AT91S_AIC * pAIC = AT91C_BASE_AIC; /* Setup IRQ0 Interrupt Mode and Vector with Priority 0 and Enable it */ /* AIC_SMR - Регистр источника прерывания 0 AT91C_ID_IRQ0 - ID Прерывание для IRQ0 AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE - Internal Sources Code Label Positive Edge triggered - Положительный фронт */ pAIC->AIC_SMR[AT91C_ID_IRQ0] = AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE | 0;// AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE /* Вектор прерывания. AIC_SVR0..AIC_SVR31 - В эти регистры записываются адреса соответствующих процедур обработки прерывания для каждого источника.*/ pAIC->AIC_SVR[AT91C_ID_IRQ0] = (unsigned long) irq0_int; /*Регистр разрешения прерываний*/ pAIC->AIC_IECR = (1 << AT91C_ID_IRQ0); } Вроде все правильно, но почему дважды вызывается прерывание? Все значения пересылаю через USART. CODE #include <AT91SAM7S128.H> /* AT91SAM7S64 definitions */ #include "..\Board.h"
#define BR 115200 /* Baud Rate */
#define BRD (MCK/16/BR) /* Baud Rate Divisor */
AT91S_USART * pUSART = AT91C_BASE_US0; /* Global Pointer to USART0 */
void init_serial (void) { /* Initialize Serial Interface */
*AT91C_PIOA_PDR = AT91C_PA5_RXD0 | /* Enable RxD0 Pin */ AT91C_PA6_TXD0; /* Enalbe TxD0 Pin */
pUSART->US_CR = AT91C_US_RSTRX | /* Reset Receiver */ AT91C_US_RSTTX | /* Reset Transmitter */ AT91C_US_RXDIS | /* Receiver Disable */ AT91C_US_TXDIS; /* Transmitter Disable */
pUSART->US_MR = AT91C_US_USMODE_NORMAL | /* Normal Mode */ AT91C_US_CLKS_CLOCK | /* Clock = MCK */ AT91C_US_CHRL_8_BITS | /* 8-bit Data */ AT91C_US_PAR_NONE | /* No Parity */ AT91C_US_NBSTOP_1_BIT; /* 1 Stop Bit */
pUSART->US_BRGR = BRD; /* Baud Rate Divisor */
pUSART->US_CR = AT91C_US_RXEN | /* Receiver Enable */ AT91C_US_TXEN; /* Transmitter Enable */ }
int sendchar (int ch) { /* Write character to Serial Port */
if (ch == '\n') { /* Check for CR */ while (!(pUSART->US_CSR & AT91C_US_TXRDY)); /* Wait for Empty Tx Buffer */ pUSART->US_THR = '\r'; /* Output CR */ } while (!(pUSART->US_CSR & AT91C_US_TXRDY)); /* Wait for Empty Tx Buffer */ return (pUSART->US_THR = ch); /* Transmit Character */ }
int getkey (void) { /* Read character from Serial Port */
while (!(pUSART->US_CSR & AT91C_US_RXRDY)); /* Wait for Full Rx Buffer */ return (pUSART->US_RHR); /* Read Character */ } Вот шапка. CODE AREA IRQ0, CODE, READONLY ARM
PRESERVE8 ALIGN IMPORT irq0_nint EXPORT irq0_int irq0_int FUNCTION
SUB LR, LR, #4 ; Update Link Register STMFD SP!, {R0-R12, LR} ; Save Workspace & LR to Stack MRS R0, SPSR ; Copy SPSR to R0 STMFD SP!, {R0, R1} ; Save SPSR to Stack (8-byte) MSR CPSR_c, #0x1F ; Enable IRQ (Sys Mode) STMFD SP!, {R0, LR} ; Save LR_sys to Stack (8-byte) LDR R0, =irq0_nint ; Get IRQ Function Address MOV LR, PC ; Return Address BX R0 ; Call IRQ Function LDMFD SP!, {R0, LR} ; Restore LR_sys MSR CPSR_c, #0x92 ; Disable IRQ (IRQ Mode) LDMFD SP!, {R0, R1} ; Restore SPSR to R0 MSR SPSR_cxsf, R0 ; Copy R0 to SPSR LDMFD SP!, {R0-R12, PC}^ ; Return to program
ENDFUNC
END Модератор. Zliva, в следующий раз буду просто удалять такие цитаты из сообщения. Либо форматируйте их сами, оформляя тэгами [ codebox ] и урезая по ширине, либо прилагайте к сообщению в виде текстовых файлов, как это рекомендуют Правила форума. С уважением, rezident.
Причина редактирования: Нарушение п.3.4 Правил форума.
--------------------
If the person is successful, he is successful in any sphere.
|
|
|
|
|
Aug 23 2009, 16:11
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(Zliva @ Aug 23 2009, 19:35)  Код /* Setup IRQ0 Interrupt Mode and Vector with Priority 0 and Enable it */ /* AIC_SMR - Регистр источника прерывания 0 AT91C_ID_IRQ0 - ID Прерывание для IRQ0 AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE - Internal Sources Code Label Positive Edge triggered - Положительный фронт */ pAIC->AIC_SMR[AT91C_ID_IRQ0] = AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE | 0; // AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE Прерывание от IRQ0 является внешним источником, поэтому обратите внимание на такие строки в хидере: Цитата #define AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE ((unsigned int) 0x1 << 5) // (AIC) Internal Sources Code Label Positive Edge triggered #define AT91C_AIC_SRCTYPE_EXT_NEGATIVE_EDGE ((unsigned int) 0x1 << 5) // (AIC) External Sources Code Label Negative Edge triggered Цитата(Zliva @ Aug 23 2009, 19:35)  Вроде все правильно, но почему дважды вызывается прерывание? Все значения пересылаю через USART. А откуда это видно? Цитата(Zliva @ Aug 23 2009, 19:35)  Вот шапка. Шапка с безобразным оверхедом. Нет никакой необходимости пихать все регистры на стек: R4-R11 и так никто не тронет.
|
|
|
|
|
Aug 23 2009, 18:23
|
Частый гость
 
Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318

|
Цитата(aaarrr @ Aug 23 2009, 19:11)  Прерывание от IRQ0 является внешним источником, поэтому обратите внимание на такие строки в хидере: Вижу в 232analyzer (утилита для работы с ком-портом), что при однократном нажатии кнопки (энкодер лежит с боку, пока не подключал), данные получаю и оны непрерывно поступают, пока кнопка нажата, а я хочу, чтобы происходило прерывание на переходе 0-1. Чем можете помочь? Неужели дребезг? Манипулою так: Прерывания от irq0 заведено на кнопку (симулирую линию энкодера А), а РА20 на кнопку B2(симулирую линию энкодера В). При однократном нажатии на B1 значение убывает, но их приходит очень много. Например, один раз нажал получил значение 9 десть раз. При удерживании В2 нажимаю на B1. Значения идут по возрастающей. Количество резолюций поставил 10 только для тестирования. В реальности энкодер имеет 1024 имп/об. Цитата А откуда это видно? Утилита 232analyzer для работы с ком-портом Цитата Шапка с безобразным оверхедом. Нет никакой необходимости пихать все регистры на стек: R4-R11 и так никто не тронет. Тогда как правильно сделать?
--------------------
If the person is successful, he is successful in any sphere.
|
|
|
|
|
Aug 23 2009, 18:46
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(Zliva @ Aug 23 2009, 22:23)  Вижу в 232analyzer (утилита для работы с ком-портом), что при однократном нажатии кнопки (энкодер лежит с боку, пока не подключал), данные получаю и оны непрерывно поступают, пока кнопка нажата, а я хочу, чтобы происходило прерывание на переходе 0-1. Чем можете помочь? Неужели дребезг? А что Вас удивляет? Вполне естественно, что кнопка имеет дребезг. Цитата(Zliva @ Aug 23 2009, 22:23)  Утилита 232analyzer для работы с ком-портом Вы не выложили ту часть кода, которая заведует отравкой данных, поэтому судить о наблюдаемой картине никто не возьмется. Цитата(Zliva @ Aug 23 2009, 22:23)  Тогда как правильно сделать? Очевидно, не сохранять лишнее. Если обработчик написан на 'C' без всяких naked, то строки: Код STMFD SP!, {R0-R12, LR} ; Save Workspace & LR to Stack ... LDMFD SP!, {R0-R12, PC}^ ; Return to program можно спокойно заменить на: Код STMFD SP!, {R0-R3, R12, LR} ; Save Workspace & LR to Stack ... LDMFD SP!, {R0-R3, R12, PC}^ ; Return to program Но делать это стоит только при ясном понимании, почему так можно. В противном случае оставьте как есть - процедура все равно рабочая.
|
|
|
|
|
Aug 23 2009, 19:41
|
Частый гость
 
Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318

|
Не могу понять, почему когда я удерживаю кнопку (как бы дребезга недолжно быть), возникает прерывание? Может здесь pAIC->AIC_SMR[AT91C_ID_IRQ0] = AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE|0 что-то не так? Даже в симуляторе та же фича. Вот весь проект (на базе Hello.Uv2)
Прикрепленные файлы
Main.rar ( 56.24 килобайт )
Кол-во скачиваний: 19
--------------------
If the person is successful, he is successful in any sphere.
|
|
|
|
|
Aug 24 2009, 08:15
|
Частый гость
 
Группа: Участник
Сообщений: 137
Регистрация: 14-11-06
Из: Луцка
Пользователь №: 22 318

|
Цитата(aaarrr @ Aug 24 2009, 09:17)  Что там не так, я уже написал выше.
Работа с прерываниями по фронту вообще требует предельной внимательности - Вы уверены, что это действительно необходимо? В принципе – да. Уверен. Вы что-то можете предложить другое?
--------------------
If the person is successful, he is successful in any sphere.
|
|
|
|
Сообщений в этой теме
Zliva ARM. Энкодеры и акселерометры Jul 29 2009, 20:01 _Pasha Я бы все-таки энкодеры обрабатывал простеньким AVR... Jul 30 2009, 08:17 Zliva Цитата(_Pasha @ Jul 30 2009, 11:17) Я бы ... Jul 30 2009, 08:44  Zliva С программированием ARM разобрался. Программируетс... Aug 15 2009, 20:01 aaarrr 1. Первые три - классы устройств USB; usbser.sys -... Aug 15 2009, 20:36 Zliva Цитата(aaarrr @ Aug 15 2009, 23:36) 3. За... Aug 15 2009, 20:47 aaarrr Если гарантия доставки обязательна, то в качестве ... Aug 15 2009, 20:52 Zliva Цитата(aaarrr @ Aug 15 2009, 23:52) Если ... Aug 15 2009, 20:57  aaarrr Цитата(Zliva @ Aug 16 2009, 00:57) А скор... Aug 15 2009, 21:01   Zliva Цитата(aaarrr @ Aug 16 2009, 00:01) Нет, ... Aug 15 2009, 21:30    aaarrr Цитата(Zliva @ Aug 16 2009, 01:30) Так ка... Aug 15 2009, 21:39     Zliva Цитата(aaarrr @ Aug 16 2009, 00:39) Остав... Aug 15 2009, 22:02         Zliva Цитата(aaarrr @ Aug 24 2009, 13:37) Для о... Aug 24 2009, 11:32          aaarrr Цитата(Zliva @ Aug 24 2009, 15:32) Если м... Aug 24 2009, 11:48           Zliva Цитата(aaarrr @ Aug 24 2009, 14:48) Что-т... Aug 24 2009, 12:09            Zliva Решил сделать просто:
Кодvoid irq0_nint (void... Aug 24 2009, 14:09             Zliva Проанализировав все выше упомянутое, склоняюсь к м... Aug 24 2009, 16:20              aaarrr Цитата(Zliva @ Aug 24 2009, 20:20) Проана... Aug 24 2009, 16:35               Zliva Цитата(aaarrr @ Aug 24 2009, 19:35) Так и... Aug 24 2009, 18:17                aaarrr Цитата(Zliva @ Aug 24 2009, 22:17) Это ме... Aug 24 2009, 19:23                 Zliva Цитата(aaarrr @ Aug 24 2009, 22:23) Это п... Aug 24 2009, 19:34                  aaarrr Цитата(Zliva @ Aug 24 2009, 23:34) Как сю... Aug 24 2009, 19:37                   Zliva Цитата(aaarrr @ Aug 24 2009, 22:37) Это ж... Aug 24 2009, 20:25 aaarrr Ну, если даже направление теряется, то это похоже ... Aug 24 2009, 12:15 Zliva Цитата(aaarrr @ Aug 24 2009, 15:15) Ну, е... Aug 24 2009, 12:30 aaarrr Получается, что Вы по заднему фронту сигнала B смо... Aug 24 2009, 12:49 Zliva Цитата(aaarrr @ Aug 24 2009, 15:49) Получ... Aug 24 2009, 12:56  aaarrr Цитата(Zliva @ Aug 24 2009, 16:56) Тыкнит... Aug 24 2009, 13:12   Zliva Цитата(aaarrr @ Aug 24 2009, 16:12) Пардо... Aug 24 2009, 13:27 aaarrr А pPIO правильно проинициализирован?
Пардон, вижу... Aug 24 2009, 13:51 aaarrr Дык __irq уберите. Aug 24 2009, 20:29 Zliva Цитата(aaarrr @ Aug 24 2009, 23:29) Дык _... Aug 24 2009, 20:35  aaarrr Цитата(Zliva @ Aug 25 2009, 00:35) Убрал.... Aug 24 2009, 20:53   Zliva Цитата(aaarrr @ Aug 24 2009, 23:53) AT91C... Aug 24 2009, 20:58    aaarrr Цитата(Zliva @ Aug 25 2009, 00:58) Все ра... Aug 24 2009, 21:13     Zliva Убрал строчку printf ("E1=%d\n",ENC... Aug 24 2009, 21:34 aaarrr Я грешным делом думал, что printf у Вас под прерыв... Aug 24 2009, 21:40 Zliva Попробовал несколько вариантов обработки сигналов ... Aug 25 2009, 19:07 aaarrr У Вас получается одинаковая обработка вне зависимо... Aug 25 2009, 19:45 Zliva Цитата(aaarrr @ Aug 25 2009, 22:45) У Вас... Aug 25 2009, 19:53  aaarrr Цитата(Zliva @ Aug 25 2009, 23:53) Тогда ... Aug 25 2009, 19:54   Zliva aaarrr СПАСИБО. ЗАРАБОТАЛО!!!
Цитата(... Aug 25 2009, 20:22    aaarrr Цитата(Zliva @ Aug 26 2009, 00:22) Не пой... Aug 25 2009, 20:32     Zliva aaarrr СПАСИБО.
Заменил volatile int ENCODER1_Pos... Aug 25 2009, 20:50      aaarrr Цитата(Zliva @ Aug 26 2009, 00:50) Давайт... Aug 25 2009, 21:07       Zliva Цитата(aaarrr @ Aug 26 2009, 00:07) Давай... Aug 26 2009, 05:52        aaarrr Цитата(Zliva @ Aug 26 2009, 09:52) Тут во... Aug 26 2009, 10:55         Zliva Цитата(aaarrr @ Aug 26 2009, 13:55) Ее да... Aug 26 2009, 12:08 @Ark ЦитатаЕе даже не обязательно вводить - можно прост... Aug 26 2009, 13:44 Zliva Спасибо за наставление. Но я как-то другого пути н... Aug 26 2009, 14:24 @Ark ЦитатаНо я как-то другого пути не вижу кроме намеч... Aug 26 2009, 15:18 Zliva Цитата(@Ark @ Aug 26 2009, 18:18) Собстве... Aug 26 2009, 15:30 @Ark Это Вам решать как делать. Советы Вы все равно не ... Aug 26 2009, 15:42 Zliva @Ark Спасибо за комментарии!
Согласен. Опыта м... Aug 26 2009, 15:58  aaarrr Цитата(Zliva @ Aug 26 2009, 19:58) Поскол... Aug 26 2009, 16:20   Zliva Цитата(aaarrr @ Aug 26 2009, 19:20) Ох. З... Aug 26 2009, 20:03    aaarrr Цитата(Zliva @ Aug 26 2009, 23:35) Понял.... Aug 26 2009, 20:07     Zliva Возникла новая проблема. С PIT вроде разобрался. Т... Aug 26 2009, 20:36      Zliva Цитата(Zliva @ Aug 26 2009, 23:36) Возник... Aug 30 2009, 14:55       Zliva Скопировал пример с ИАР и компильнул его под свою ... Aug 30 2009, 21:19        aaarrr Цитата(Zliva @ Aug 31 2009, 01:19) Скопир... Aug 30 2009, 21:46         Zliva С прерываниями разобрался. Записал инициализацию т... Aug 31 2009, 18:21          aaarrr Цитата(Zliva @ Aug 31 2009, 22:21) С прер... Aug 31 2009, 20:33           Zliva Прерывания работают. Все заделал как Вы писали.
Ве... Aug 31 2009, 20:48            aaarrr Цитата(Zliva @ Sep 1 2009, 00:48) Верно л... Aug 31 2009, 21:03             Zliva Цитата(aaarrr @ Sep 1 2009, 00:03) Нет. И... Sep 1 2009, 10:29              aaarrr Цитата(Zliva @ Sep 1 2009, 14:29) В режим... Sep 2 2009, 12:30               Zliva Цитата(aaarrr @ Sep 2 2009, 15:30) PIN0 -... Sep 2 2009, 17:41                aaarrr Цитата(Zliva @ Sep 2 2009, 21:41) Как его... Sep 2 2009, 18:23                 Zliva Цитата(aaarrr @ Sep 2 2009, 21:23) Понятн... Sep 2 2009, 19:20                  Zliva Подскажите пожалуйста (код выше). Дело в том что е... Sep 3 2009, 08:37 aaarrr Цитата(Zliva @ Sep 2 2009, 23:20) Вот так... Sep 3 2009, 10:37 Zliva Цитата(aaarrr @ Sep 3 2009, 13:37) Тут то... Sep 3 2009, 15:02  aaarrr Цитата(Zliva @ Sep 3 2009, 19:02) Как это... Sep 3 2009, 15:12   Zliva Цитата(aaarrr @ Sep 3 2009, 18:12) Смотре... Sep 3 2009, 15:51    aaarrr Цитата(Zliva @ Sep 3 2009, 19:51) Посмотр... Sep 3 2009, 16:12 Zliva Вот так инициализирую
Код#define LED1 (1... Sep 3 2009, 19:18 aaarrr Цитата(Zliva @ Sep 3 2009, 23:18) Что дел... Sep 3 2009, 19:25  Zliva Цитата(aaarrr @ Sep 3 2009, 22:25) Плюнут... Sep 3 2009, 19:33   aaarrr Цитата(Zliva @ Sep 3 2009, 23:33) Спасибо... Sep 3 2009, 19:52    Zliva Цитата(aaarrr @ Sep 3 2009, 22:52) Правил... Sep 3 2009, 20:06     aaarrr Цитата(Zliva @ Sep 4 2009, 00:06) Что вы ... Sep 3 2009, 20:13 Zliva Есть проблемка с ADXL210AQC – он не работает. На У... Sep 4 2009, 19:45 Zliva Настало время USB. Пока доставят акселерометры, не... Sep 5 2009, 22:38 head_sk Цитата(Zliva @ Sep 6 2009, 01:38) Может у... Sep 6 2009, 06:47 aaarrr Цитата(Zliva @ Sep 6 2009, 02:38) Впринци... Sep 6 2009, 10:05 head_sk Советую использовать libusb Sep 6 2009, 11:04 Zliva Вот здесь скачал реализацию CDC, в IAR-е получил б... Sep 7 2009, 19:43 aaarrr Здесь можете скачать атмеловские примеры для IAR, ... Sep 8 2009, 08:24 Zliva Может кто-то имеет нормальную, работоспособную вер... Sep 8 2009, 12:17 aaarrr Боюсь, бесплатно будут только "кучерявые... Sep 8 2009, 12:20
2 страниц
1 2 >
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|