48437 (Прошивка чипа картриджа Samsung SCX-4200), страница 5
Описание файла
Документ из архива "Прошивка чипа картриджа Samsung SCX-4200", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "48437"
Текст 5 страницы из документа "48437"
– заполнение массива строкой данных;
поиск и замена строки данных;
– инвертирование данных;
– копирование массива данных как внутри одного буфера, так и между разными буферами;
– подсчет контрольной суммы;
– конвертирование шин адреса и данных.
Еще одна особенность программного обеспечения программаторов, на которой стоит остановиться отдельно, – это пакетный режим работы. Очень в немногих программаторах такой режим реализован. А преимущество такого режима просто очевидно – это автоматизация работы. Использую пакетный режим работы, можно создавать сценарии работы с программатором, автоматизируя всю рутинную работу. Наиболее интересны устройства, где пакетный режим работы практически не имеет ограничений, в нем доступны все ресурсы программатора. В пакетном режиме можно загружать файлы, запускать программирование, манипулировать параметрами программирования, окнами на экране, выводить графические данные и т. д. В качестве иллюстрации использования пакетного режима работы программатора можно привести задачу программирования партии микросхем, в каждой из которых должен быть запрограммирован серийный номер. На специальном языке создается сценарий работы программатора, который заключается в следующем: оператор указывает начальное значение серийного номера партии микросхем и запускает процедуру программирования, программатор программирует микросхему с текущим серийным номером и вычисляет серийный номер следующей микросхемы, помещая его в соответствующий раздел памяти, далее процедура циклически повторяется. В приведенном примере пакетный режим работы значительно облегчает работу оператора и исключает свойственные оператору ошибки.
2.5 Связь программатора между компьютером и чипом через интерфейс RS232
Последовательный интерфейс RS232, разработанный более 25 лет назад для компьютеров (в основном для их связи с модемами до сих пор не утратил своего коммуникационного назначения. Даже сейчас, в связи с появлением множества других последовательных интерфейсов, обладающих несомненными преимуществами перед этим интерфейсом (например, интерфейсов USB, RS485, RS422, применяемых в компьютерах, и PC, CAN, SPI, применяемых в микроконтроллерах), интерфейс RS232, похоже, не скоро уйдет в разряд «отставников». Такое положение, на первый взгляд, может показаться странным, особенно из-за недостатков RS232, «глюков» и т.п. Однако следует учесть, что это едва ли не единственное средство связи между компьютером и микроконтроллером, аппаратно присутствующее и в первом и во втором. Во всяком случае, косвенным подтверждением исключительности интерфейса RS232 может служить тот факт, что в современных персональных компьютерах RS232 интегрирован в материнскую плату. Что касается микроконтроллеров, то сейчас трудно найти такой микроконтроллер, в котором бы аппаратно не присутствовал хотя бы один интерфейс RS232 (иногда их бывает и два).
Интерфейс RS232 является последовательным. Это означает, что данные (информация) передаются последовательно, бит за битом по одному проводу (в отличие от параллельного интерфейса, в котором, например, каждый бит байта передается по отдельному проводу, т.е. байт передается по восьми проводам). Формат посылки – 1 байт данных и несколько управляющих бит, некоторые из которых могут отсутствовать.
Обмен информацией между компьютером и периферийным устройством по интерфейсу RS232 двусторонний, т.е. данные могут передаваться компьютером в периферийное устройство и приниматься компьютером от периферийного устройства.
В компьютере предусмотрен специальный разъем, называемый коммуникационным (СОМ); иногда их бывает два (СОМ1 и COM2) или более. К разъему подключается кабель, соединяющий компьютер с периферийным устройством. В кабеле находятся несколько проводов, которые называют линиями интерфейса. Термин «линия» достаточно условен, так как английское слово line, которому он соответствует, имеет более широкое значение.
На практике чаще всего используются три скорости обмена: 9600, 115200 и (реже) 57600 бод.
Контакты разъемов интерфейса RS232 в компьютере.
В компьютере могут присутствовать как 25-штырьковый (DB25), так и 9-штырьковый (DB9) разъемы RS232. Ниже приведены названия сигналов и соответствующие им номера контактов обоих типов разъемов. Как видно из таблицы 1, разъем содержит контакты как входных линий, так и выходных.
Таблица 1 – Названия и функциональные назначения выводов порта RS232
Номер контакта | Название сигнала | Расшифровка | Тип линий | |||
DB25 | DB9 | |||||
2 | 3 | TxD | Transmitter Data – передатчик данных | Выходная | ||
3 | 2 | RxD | Receiver Data – приемник данных | Входная | ||
4 | 7 | RTS | Request To Send – запрос передачи | Выходная | ||
5 | 8 | CTS | Clear To Send – сброс передачи | Входная | ||
6 | 6 | DSR | Data Set Ready – готовность данных | Входная | ||
7 | 5 | SG | Signal Ground – сигнальная земля | - | ||
8 | 1 | DCD | Data Carrier Detect – обнаружение несущей | Входная | ||
20 | 4 | DTR | Data Terminal Ready – готовность терминала | Выходная | ||
22 | 9 | RI | Ring Indicator – индикатор звонка | Входная |
Основными линиями, по которым осуществляется обмен данными, являются две: TxD – линия, по которой из компьютера передаются данные во внешнее устройство, и RxD – линия, по которой компьютером принимаются данные из внешнего устройства.
Линии DTR и RTS являются выходными. Это означает, что уровнями сигналов на этих линиях можно управлять, устанавливая биты соответствующих регистров в нуль или единицу программным способом. Линии CTS, DSR, DCD и RI являются входными. Это
означает, что состояния этих линий можно проверять (т.е. выяснять, в каком состоянии – нулевом или единичном они находятся), читая соответствующие регистры состояний и выделяя соответствующие биты.
Необходимо отметить следующие свойства линий TxD и RxD.
Линия TxD является выходной. Помимо того, что по ней передаются данные, в отсутствие передачи состоянием этой линии можно также управлять программно, т.е. устанавливать в единичное или нулевое состояние. Линия RxD является входной. Однако прочитать состояние этой линии (как линий CTS, DSR, DCD и RI) при отсутствии передачи нельзя.
Кроме того, заметим, что линии DTR, RTS, CTS, DSR, DCD и RI называют еще линиями квитирования (иногда модемными, так как они используются в модемах). Существует как множество алгоритмов обмена по RS232, в которых эти линии (или некоторые из них) используются, так и множество алгоритмов обмена, в которых эти линии не используются вообще (задействованы только линии RxD и TxD).
В микроконтроллере обмен по интерфейсу RS232 осуществляется по линиям TxD (передатчик) и RxD (приемник). Уровни напряжения на этих линиях соответствуют стандартным (цифровым) уровням напряжения микроконтроллера. Это означает, что уровень напряжения логической единицы соответствует напряжению питания микроконтроллера C или 5 В), уровень напряжения логического нуля – нулевому напряжению (или «земле»). Обычно уровни напряжений питания и земли называют TTL-уровнями, хотя в настоящее время это понятие значительно видоизменилось (с электрической точки зрения), а аббревиатура TTL транзисторная логика) давно утратила свой первоначальный смысл. Отметим, что для сопряжения со стандартными уровнями напряжения сигналов на линиях интерфейса RS232 (приблизительно равными ±10 В, как было указано ранее) необходимо использовать преобразователи уровней RS232.
В микроконтроллере, так же, как и в компьютере, есть возможность программно устанавливать скорость обмена, формат данных и некоторые другие характеристики интерфейса RS232. Однако эти характеристики напрямую зависят от частоты используемого кварцевого резонатора, от таймера (а их в микроконтроллере может быть несколько), от еще некоторых устройств микроконтроллера, а также от самого микроконтроллера. Кроме того, микроконтроллер может содержать два интерфейса RS232.
3. Программное обеспечение для работы с программатором
3.1 Программа PonyProg
Программа PonyProg – это открытый проект. Для распространения этой программы и еще нескольких проектов в интернете создан специальный сайт http://www.lancos.com. Программа также распространяется с открытой лицензией (GNU), то есть вместе с текстом программы, который разрешается изменять по своему усмотрению. Однако в пакет программы входит специальная библиотека, которая содержит текст всех основных функций, обеспечивающих процесс программирования микросхем.
На библиотеку не распространяется открытая лицензия. Ее разрешается использовать, но не разрешается изменять входящие в нее процедуры. Изменения допускаются лишь в интерфейсе программы. Такое решение делает программу более надежной в работе.
На сайте можно загрузить не только инсталляционный пакет самой программы, но также исполняемый файл русифицированного или украинофицированного вариантов программы. Кроме этого, там еще имеется целый набор вариантов, поддерживающий множество других языков. После инсталляции программы вы просто меняете исполняемый файл в директории программы на новый, и программа полностью русифицируется. Однако стоит учесть, что русифицированная версия программы – это устаревшая версия. Она может не поддерживать ряд микроконтроллеров. Поэтому, если вы не нашли в списке микросхем ту, что вам необходима, проинсталлируйте программу PonyProg заново и работайте с английской версией.
При запуске программы PonyProg открывается окно заставки и раздается фирменный звук – лошадиное ржание. Если вы не желаете слушать его каждый раз при запуске, поставьте галочку в поле «Disable Sound» (выключить звук). Нажмите «Ok». Рекламная заставка закроется, и откроется основная панель программы (см. рис. 2.9).
Главная панель содержит всего одно основное окно, где в свою очередь могут быть открыты одно или несколько окон с разными вариантами прошивок. В верхней части главной панели традиционно располагается меню и две панели инструментов, как показано на рисунке 5.
Рисунок 5 – Основная панель программы PonyProg
Первое, что нужно сделать сразу после включения программы, – выбрать тип микросхемы, которую вы собираетесь программировать. Для этого в верхней панели инструментов имеются два выпадающих меню. Одно называется «Выбор семейства микросхем» (Select device family), а второе – «Выбор типа микросхем» (Select device type). Поля не подписаны. Названия появляются в виде всплывающей подсказки при наведении курсора мыши на соответствующее поле.
В поле выбора семейства выберите «I2C Bus 8bit eeprom», а в поле выбора типа – требуемый тип микросхемы. Для всех наших примеров это будет 2404. Второй способ, при помощи которого также можно выбрать семейство и тип микросхемы, – воспользоваться меню «Устройство», как показано на рисунке 6. Выбранный тип микросхемы автоматически сохраняется, и при повторном запуске программы вызывается снова.
Рисунок 6 – Выбор типа микросхемы