Перейти к содержанию
    

программирование МК

Здравствуйте я уже создавал тут тему и приходится к ней вернуться)))...

с БитБэнгом вышло) но хотелось бы лучшего)... скорость не та...

нуно согласовать AD7731 и FT245RL при помощи мк... я пытаюсь научиться писать на Си в CodeVisionAVR )))... и постараюсь задавать вопросы по мере их поступления... вопросы будут крайне тупые наверняка, так что заранее извиняюсь и благодарю всех пытающихся помочь)))

FT245RL с мк... например чтение - я опрашиваю ногу мк куда подключен RXF (готовность ФТ к чтению) там появился 0, в ответ мк выдает на RD 0 (т.е. начало передачи)... и передаем из мк инфу по D0...D7 ...

в документации к ФТ указаны задержки которые должны быть между этими событиями...

так вот первый вопрос как сформировать эти задержки, просто они в [нс] а я нашел команду задержки только для [мкс] (delay_ms())... и правильно ли это вообще может нужно организовывать задержку по другому?...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

так вот первый вопрос как сформировать эти задержки, просто они в [нс] а я нашел команду задержки только для [мкс] (delay_ms())... и правильно ли это вообще может нужно организовывать задержку по другому?...

Например вставить в программу ассемблерный код вида:

...

nop ; пропуск одного такта.

nop

nop

...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

delay_ms() - это задержка в миллисекундах,

а в микросекундах - это delay_us().

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ой сорри не ту написал))) но вопрос не меняется как в наносекундах то задать??? только с помощью ассемблеровской вставки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Понял глупость своего вопроса))) мне это даже не нужно)

теперь два вопроса мучают...

1) как задать в CodeVisionAVR (в Визарде как я понимаю) что бы тактовый сигнал как бы по умолчанию выводился на какие-то контакты...

2) как грамотно записать и выдать информацию в буфер... мне не оч понятно т.к. записывать в память я должен в последовательном виде а выдавать в параллельном...

заранее спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что бы много не мучаться, подключайте АЦП к МК посредством SPI (на стр. 37 описания АЦП есть пример). Тогда сразу отпадет большинство проблем. А именно: генерироваться такты и сдвигаться байт данных будет программно; прием, соответственно, тоже аппаратный.

А FT245 подключаете к любому порту МК.

Так что Вам останется только опрашивать с необходимой частотой АЦП и по прерыванию выдавать данные в FT245.

Изменено пользователем DiMomite

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...