Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 12:32:48

Т.е. вы ещё и с референсом будете спорить? Удачи!

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 13:03:22

В референсе не написано, что ваши слова нужно понимать, как истину в последней инстанции. К тому же, есть сильные подозрения, что вы в состоянии правильно прочитать референс. Не знаю, понимаете ли вы, но уровнем ваших возражений вы лишний раз подчеркиваете собственную несостоятельность в обсуждаемом вопросе. Вы видели бенчмарк, который показал, что скорость вывода через дма выше почти в три раза по сравнению с "обычными" режимами? Видели. Кроме неконкретных рассуждений ни о чем, вам оказалось нечего возразить по существу. Не нравится этот бенчмарк? Считаете его результаты неправильными? Приведите другой, доказывающий вашу правоту. Все остальные разглагольствования с отсылкой за доказательствами куда-то вдаль, суть примитивная отмазка и дешевые кривляния.

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 13:13:01

a5021 писал(а):В референсе не написано, что ваши слова нужно понимать, как истину в последней инстанции. К тому же, есть сильные подозрения, что вы в состоянии правильно прочитать референс.

Ну так и вы прочитайте хоть раз. Как вы собираетесь спорить с референсом ни разу его не читавши?
Вы видели бенчмарк, который показал, что скорость вывода через дма выше почти в три раза по сравнению с "обычными" режимами? Видели.

Не видел. И даже не смотрел. На другом пруфе всё будет по другому. И какой из них истино верный?
Приведите другой, доказывающий вашу правоту.

Я вам привёл разделы референса. Дальше чистая математика на калькуляторе или в столбик. Одолеете?

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 13:41:27

Слив засчитан.

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 14:19:20

офф:
Фраза «слив засчитан» как бы символизирует собой сливание бачка унитаза — финальное действо акта дефекации. Таким образом всё сказанное собеседником объявляется галимым высером, в чём аффтар и расписывается. Употребляется, когда у оппонента не осталось аргументов, и он пытается закончить спор фразами типа «Я не хочу больше об этом говорить» или «Давайте закончим этот бессмысленный спор».
«Слив засчитан» — коронный приём у троллей.

http://lurkmore.to/Слив
раз засчитан давайте к теме вернемся - "Em::blocks IDE (EmBitz)"
Последний раз редактировалось oleg110592 Ср дек 09, 2015 14:39:39, всего редактировалось 1 раз.

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 14:33:38

oleg110592 писал(а):http://lurkmore.to/%D0%A1%D0%BB%D0%B8%D0%B2

Ссылка не работает.
Для прояснения ситуации по 3-м страницам тут необходимы гуру-STMопользования dosikus и HHIMERA.

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 14:47:19

поправил (ссылку). :)))

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 15:13:56

Chettuser писал(а):Для прояснения ситуации по 3-м страницам тут необходимы гуру-STMопользования dosikus и HHIMERA.

Зовите. Хочу посмотреть, как им удастся одновременно ответить в пику мне и попереть против реального положения дел.

Re: Em::blocks IDE (EmBitz)

Ср дек 09, 2015 15:23:11

Они сами появятся, наверное уже в пути.

oleg110592 писал(а):поправил (ссылку). :)))

У меня этот сайт заблокирован наглухо похоже. Через хамелеон - пишет "недоступен". Жаль, неплохой стёбный ресурс был...

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 19:22:23

Chettuser писал(а):Они сами появятся, наверное уже в пути.

oleg110592 писал(а):поправил (ссылку). :)))

У меня этот сайт заблокирован наглухо похоже. Через хамелеон - пишет "недоступен". Жаль, неплохой стёбный ресурс был...


А Тором не пользуетесь? 8)

Вообще по SPI в F0 только dosikus смог ответить внятно и по теме. И теперь я точно знаю (но увы не понимаю почему), что нужно вычитывать приёмный буфер после передачи, даже если данные в нём не нужны. А товарищ а5021 только стёб разводил.

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 19:35:05

Andrew Martin писал(а):теперь я точно знаю (но увы не понимаю почему), что нужно вычитывать приёмный буфер после передачи, даже если данные в нём не нужны.

Потому что вы пользуетесь RXNE. Если им не пользуетесь и SPI только на передачу то вычитывать ничего не нужно т.к. вам тогда состояние RXNE будет пофигу. Вам нужны будут только TXE и BSY и то по необходимости.

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 19:49:18

Andrew Martin писал(а):А товарищ а5021 только стёб разводил.

Пояснить сможете?

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 20:20:22

scorpi_0n писал(а):
Andrew Martin писал(а):теперь я точно знаю (но увы не понимаю почему), что нужно вычитывать приёмный буфер после передачи, даже если данные в нём не нужны.

Потому что вы пользуетесь RXNE. Если им не пользуетесь и SPI только на передачу то вычитывать ничего не нужно т.к. вам тогда состояние RXNE будет пофигу. Вам нужны будут только TXE и BSY и то по необходимости.



Ответ неправильный :)
Поначалу так и было, никаких RXNE. И по RM так.
НО на практике всё совсем иначе, поэтому и стал вопрос укуренности периферии как её неполного соответствия RM.

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 20:22:15

a5021 писал(а):
Andrew Martin писал(а):А товарищ а5021 только стёб разводил.

Пояснить сможете?



viewtopic.php?f=59&t=67578&start=2420

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 20:23:50

Andrew Martin писал(а):НО на практике всё совсем иначе, поэтому и стал вопрос укуренности периферии как её неполного соответствия RM.

Каких несоответствий? Тут же что-то одно неправильное или RM или ваша практика.

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 20:33:52

scorpi_0n писал(а):
Andrew Martin писал(а):НО на практике всё совсем иначе, поэтому и стал вопрос укуренности периферии как её неполного соответствия RM.

Каких несоответствий? Тут же что-то одно неправильное или RM или ваша практика.


Правда в том, что методика досикуса работает, а вот это

Код:
spi_tx:   ;r0 = 8-bit input
   push   {r0-r3,lr}

   ldr      r1,[lcd_spi_cblock.spi_base]

   virtual at r1
   .spi1   SPI_TypeDef
   end virtual

   movs   r3,SPI_SR_BSY               ;ожидаем пока BSY не сбросится в 0
@@:
   ldrh     r2,[.spi1.SR]
   tst       r2,r3
   bne     @r
   
   movs   r3,SPI_SR_TXE                  ;ожидаем пока TXE не установится в 1
@@:
   ldrh     r2,[.spi1.SR]
   tst       r2,r3
   beq     @r
   
   strb   r0,byte [.spi1.DR]                ;отправляем байт

   pop   {r0-r3,pc}



не работает должным образом.

Почему?

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 20:47:50

Ой! А что это?
Ну у вас же всё наперекосяк.
Отправляем байт в DR ждём TXE=1 ждём BSY=0. Поднимаем CS если нужно. Это передача одного байта.
Отправляем байт в DR ждём TXE=1 отправляем следующий байт ждём TXE=1 отправляем следующий байт и т. д. ждём TXE=1 ждём BSY=0. Поднимаем CS если нужно. Это передача нескольких байт.
В RM же всё разрисовано. Купите логический анализатор и такие вопросы не будут возникать.

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 21:24:09

Плюю таймером по два байта сразу, даже TXE не проверяю, т.к. период у таймера больше, чем время передачи этих двух байт по SPI. Все работает, как из пушки.

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 22:03:37

Сомневаюсь. А пруф с бенчмарком будет?

Re: Em::blocks IDE (EmBitz)

Чт дек 10, 2015 22:18:52

Сомневайтесь. Сомневаться иногда полезно. Вам пруфов больше никаких не будет. Вы сами сказали, что на них даже не смотрите.
Ответить