ccTalk

ccTalk

ccTalk(예고된 see-see-talk)는 화폐 거래 및 판매 시점 산업 전반에 걸쳐 광범위하게 사용되는 직렬 프로토콜이다.교통, 발권, 공중전화, 놀이 기계, 소매 현금 관리 등 다양한 자동 결제 장비에서 발견되는 동전 및 지폐의 통화 감지기와 같은 주변기기는 ccTalk를 사용하여 호스트 컨트롤러와 대화한다.

ccTalk 프로토콜은 직렬 코인 수용기가 있는 모든 AWP 기계에 사용하기 위해 BTA가 지정한 2개의 프로토콜 중 하나이다. (다른 하나는 Mars Electronics International에서 개발한 Host Intelligent Interface 프로토콜이다.)[1]: 20

이 프로토콜은 주로 앤드류 윌리엄 바슨 엔지니어가 영국 북서부맨체스터 외곽에 있는 코인 콘트롤스(Hence Coin-Controls-talk, 후에 Money Controls, 2010년부터)라는 회사에서 개발되었다.그 의정서의 첫 공개는 1996년이었다.[2]

ccTalk 프로토콜은 공개 표준이다.[1]: 13

프로토콜은 RS232와 유사한 방식으로 문자 프레임의 비동기 전송을 사용한다.가장 큰 차이점은 별도의 송신·수신 회선이 아닌 반이중 통신에 단일 양방향 통신 데이터 회선을 사용한다는 점이다.TTL 전압에서 작동하며 '멀티 드롭(multi-drop)' 즉, 주변기기는 공통버스에 연결될 수 있고 장치 주소로 논리적으로 분리된다.ccTalk 버스의 각 주변장치에는 고유한 주소가 있어야 한다.

원래의 프로토콜은 9600보드에 표준화된 후속 릴리즈와 함께 4800보트에서 작동했다.ccTalk가 USB를 통해 최소 1Mbit/s의 전송 속도로 실행될 수 있도록 하기 위해 많은 제조업체에서 저비용 브리지 칩을 사용할 수 있다.

ccTalk 프로토콜 스택은 512바이트ROM을 가진 작은 마이크로칩 마이크로컨트롤러에서 강력한 ARM7 32비트 프로세서에 이르기까지 다양한 장치에 구현되어 왔다.[1]: 12–13

이 프로토콜은 펌웨어의 플래시 업그레이드, 데이터의 안전한 전송, 상세한 진단 정보 등 전자 장치에 대한 모든 표준 작동을 지원한다.

ccTalk의 장점은 저비용 UART 기술, 이해하기 쉬운 패킷 구조, 쉽게 확장 가능한 명령 인터페이스 및 라이센스 요구사항이 없다는 것이다.후자는 오픈소스 소프트웨어와 유사한 혼잡하고 경쟁이 치열한 분야에서 이 프로토콜을 상당히 인기가 있다.

2010년에는 특정 명령에 DES 암호화를 추가해 버스의 공격에 대한 복원력을 높일 수 있도록 했다.[2]각각의 주변장치에는 고유의 DES 키가 있다.[3][4]

ccTalk 메시지 패킷 예제

TX 데이터 = 2 0 1 245 8

  • 2 = 대상 주소
  • 0 = 0 데이터 바이트
  • 1 = 소스 주소
  • 245 = 명령 헤더 '장비 카테고리 ID 요청'
  • 8 = 체크섬(2 + 0 + 1 + 245 + 8 = 256 = 0 mod 256 )

주소 1(호스트 )에서 주변 주소 2로 전달하여 그것이 무엇인지 알아보는 메시지 입니다.

RX 데이터 = 1 13 2 0 67 111 105 110 32 65 99 101 112 111 114 22

  • 1 = 대상 주소
  • 13 = 13 데이터 바이트
  • 2 = 소스 주소
  • 0 = 응답 헤더
  • 67……114 = '코인 인수자'의 ASCII
  • 22 = 체크섬(모든 패킷 바이트의 합은 0 )

어드레스 2에서 어드레스 1로 되돌아온 회신은 그것을 동전 인수자로 식별한다.

세부 사항

ccTalk 프로토콜은 바이트 지향 프로토콜이다.위에서 십진수 숫자로 나타낸 메시지의 바이트 시리즈는 8-N-1로 전송된다.

많은 장치에는 총 4개의 와이어에 걸쳐 전원(일반적으로 +12V 또는 +24V)과 ccTalk 데이터를 모두 전달하는 단일 전기 커넥터가 있다.

비용을 줄이기 위해, 단거리 상호접속 거리의 경우 CPI는 불균형 다중 드롭 오픈 수집기 인터페이스를 통해 ccTalk 데이터를 전송할 것을 권장한다. 즉, 송신 및 수신 메시지는 모두 오픈 수집기 NPN 트랜지스터를 통해 구동되는 TTL 레벨의 동일한 양방향 직렬 DATA 라인에서 발생한다.호스트의 풀업 저항기가 DATA 라인을 +5V로 당기므로 논리 1(및 유휴)은 명목상 +5V이고, 논리 0(및 시작 비트)은 명목상 0V이다.[1]: 15, 17 장거리의 경우 CPI는 명목상 +5V와 0V의 균형 잡힌 다중 드롭 RS-485 드라이버 인터페이스를 통해 ccTalk 데이터를 전송할 것을 권장한다.[1]: 17

보안 주변기기에는 처음 두 바이트인 목적지 주소 바이트와 데이터 길이 바이트를 제외한 메시지의 모든 바이트가 암호화되어 동일한 버스에서 표준 및 보안 주변기기들을 혼합할 수 있어야 한다.[1]: 26

메시지 패킷의 총 길이는 최소 5바이트(데이터 길이 바이트 0)에서 260바이트(데이터 길이 바이트 255)까지 다양하다.전송 시간이 길어지려면 일련의 메시지 패킷이 필요하다.[1]: 28

코인 및 노트 이름 지정

ccTalk 규격 내에서 수년에 걸쳐 다수의 관련 표준이 등장했다.예를 들어, 영원히 변하는 세계의 동전과 지폐를 식별하기 위한 전세계적인 태그가 있다.

ccTalk에서 동전은 <2자 국가 코드><3자 값><1자 발행 코드> 형식의 6자 식별자를 가지고 있다.

국가 코드는 ISO 3166을 준수한다.발행 코드는 발행일이 다르거나 동전의 특별한 민트 변형에 할당된다.

예)

  • US025A 미국 25c
  • GB010B 영국 10p
  • EU200A 유로 2유로

은행권은 동일한 패턴을 따르지만 4자가 값에 할당되며 보통 x100과 국가와의 연관 스케일링 팩터가 있다.

예)

  • US0001A 미국 $1
  • GB0020A 영국 파운드 20파운드
  • EU0005A 유로 5유로

참조

  1. ^ a b c d e f g "ccTalk 시리얼 통신 프로토콜: 일반 사양" 웨이백 머신에 보관된 2017-10-16.이슈 4.7
  2. ^ a b "머니 컨트롤"
  3. ^ ""DES Encryption for Coin Acceptors and Bill Validators"". Archived from the original on 2017-08-08. Retrieved 2017-08-08.
  4. ^ ""DES Encryption for Hoppers"". Archived from the original on 2017-07-21. Retrieved 2017-08-08.

외부 링크