Да я первый раз о нем слышу...
Вид для печати
Еще советую разные USB-клавиатуры погонять, там очень много сюрпризов бывает. Некоторые, если у них нет нажатых клавиш чтобы отдать пакет на опрос Interrupt EP, могут STALL прислать. Некоторые присылают 8 байт и все, некоторые присылают 8 байт и ZLP. В-общем, кладут на стандарт разнообразно, причем такое встречалось и на нонаме и на брендовых клавиатурах.
Ассортимент у меня невелик, к сожалению :(
Про разную работу клавиатур народ упоминал, на том же изиэлектрониксе.
Софт здесь
http://support.saleae.com/hc/en-us/articles/201589175
Но надо твое железо посмотреть, ибо там требуется доработка . Но не сложная.
Пин Wakeup отсоединить от GND и подтянуть к VDD через резистор ~2К .
Прошить еепром соответствующей прошивкой и залочить запись - пин WP посадить на GND.
http://s020.radikal.ru/i718/1503/9f/0277eb3e5960.jpg
http://s017.radikal.ru/i442/1503/7b/4c602bddcf80.jpg
http://s018.radikal.ru/i517/1503/f9/4bafe9314902.jpg
Код::020000040000FA
:10000000C025098138000000FFFFFFFFFFFFFFFF51
:10001000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0
:10005000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:00000001FF
---------- Post added at 15:30 ---------- Previous post was at 14:27 ----------
http://s020.radikal.ru/i723/1503/03/549e8c8d9eee.jpg
http://s48.radikal.ru/i119/1503/1f/0917a1d880d1.jpg
http://s52.radikal.ru/i138/1503/6a/afbde178efa9.jpg
http://s017.radikal.ru/i415/1503/e8/240d51dd4fe3.jpg
http://i072.radikal.ru/1503/a8/dd4f4341657a.jpg
dosikus, у тебя есть живой проект на Кейле для образца понимания с FATFS через SPI на стм32ф1хх?
Третий день кувыркаюсь...
Что-то Кейл никак не может WORD и DWORD арифметику толком считать.
В отладчике шагаю по коду, и какая-то хрень вылезает...
Пробовал варианты, которые не требуют процессов дёрганья каждые 10 миллисекунд, не нравится мне это. В частности, привинчивал VINX_FS и сильно кастрированный, но легкий вариант от HiSER. Но везде, где идет арифметика между разными типами данных, улетаем в космос. На AVR оба варианта пашут без нареканий.
Неожиданные и непонятные грабли с STM32F103RBT6 + Keil 5.0
Многие начинают с подобного камня, а я вот иду своей дорогой, только сейчас добрался до 103-серии, после успешного юзания 105-ой и 407-ой.
В общем, проект в кейле компилируется как положено.
Камень в опциях выбран, хтал установлен, выбран файл stm32f10x_md.s в стартапе, в закладке программирования выбраны соответствующие алгоритмы под камушек.
Но - при прошивании сначала вываливается окно "internal error", после него - "target dll has ben canceled". И всё... С другими сериями камней такого небыло. Что это может быть? Сигналы SWDIO и SWCLK подключены правильно, на вкладке программатора при переключении JTAG/SW камень видится.
Можно я попробую сформулировать чайниковский вопрос по производительности STM32F4discovery?
Есть задача - сэмплить входной сигнал, что-то типа
for (i=0;i<1000;i++) buf[i]=GPIOx->IDR;
Какова достижимая производительность по количеству сэмплов?
Вот что я пробовал. На один из пинов входного порта подал 10Mhz с кварцевого генератора. Тестовая задача - "прожует" ли STM32F407 (168Mhz) такой сигнал:
while(1)
{ if ((GPIOE->IDR & 0x0100)) GPIOC->ODR |= GPIO_Pin_4;
else GPIOC->ODR =0;
}
То есть я просто по состоянию входного сигнала выставляю выходной pin. При достаточной производительности ожидаю что частота выходного сигнала будет равна частоте входного (меряю частотомером).
И тут сюрприз: при входном 10Mhz выходной сигнал всего 4 :-(
Меняю код:
if ((GPIOE->IDR & 0x0100)) GPIOC->ODR = 0xffff;
else GPIOC->ODR =0;
Частота уже 7.
---
А я то хотел сигнал сэмплить, да еще и по внешнему стробу....
Это я хочу чего-то космического или я что-то делаю не так?
А тактовая точно 168МГц? или по умолчанию, какие-нибудь 8МГц встроенного RC-генератора?
---------- Post added at 23:32 ---------- Previous post was at 23:28 ----------
Вообще же смотри в сторону DMA. Например, вот:
https://my.st.com/public/STe2ecommun...rentviews=4311
и два: http://roboforum.ru/forum2/topic13542.html
>А тактовая точно 168МГц?
Да, 8 генератор через PLM (типа 8 кварца/8*336/2)
> какие-нибудь 8МГц встроенного RC-генератора?
У этой RC на 16, но это не важно.
Про DMA можно попробовать, но сначала бы совет знатоков:
по внешнему стробу 10 MHz DMA сумеет GPIO->mem
Или хотя бы по 5 MHz ?
Насколько помню, выходные пины конфигурируются на разную скорость. На высоких скоростях фронты покруче, но и помех побольше. Может просто уровень не набегает.
А так было бы интересно сосчитать просто количество входных фронтов в 32-битном регистре за секунду. Должно быть 10 млн штук.