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

 
 
6 страниц V  « < 3 4 5 6 >  
Reply to this topicStart new topic
> at91, помогите разобраться
defunct
сообщение Aug 18 2008, 22:50
Сообщение #61


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(aaarrr @ Aug 19 2008, 01:40) *
А это, интересно, чьи:
Цитата
Можно ничего не читая про DMA правильно с ним работать!

Фраза, выдранная из контекста меняет смысл полностью. Я не давал рекомендаций забивать на документацию нигде. В оригинале было:
Цитата
Там алгоритм загрузки указателей DMA. Можно ничего не читая про DMA правильно с ним работать! В этом и прелесть.

Упор был на то, что достаточно сложный модуль можно использовать без елозиния по ДШ часами.

Цитата
Google по этой строчке находит at91sam7x256.h. Неужели в одну секунду lib_ и .h сделали?

Я так понимаю это дата всего пакета.
//* File Name : lib_AT91SAM7X256.h
//* Object : AT91SAM7X256 inlined functions
//* Generated : AT91 SW Application Group 09/12/2005 (15:39:14)
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 18 2008, 22:52
Сообщение #62


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(defunct @ Aug 19 2008, 00:40) *
Как так?

Тфу, что-то у меня ночью в голове перемешалось и заклинило - "многозадачность" по ночам сбоит sad.gif


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 18 2008, 23:01
Сообщение #63


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(zltigo @ Aug 19 2008, 01:52) *
Тфу, что-то у меня ночью в голове перемешалось и заклинило - "многозадачность" по ночам сбоит sad.gif

Бывает beer.gif
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Aug 18 2008, 23:03
Сообщение #64


Гуру
******

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



Цитата(defunct @ Aug 19 2008, 02:50) *
Фраза выдранная из контекста менят смысл полностью. Я не давал рекомендаций забивать на документацию нигде. В оригинале было:
Цитата

Там алгоритм загрузки указателей DMA. Можно ничего не читая про DMA правильно с ним работать! В этом и прелесть.

Контекст здесь только уточняет, что можно пользоваться алгоритмом не читая документацию. Смысл не меняется.

Цитата(defunct @ Aug 19 2008, 02:50) *
Упор был на то, что достаточно сложный модуль можно использовать без елозиния по ДШ часами.

PDC сам по себе простой, как грабли - полное описание занимает 2 страницы.

Цитата(defunct @ Aug 19 2008, 02:50) *
Я так понимаю это дата всего пакета.

ОК. И что, в ней нет функции AT91F_PITInit?

У меня:
Код
//* File Name           : lib_AT91SAM7X256.h
//* Object              : AT91SAM7X256 inlined functions
//* Generated           : AT91 SW Application Group  08/18/2006 (15:29:55)
...
//* CVS Reference       : /lib_pitc_6079A.h/1.2/Thu Nov  4 14:01:11 2004//
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 18 2008, 23:19
Сообщение #65


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(aaarrr @ Aug 19 2008, 02:03) *
ОК. И что, в ней нет функции AT91F_PITInit?

нет sad.gif

Цитата
Контекст здесь только уточняет, что можно пользоваться алгоритмом не читая документацию. Смысл не меняется.

Да, алгоритмом пользоваться можно. Смысл меняется кардинально. Документация создается для описания устройства и алгоритмов работы с ним, а в ReceiveFrame мы имеем описание алгоритма 10-ю строчками. Чем в таком случае lib_ не удовлетворяет понятию документация?

Цитата
PDC сам по себе простой, как грабли - полное описание занимает 2 страницы.

Простой, но тем не менее многие делают типичную ошибку - загружают только 1 указатель.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 18 2008, 23:24
Сообщение #66


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(defunct @ Aug 19 2008, 01:01) *
Бывает beer.gif

Кстати, совершенно нагляднейший пример сбоя в мозгах при натыкании на непривычный синтаксис абсолютно чуждый (мне по крайней мере smile.gif ) 'p' увидел и "все" sad.gif....


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Aug 18 2008, 23:32
Сообщение #67


Гуру
******

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



Цитата(defunct @ Aug 19 2008, 03:19) *
нет sad.gif

Странно, в более ранней есть.
Код
//* Generated           : AT91 SW Application Group  05/20/2005 (16:22:29)


Цитата(defunct @ Aug 19 2008, 03:19) *
Да, алгоритмом пользоваться можно. Смысл меняется кардинально. Документация создается для описания устройства и алгоритмов работы с ним, а в ReceiveFrame мы имеем описание алгоритма 10-ю строчками. Чем в таком случае lib_ не удовлетворяет понятию документация?

В ReceiveFrame мы не имеем никакого описания, даже brief скопипасчен и не исправлен:
Код
//*----------------------------------------------------------------------------
//* \fn    AT91F_PDC_ReceiveFrame
//* \brief Close PDC: disable TX and RX reset transfer descriptors
//*----------------------------------------------------------------------------


Цитата(defunct @ Aug 19 2008, 03:19) *
Простой, но тем не менее многие делаю типичную ошибку - загружают только 1 указатель.

Это не ошибка. Если я, например, хочу передать 1 пакет через UART, то второй указатель мне и не нужен.

А в блаженные времена AT91M40800 второго и не было.
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 18 2008, 23:57
Сообщение #68


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(aaarrr @ Aug 19 2008, 02:32) *
Странно, в более ранней есть.
//* Generated : AT91 SW Application Group 05/20/2005 (16:22:29)

Перепроверю завтра.

Цитата
В ReceiveFrame мы не имеем никакого описания, даже brief скопипасчен и не исправлен:
Там самодокументируемый код описание прямо в нем (см. имена функций и переменных):
Код
    if (AT91F_PDC_IsRxEmpty(pPDC)) {
        //* Buffer and next buffer can be initialized
        AT91F_PDC_SetRx(pPDC, pBuffer, szBuffer);
        AT91F_PDC_SetNextRx(pPDC, pNextBuffer, szNextBuffer);
        return 2;
    }
    else if (AT91F_PDC_IsNextRxEmpty(pPDC)) {
        //* Only one buffer can be initialized
        AT91F_PDC_SetNextRx(pPDC, pBuffer, szBuffer);
        return 1;
    }
    else {
        //* All buffer are in use...
        return 0;
    }

Цитата
Это не ошибка. Если я, например, хочу передать 1 пакет через UART, то второй указатель мне и не нужен.

А в блаженные времена AT91M40800 второго и не было.
Дык, мы ж о ReceiveFrame говорим smile.gif Приход данных от нас не зависит.
Времена поменялись, народ забывает использовать NextBuf даже при непрерывном чтении.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Aug 19 2008, 00:09
Сообщение #69


Гуру
******

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



Цитата(defunct @ Aug 19 2008, 03:57) *
Там самодокументируемый код описание прямо в нем (см. имена функций и переменных):

Да ради Бога, но представления о механизме работы двойной буферизации он все равно не дает.

Цитата(defunct @ Aug 19 2008, 03:57) *
Дык, мы ж о ReceiveFrame говорим smile.gif

Хорошо, хочу принять данные из SPI. Так устроит? smile.gif
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 19 2008, 00:17
Сообщение #70


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(aaarrr @ Aug 19 2008, 03:09) *
но представления о механизме работы двойной буферизации он все равно не дает.
Надо чтобы кто-то третий взглянул, желательно перед и после прочтения ДШ. А то у нас с Вами субъективные взгляды.

Цитата
Хорошо, хочу принять данные из SPI. Так устроит? smile.gif
Ок, это исключение wink.gif
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Aug 19 2008, 05:52
Сообщение #71


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Я бы несколько по-другому поставил вопрос. Полезно ли embedded разработчику наличие lib_xxx или вы считаете, чтобы лучше ее и не было? Пожалуй, все таки полезно.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Aug 19 2008, 06:15
Сообщение #72


Гуру
******

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



Тем, кто имеет слабость лениться думать самостоятельно, наличие этой библиотеки может навредить. А для остальных использование lib_ просто лишено смысла по причине примитивности функций и простоты периферии SAM'ов.

Как разработчик я бы предпочел иметь от Atmel'а пустую errat'у, а не сомнительного качества библиотеку.
Go to the top of the page
 
+Quote Post
SergeiCh
сообщение Aug 19 2008, 06:40
Сообщение #73


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

Группа: Участник
Сообщений: 99
Регистрация: 22-03-07
Из: Novosibirsk
Пользователь №: 26 415



Цитата(sergeeff @ Aug 19 2008, 12:52) *
Полезно ли embedded разработчику наличие lib_xxx или вы считаете, чтобы лучше ее и не было?

Сами Atmel'цы от нее, похоже, отказались. В последних AT91 Software Package и at91xxx_getting_started нет lib_xxx, но есть at91lib, на которую от наших Гуру, насколько можно представить, будет/есть не меньше нареканий smile.gif А что поделаешь?! Индийским студентам тоже надо кушать smile.gif
Go to the top of the page
 
+Quote Post
asket
сообщение Aug 19 2008, 07:53
Сообщение #74


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

Группа: Участник
Сообщений: 91
Регистрация: 24-08-06
Из: Москва
Пользователь №: 19 809



Работаю в Crossworks, хотелось бы поработать с lib_1t91sam7xxx.h, но при объявлении сия заголовочного файла в нескольких исходниках на си компилер ругается, ссылаясь на Multiple definition of, как этим бороться? Пробывал объявить extern, та же фигня..( Заранее благодарен!
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Aug 19 2008, 08:36
Сообщение #75


Гуру
******

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



Цитата(asket @ Aug 19 2008, 11:53) *
Работаю в Crossworks, хотелось бы поработать с lib_1t91sam7xxx.h

И работали бы спокойно дальше.

Мне интересно, что для Вас изменится с использованием этой "библиотеки"? Какие плюсы Вы видите?

Цитата(asket @ Aug 19 2008, 11:53) *
при объявлении сия заголовочного файла в нескольких исходниках на си компилер ругается, ссылаясь на Multiple definition of, как этим бороться? Пробывал объявить extern, та же фигня..( Заранее благодарен!

Хидер защищен, проблем с multiple definition быть не должно. Куда Вы пытались прикрутить extern???
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 21:33
Рейтинг@Mail.ru


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