Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Программатор SEEPROM для серии 93Сxx [D7]


Страницы:   1 2

Proger121 ©   (2005-08-21 16:17:00) 

Всем привет.
Ктонибудь сталкивался с программированием этих микросхем через лпт?
Может компонент есть какой или ктото уже чтонибудь в этом плане делал?
Подскажите плз..


Proger121   (2005-08-22 22:26:00) [21]

fPortD/fConverter можно ссылочку на эту обертку ?
я пока пользуюсь LPTIO
Читать буду 11 пином LPT. вроде так.
А  на счет разная шина - это распиновка имеется ввиду?
И адреса данных имеется ввиду размер? как например 93C46 и 93C56


Defunct   (2005-08-22 20:07:00) [22]

> Proger121

ты ж тока учитывай, что у разных 93C разная ширина адреса и данных.


Defunct   (2005-08-22 19:59:00) [23]

> а fLPT и fPortD это от куда берется?

а fLPT это обёртка LPT порта, в инете таких пруд пруди.
fPortD/fConverter - обёрта для работы с битами.


> Получилось записать в память то что хотел по заданному адресу.

поздравляю!
считай уже все готово ;>

читать практически точно также.


Proger121   (2005-08-22 19:26:00) [24]

Разобрался что к чему.
Получилось записать в память то что хотел по заданному адресу.
Буду дальше разбираться :)

Спасибо всем кто ответил.


Proger121   (2005-08-22 18:10:00) [25]

Еще есть вопрос такой.
В доках на память вот что написано
Write mode:

DI  1  0  1  A5 A4 A3 A2 A1 A0 D15 D14 D13 D12 D11 ... D2 D1 D0
DO                                                            BSY RDY
Значит по DI на каждый такт посылаем 1, 0, 1, а вот A5, A4, A3 и тд.. это сами данные или что?


Proger121   (2005-08-22 17:38:00) [26]

Defunct © Спаибо.
Вобщем без таймера делается, через Sleep.
а fLPT и fPortD это от куда берется?
Если не сложно напиши мне плз... на мыло.
Я уже пЫва заготовил :)


Defunct   (2005-08-22 17:01:00) [27]

Proger121   (22.08.05 15:19) [4]

> Сlk задовать таймером и с каким интервалом?

(нижеприведенная процедура шьет в т.ч. 93Cxx):

procedure TDuplexDataChannel.WriteByte;
var
  i : integer;
begin
  CS.Acquire;
  try
     fConverter.WHex( B );
     for i := 7 downto 0 do
     begin
        fPortD.WBit( sSCLK, 0 );
        fPortD.WBit( sMOSI, fConverter.RBit( i ));
        fLPT.WritePort( LPT2, 0, fPortD.RHex );
        sleep( 0 );
        fPortD.WBit( sSCLK, 1);
        fLPT.WritePort( LPT2, 0, fPortD.RHex );  // Запись строба
 //       sleep( 0 );
       if fFastMode then
          Sleep(0)
       else
          Sleep(1)
       end;
     fPortD.WBit( sSCLK, 0 );
     fLPT.WritePort( LPT2, 0, fPortD.RHex );
     if fFastMode then
        Sleep(0)
     else
        Sleep(1)
  finally
     CS.Release
  end
end;


Proger121   (2005-08-22 15:19:00) [28]

Куда что подключать я разобрался.
Прока не понятно
Сlk задовать таймером и с каким интервалом?
В доках на память период измеряеся в нс а в таймере минимальное значение 1 = 1мсек. (Вроде так)

Может кто алгоритм подскажет пошаговый допустим на запись?

Другие програматоры это все понятно, у самого несколько.
Хочется чтение мелкосхем и их запись организовать в своей программе.
Если кто может помочь я отблагадарю - шабашка одним словом.
пишите на мыло seller@japan.com
Буду рад любой помощи.


ssk   (2005-08-22 08:56:00) [29]

поищи программатор Ponyprog


Defunct   (2005-08-21 19:36:00) [30]

схему включения можешь сделать по аналогии
http://www.ic-prog.com/funcard.jpg

вместо Reset - CS
вместо SCK - SK
вместо MISO - DI
вместо MOSI - DO


Defunct   (2005-08-21 19:25:00) [31]

Сталкивался. Ничего сложного там нет.

> Может компонент есть какой или ктото уже чтонибудь в этом плане делал?

компонента такого нет, т.к. нет стандартой схемы включения 93Cxx через LPT порт. Обвязка же для работы с LPT в Delphi под все ОС, в инете есть. Дальше просто работаешь с 93Cxx сигналами на основе datasheet'а. (стробируешь по STOBE, читаешь по ACK, данные выдаешь по SELECT. Питание 93Cxx можно организовать по INIT.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо