Модераторы: PILOT, ManiaK, Mazzi
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Intel 8051] Помогите с решением задачи 
:(
    Опции темы
rytikov
Дата 2.12.2010, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 2.12.2010

Репутация: нет
Всего: нет



Помогите, пожалуйста, с задачей:
Принять данные из 8-разрядного АЦП. Запуск АЦП выполняется положительным импульсом 5 мкс.
Данные считываются по срезу сигнала готовности 10 мкс. Количество данных l(7:0).
Обработке подлежат данные, находящиеся в диапазоне Nдоп1<=Ni<=Nдоп2.
Подсчитать количество данных этого диапазона. Исходный массив сохранить во внешнем ОЗУ данных.
Полученные значения преобразовать с помощью таблицы, хранящейся в ПЗУ команд и сформировать 
новый массив. Размер таблицы 256*8. Этот прием используется, когда необходимо выполнить сложные 
функциональные преобразования (тригонометрические, экспоненциальные функции и т.д.).
Сформированный таким образом массив передать через последовательный порт, работающий в режиме 1
на скорости 9600 бит/с, если пришел внешний запрос на прерывание.

Решить необходимо на ассемблере.
PM MAIL   Вверх
Mazzi
Дата 2.12.2010, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 9
Всего: 21



А что именно у вас не получается?


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
rytikov
Дата 3.12.2010, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 2.12.2010

Репутация: нет
Всего: нет



Не понимаю, как сделать это: Обработке подлежат данные, находящиеся в диапазоне Nдоп1<=Ni<=Nдоп2.
Подсчитать количество данных этого диапазона. Исходный массив сохранить во внешнем ОЗУ данных.
Полученные значения преобразовать с помощью таблицы, хранящейся в ПЗУ команд и сформировать 
новый массив. Размер таблицы 256*8.
PM MAIL   Вверх
Mazzi
Дата 3.12.2010, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 9
Всего: 21



Выложите свой исходник.


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
rytikov
Дата 3.12.2010, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 2.12.2010

Репутация: нет
Всего: нет



Начал с этого, а дальше не знаю
n EQU 8;
k EQU 10;
ORG 10h; 
     mov R2, #n;
     mov R3, #k
     mov R6, #3
     clr A
     mov R4, A
     mov R5, A
     mov P2, #0ffh;
     mov P1, #1bh
     setb P1.1
 wait1:  jnb  P1.0, wait1;      
          mov A, P2;
 cjne  A, #10,M1;
 M2: clr C;  
     add A, R4; 
     

M1: jnc wait1;
     sjmp M2;

PM MAIL   Вверх
Mazzi
Дата 3.12.2010, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 9
Всего: 21



Цитата

Обработке подлежат данные, находящиеся в диапазоне Nдоп1<=Ni<=Nдоп2.
Подсчитать количество данных этого диапазона.

Это значит, что полученное значение обрабатывается только тогда, когда оно больше или равно Nдоп1 и меньше или равно Nдоп2.


Цитата

Подсчитать количество данных этого диапазона.

То есть, если полученные данные соответствуют вышеуказанному условию, то нужно увеличить переменную-счётчик на 1.


Цитата

Исходный массив сохранить во внешнем ОЗУ данных.

Для работы с внешней и внутренней памятью используются разные ассемблерные команды.

Цитата

Полученные значения преобразовать с помощью таблицы, хранящейся в ПЗУ команд и сформировать 
новый массив. Размер таблицы 256*8.

Табличное преобразование. 
Поищите книжку "Проектирование цифровых устройств на однокристальных микроконтроллерах", авторы Урусов и Сташин. Там всё это есть.

Если дела совсем плохи, то можно перенести тему в раздел "Работа". 


Это сообщение отредактировал(а) Mazzi - 3.12.2010, 17:27


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.1338 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.