Программирование PIC16F84

Do you have a question? Post it now! No Registration Necessary

Threaded View
Я так понимаю, что при включении питания выводы RB6 (Clock) и RB7 (Data)
должны быть притянуты к нулю, вывод MCLR - к +12в. Счётчик адреса в МК стоит
на отметке 0x0000. Далее начинаю тактирование по RB6 с длиной фронта
импульса, равно не менее 100нс (т.е. частота ограничена лишь минимальным
значением, я правильно понимаю ?). Одновременно по RB7 начинаю выводить
информацию, меняя уровень на данном выводе только при низком уровне на RB6.
После отсылки 6 байт команды загрузки информации (000010), жду не менее
1мкс, и начинаю принимать 16 бит данных от МК. Далее удерживаю вывод RB6 в
низком уровне не менее 1 мкс, и после этого сразу же начинаю отсылать новую
команду на чтение данных (000100) по тому же адресу. Если данные верны, даю
команду на инкрементирование адреса и начинаю всё по новой.

Нап., если мне нужно записать в память программ по адресу
0x02 число 0x36, то после включения питания даю команду
000110, держу 1 мкс вывод RB6 в нуле, далее ещё 1 раз шлю ту же команду
(чтобы в счётчике адреса оказалось число 0x02), далее даю команду 000010,жду
1мкс, далее шлю биты 00110110,жду 1мкс,читаю 16 бит, и, если данные верны,
инкрементирую адрес и повторяю всё сначала.

Если хочу писать в память данных, то повторяю вышеприведдённую процедуру, за
исключением того, что непрерывно шлю команду инкрементирования в начале
общения до получения нужного мне адреса.

Где в вышеизложенном ошибка ?
Я правильно понял, что если посылаю команду чтения/записи, а за ней следуют
данные (всегда 16 бит), то затем сразу же можно сдать следующую команду ?
Счётчик адреса автоматически обнуляется при достижении числа 0x2000 ?
По какому адресу расположен байт конфигурации ?



Re: Программирование PIC16F84
/re, Vadim.

16 августа 2003 21:11, Vadim Tzirulnicov писал All:

----skip----

 VT> Где в вышеизложенном ошибка ?
 VT> Я правильно понял, что если посылаю команду чтения/записи, а за ней
 VT> следуют
 VT> данные (всегда 16 бит), то затем сразу же можно сдать следующую команду ?
 VT> Счётчик адреса автоматически обнуляется при достижении числа 0x2000 ?
 VT> По какому адресу расположен байт конфигурации ?

    у pic16CXX и pic17f87XX по адресу 2007h (из программы не доступен), можно
предположить что у сабжа там же 8)


ps биты конфигурации или слово конфигурации, в любом случае HЕ байт 8) насчет
слова конфигурации тоже не совсем понятно, ведь битов 13-цать, так что тут и не
байт и не слово 8)



Site Timeline