|
|
  |
Быстодействие ATmega8515 |
|
|
|
Oct 29 2010, 10:18
|
Участник

Группа: Участник
Сообщений: 65
Регистрация: 19-01-10
Из: Ярославль
Пользователь №: 54 915

|
Подскажите пожалуйста в чем ошибка. Хотел проверить с какой максимальной скоростью ATmega8515 может переключать сигнал на ногах. Написал __C_task void main(void) {DDRA=0xff; while(1) {PORTA=0xff; PORTA =0x00; } __watchdog_reset; } На кварце 11059,2 кГц переключение идет с частотой всего 1,8 МГц, причем со скваженностью 2. Я что-то неправльно настроил или это потолок быстродействия микросхемы.
|
|
|
|
|
Oct 29 2010, 11:18
|
Участник

Группа: Участник
Сообщений: 65
Регистрация: 19-01-10
Из: Ярославль
Пользователь №: 54 915

|
Спасибо. Происхождение такого вопроса возникло из-за того что есть необходимость считывать 3 двухканальных 14-разрядных АЦП в последовательном коде с частотой не менее 200 кГц. Для этих целей решили использовать ATXmega126A1 настроенную на работу на частоте 32 МГц, но оказалось что она может вот также перебирать ногами с частотой 2,5 МГц. Причем при добавлении любой команды скорость считывания падает чрезвычайно быстро. Это тоже для этой микросхемы правильно или в этом случае мы уже мудрим?
|
|
|
|
|
Oct 30 2010, 22:59
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(vts @ Oct 29 2010, 10:18)  есть необходимость считывать 3 двухканальных 14-разрядных АЦП в последовательном коде с частотой не менее 200 кГц. Для этих целей решили использовать ATXmega126A1 настроенную на работу на частоте 32 МГц, но оказалось что она может вот также перебирать ногами с частотой 2,5 МГц. Это тоже для этой микросхемы правильно или в этом случае мы уже мудрим? Многое зависит от того, что вам на самом деле нужно, и как организовано чтение, чтобы не задохнуться от потока информации. В вашем случае скорость чтения равна 1.2 Мбит/с, ее можно довести до 85 Мбит/с или кратковременно до 250 мбит/с.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Nov 1 2010, 17:20
|
Участник

Группа: Участник
Сообщений: 65
Регистрация: 19-01-10
Из: Ярославль
Пользователь №: 54 915

|
Цитата(=GM= @ Oct 31 2010, 01:59)  Многое зависит от того, что вам на самом деле нужно, и как организовано чтение, чтобы не задохнуться от потока информации. В вашем случае скорость чтения равна 1.2 Мбит/с, ее можно довести до 85 Мбит/с или кратковременно до 250 мбит/с. Можно привести какие-нибудь рекомендации по организации и настройке микропроцессора и периферии, лучше с примером кода, для достижения таких скоростей. Заранее благодарен.
Сообщение отредактировал vts - Nov 1 2010, 17:22
|
|
|
|
|
Nov 1 2010, 22:41
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Какое пошутил? Вы думаете мне легко копытом по клаве стучать :-)?
Ну, шутки в сторону, предположим, все 6 каналов подключены к порту d. Прочитать за раз один бит всех 6 каналов (максимум 8) можно с помощью примитивной программы
in tmp,pind st z+,tmp in tmp,pind st z+,tmp in tmp,pind st z+,tmp ... и т.д.
На выборку битов от 6(8) каналов потребуется 3 такта. Итого, 8*(32 МГц/3) = 85.3 Мбит/с максимум. Похоже делается и 250Мбит/с, программа ещё примитивнее. Это вам, lmx2315, задачка на факультатив :-). Если не сможете решить, я покажу.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Nov 1 2010, 23:06
|

Профессионал
    
Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339

|
Цитата(=GM= @ Nov 2 2010, 01:41)  Какое пошутил? Вы думаете мне легко копытом по клаве стучать :-)?
Ну, шутки в сторону, предположим, все 6 каналов подключены к порту d. Прочитать за раз один бит всех 6 каналов (максимум 8) можно с помощью примитивной программы
in tmp,portd st z+,tmp in tmp,portd st z+,tmp in tmp,portd st z+,tmp ... и т.д.
На выборку битов от 6(8) каналов потребуется 3 такта. Итого, 8*(32 МГц/3) = 85.3 Мбит/с максимум. Похоже делается и 250Мбит/с, программа ещё примитивнее. Это вам, lmx2315, задачка на факультатив :-). Если не сможете, я покажу. Только я бы все таки PIND читал
--------------------
Закон Мерфи:
Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|