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

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> uart+dma
Огурцов
сообщение Feb 10 2016, 12:55
Сообщение #31


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



погонял idle - ерунда, работает не так, как мне надо, кроме того нельзя просто постоять покурить
lin не работает на 9 бит
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 10 2016, 13:24
Сообщение #32


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(evgen2 @ Feb 8 2016, 15:53) *
Нашел.
Всё дело в волшебных пузырьках битиках. 1 << 11
Это transfer type. Если 0 - то memory to memory, если 1 - memory to peripheral. Если поставить 0, то всё работает до размера 16 байт (или, возможно, длины FIFO?, FIFO у меня 16 байт)

1 - как я понимаю говорит DMA-контроллеру обращать внимание на сигнал UART.THRE от UART. Это директива - использовать флов-контроль от периферии.
Если стоит 0 - DMA-контроллер не обращая внимания на UART.THRE, зафигачивает весь пакет в FIFO. Так как для mem->mem флов-контроль не нужен. Естественно в этом случае всё после 16-го байта теряется.
Читать юзермануал надо внимательнее.
Go to the top of the page
 
+Quote Post
scifi
сообщение Feb 10 2016, 15:30
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Огурцов @ Feb 10 2016, 15:55) *
погонял idle - ерунда, работает не так, как мне надо, кроме того нельзя просто постоять покурить
lin не работает на 9 бит

Вместо Idle можно использовать Break.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Feb 10 2016, 15:55
Сообщение #34


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



break работает только с lin
или не только ?
Go to the top of the page
 
+Quote Post
scifi
сообщение Feb 10 2016, 19:58
Сообщение #35


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Огурцов @ Feb 10 2016, 18:55) *
break работает только с lin
или не только ?

Мануал говорит, что не только.
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Feb 10 2016, 21:17
Сообщение #36


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



а не получилось
вероятно, остановлюсь на любимом frame error, ибо работает так как надо и реакция и так и так одинаковая - проверить поступивший пакет, перазапустить приём
только размер пакета в начало придется таки добавлять - пока происходит прерывание, дма ещё накидывает в буфер неопределённое количество мусора/данных, так что границу нужно знать заранее
хотя да, это происходит только при работе с пк, трафик с мк идёт чистый


Сообщение отредактировал Огурцов - Feb 10 2016, 21:21
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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