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

 
 
> Расчёт скорости GPIO, какова максимальна скорость дрогонья и чтения?
bullit
сообщение Dec 22 2008, 11:23
Сообщение #1


пуля
****

Группа: Свой
Сообщений: 674
Регистрация: 10-05-06
Из: Уфа
Пользователь №: 16 959



День добрый всем!

Прошу помочь с расчётом.
Есть мк LPC2194. Необходимо проделать следующее
1) считать значение порта Р0 с 0 по 7 (8 линий)
2) с "0" на "1" переключить одну ногу(не из тех 8 линий)
3) снова считать значение (1)
4) значения по байтно записывать в память оперативную
Условия:
- и на всё это отводится не более 900 нс.
- цикл (1-4) повторяется раз в 2 мкс
- VPBDIV = 0 , т.е. деления частоты для переферии нет = частоте тактирования проца. (хотя не уверен)
- Кварц 10МГц, с ФАПЧ 60 МГц.

Можно ли успеть?
Думаю асм вставку придётся делать... + код в оперативу кидать...

К сожелению генератора под рукой нет... чтоб проверить.

А смысл в следующем: у ацп есть функция смена местами на выводах старшую и младшую байт, тем самым используя 8 линий сосчитать 16 бит. Для этого нужно "менять" уровень на определённой ноге.

Уж не знаю с какой скорость читать будет... но обычный "дрогатель":
Код
IO0SET = 0x40000000;
IO0CLR = 0x40000000;
Дал мне максимум 2,5 МГц при расположение кода в оперативе... Это максимум? (правда сейчас стоит проц 2294 и кварц 14,7456 МГц и ФАПЧ до 56 МГц должно разгонять)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bullit
сообщение Dec 23 2008, 09:46
Сообщение #2


пуля
****

Группа: Свой
Сообщений: 674
Регистрация: 10-05-06
Из: Уфа
Пользователь №: 16 959



У меня обе АЦПшки висят на одном порту. АЦП имеет 3 состояние, управляемое CS и RD.
Заводить бизи с двух АЦП на одну ногу - значит не иметь информации с какого именно АЦП пришло. Использовать отдельные порты МК для каждого АЦП и накладно (трудно развести плату), да и портов нет. Потому как возможно часть свободных портов может уйти на другие нужды.

Наверое рисунок схемы будет Вам полезен. А то всплывают каждый раз новые подробности... файл бмп в архиве (с 2 Мб до 57 кб smile.gif ).


Цитата
Оба варианта медленные. Лучше так: считали 2 бита, если оба равны нулю, то начинаем считывать АЦП. Считываем всегда в одном порядке. Иначе потеряете вагон времени.
Получается что ждём пока оба не закончут конвертирование. В принципе вариант хорош тем, что шумы при работе МК не пройдут на другой АЦП, который в это время будет опрашиваться... А так только по одной линии - что в принципе снизит уровень "помех наводок". НО тогда надо иметь хороший запас во времени.

И еще хотел сросить про организацию сохранения результатов в памяти. Можно ли силами си/си++ организовать массив или что-то подобное.
И еще: как вы можите видеть: старший бит АЦП на "месте" младшего бита мк. Как можно "перевернуть" данные? Хотя это можно сделать и позднее на ПК. Сделано так с точки зрения разводки платы, нет перекрёсных цепей.
Прикрепленные файлы
Прикрепленный файл  ADC_and_uC.rar ( 57.75 килобайт ) Кол-во скачиваний: 24
 
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Dec 23 2008, 09:56
Сообщение #3


Гуру
******

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



Цитата(bullit @ Dec 23 2008, 12:46) *
НО тогда надо иметь хороший запас во времени.

Вы же их запускаете одновременно, какой запас по времени? За время между сбросами BUSY разных АЦП Вы ровным счетом ничего не успеете сделать.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- bullit   Расчёт скорости GPIO   Dec 22 2008, 11:23
- - GetSmart   Для IOPIN, IOSET, IOCLR запись в порт 7 тактов, чт...   Dec 22 2008, 12:03
- - bullit   МК именно 01. (только сейчас на олимексовской плат...   Dec 22 2008, 12:40
- - GetSmart   Цитата(bullit @ Dec 22 2008, 17:23) ... У...   Dec 22 2008, 15:58
- - bullit   ЦитатаКроме того, неясно, кроме чтения/записи в по...   Dec 22 2008, 18:05
|- - aaarrr   Цитата(bullit @ Dec 22 2008, 21:05) Как л...   Dec 22 2008, 19:00
|- - GetSmart   Цитата(bullit @ Dec 23 2008, 00:05) Да бу...   Dec 23 2008, 04:46
- - bullit   ЦитатаА эти две миллисекунды нельзя полностью ...   Dec 23 2008, 04:59
|- - GetSmart   Цитата(bullit @ Dec 23 2008, 10:59) А вот...   Dec 23 2008, 05:14
|- - aaarrr   Цитата(bullit @ Dec 23 2008, 07:59) Т.к. ...   Dec 23 2008, 06:50
- - bullit   Чесно говоря не понял что Вы предлогаете. Я считыв...   Dec 23 2008, 07:30
|- - GetSmart   Цитата(bullit @ Dec 23 2008, 13:30) ... Н...   Dec 23 2008, 07:49
|- - aaarrr   Цитата(bullit @ Dec 23 2008, 10:30) Ну вр...   Dec 23 2008, 08:23
|- - GetSmart   Цитата(bullit @ Dec 23 2008, 15:46) Завод...   Dec 23 2008, 10:43
- - bullit   Я подумал на один пин Думаю поступлю именно как В...   Dec 23 2008, 11:05
|- - GetSmart   Цитата(bullit @ Dec 23 2008, 17:05) Даже ...   Dec 23 2008, 11:33
- - bullit   Хотел бы поднять тему, с целью получения совета, н...   Feb 3 2009, 15:56
|- - aaarrr   Цитата(bullit @ Feb 3 2009, 18:56) Вот ка...   Feb 3 2009, 16:48
- - bullit   1000 прощений!!! не 2 бита, а 2 байта...   Feb 3 2009, 18:15
|- - aaarrr   Цитата(bullit @ Feb 3 2009, 21:15) не 2 б...   Feb 3 2009, 18:25
- - bullit   К сожелению я с С/С++ пока на Вы. В дельфях еще бо...   Feb 3 2009, 18:35
|- - aaarrr   Цитата(bullit @ Feb 3 2009, 21:35) Типа d...   Feb 3 2009, 18:43
- - koyodza   Вставлю свои 5 копеек: я так понял, что эти два АЦ...   Feb 3 2009, 20:44
- - bullit   Цитатая так понял, что эти два АЦП 8-разрядные? Не...   Feb 4 2009, 04:32
- - bullit   Делал тут я испытания... и вот что у меня получило...   Feb 20 2009, 09:07
|- - GetSmart   Цитата(bullit @ Feb 20 2009, 15:07) Как м...   Feb 20 2009, 21:54
- - bullit   Спасибо большое! Не думал что так много ошибок...   Feb 21 2009, 04:39
- - GetSmart   Цитата(bullit @ Feb 21 2009, 10:39) А где...   Feb 21 2009, 07:42


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

 


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


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