CcTalk - CcTalk
Эта статья включает Список ссылок, связанное чтение или внешняя ссылка, но его источники остаются неясными, потому что в нем отсутствует встроенные цитаты.Сентябрь 2014 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
ccTalk (произносится как "видеть-видеть-говорить") серийный протокол, широко используемый во всех денежных транзакциях и торговая точка промышленность. Периферийные устройства такой как детекторы валют для монет и банкнот, используемых в разнообразном автоматическом платежном оборудовании, таком как транспорт, билеты, таксофоны, игровые автоматы и управление наличностью в розничной торговле, используйте ccTalk для связи с главным контроллером.
Протокол ccTalk - один из 2 протоколов, указанных BACTA для использования во всех автоматах AWP с серийными монетоприемниками. (Другой - протокол Host Intelligent Interface, разработанный Mars Electronics International ).[1]:20
Протокол был разработан в компании под названием Coin Controls (отсюда и название coin-control-talk, позже названное Money Controls и с 2010 года Crane Payment Solutions) на окраине Манчестер на северо-западе Англия в основном инженером Эндрю Уильямом Барсоном. Первый выпуск протокола был в 1996 году.[2]
Протокол ccTalk - это открытый стандарт.[1]:13
Протокол использует асинхронную передачу символьных кадров аналогично RS232. Основное отличие состоит в том, что он использует один двусторонняя связь линия передачи данных для полудуплексной связи, а не отдельные линии передачи и приема. Он работает в Напряжения TTL и является «многоточечным», т.е. периферийные устройства могут быть подключены к общей шине и логически разделены адресом устройства. Каждое периферийное устройство на шине ccTalk должно иметь уникальный адрес.
Исходный протокол работал на 4800 бод с последующими выпусками, стандартизованными на 9600 бод. Недорогие мостовые микросхемы теперь доступны от ряда производителей, что позволяет ccTalk работать через USB со скоростью не менее 1 Мбит / с.
Стеки протоколов ccTalk были реализованы на ряде устройств от крошечных Микрочип микроконтроллеры с 512 байты из ПЗУ к мощному ARM7 32-битные процессоры.[1]:12–13
Протокол поддерживает все стандартные операции для электронных устройств, таких как вспышка обновление прошивки, безопасная передача данных и подробная диагностическая информация.
К преимуществам ccTalk относится низкая стоимость UART технология, простая для понимания структура пакетов, легко расширяемый командный интерфейс и отсутствие требований к лицензированию. Последнее обеспечивает протоколу большую популярность в многолюдной и высококонкурентной сфере, подобной программному обеспечению с открытым исходным кодом.
В 2010, DES К некоторым командам было добавлено шифрование, чтобы сделать его более устойчивым к атакам на шину.[2]Каждое периферийное устройство имеет свой уникальный ключ DES.[3][4]
Пример пакета сообщения ccTalk
Данные TX = 2 0 1 245 8
- 2 = адрес назначения
- 0 = нулевые байты данных
- 1 = адрес источника
- 245 = заголовок команды «Запросить идентификатор категории оборудования»
- 8 = контрольная сумма (2 + 0 + 1 + 245 + 8 = 256 = 0 по модулю 256)
Это сообщение от адреса 1 (хоста) к периферийному адресу 2, чтобы узнать, что это такое.
Данные RX = 1 13 2 0 67 111 105 110 32 65 99 99 101 112 116 111 114 22
- 1 = адрес назначения
- 13 = 13 байтов данных
- 2 = адрес источника
- 0 = заголовок ответа
- 67… 114 = ASCII для «монетоприемника»
- 22 = контрольная сумма (сумма всех байтов пакета равна нулю)
Ответ с адреса 2 на адрес 1 идентифицирует его как монетоприемника.
Подробности
Протокол ccTalk - это байтовый протокол. Последовательность байтов в сообщении, представленная выше как последовательность десятичных чисел, передается как 8-Н-1.
Многие устройства имеют один электрический разъем, который передает питание (обычно +12 В или +24 В) и данные ccTalk по 4 проводам.
Для снижения затрат на короткие расстояния между подключениями CPI рекомендует отправлять данные ccTalk по несбалансированной многоточечный интерфейс с открытым коллектором: как передача, так и получение сообщений происходят по одной двунаправленной последовательной линии ДАННЫХ на Уровень TTL, управляемый через NPN-транзистор с открытым коллектором. Подтягивающий резистор на хосте подтягивает линию DATA к +5 В, поэтому логическая 1 (и холостой ход) номинально составляет +5 В, а логический 0 (и стартовый бит) номинально 0 В.[1]:15,17Для больших расстояний CPI рекомендует отправлять данные ccTalk через сбалансированный многоточечный RS-485 интерфейс драйвера, тоже номинально +5 В и 0 В.[1]:17
Безопасные периферийные устройства требуют, чтобы все байты сообщения были зашифрованы, за исключением первых двух байтов - байт адреса назначения и байт длины данных никогда не шифруются, что позволяет смешивать стандартные и безопасные периферийные устройства на одной шине.[1]:26
Общая длина пакета сообщения может варьироваться от минимум 5 байтов (байт длины данных равен 0) до 260 байтов (байт длины данных равен 255). Для более длительных передач требуется серия пакетов сообщений.[1]:28
Именование монет и банкнот
За прошедшие годы в рамках спецификации ccTalk появился ряд связанных стандартов. Например, глобальные теги для обозначения постоянно меняющихся в мире монет и банкнот.
В ccTalk монета имеет 6-значный идентификатор формата <2-буквенный код страны> <3-значное значение> <1-буквенный код выпуска>
Код страны соответствует ISO 3166. Код выпуска присваивается разным датам выпуска или особым вариациям монетного двора одной и той же монеты.
например
- US025A США 25c
- GB010B Великобритания 10p
- EU200A евро 2 евро
Банкноты следуют тому же шаблону, но значению присвоено 4 символа, и существует связанный коэффициент масштабирования, обычно x100, со страной.
например
- US0001A США $ 1
- GB0020A Великобритания 20 фунтов стерлингов
- EU0005A 5 евро
Рекомендации
- ^ а б c d е ж грамм «Протокол последовательной связи ccTalk: общие спецификации» В архиве 2017-10-16 в Wayback Machine.Выпуск 4.7
- ^ а б «Контроль денег»
- ^ ""Шифрование DES для монетоприемников и валидаторов купюр"". Архивировано из оригинал на 2017-08-08. Получено 2017-08-08.
- ^ ""Шифрование DES для хопперов"". Архивировано из оригинал на 2017-07-21. Получено 2017-08-08.