동기식 전송
UBBR 은 보레이트 값을 받는 곳이다
XCK 클럭 발생기이며
TXd 보내는 것을 이믜한다 핀컨트롤러를 통해 오류를 검출한 후에 비트 하나씩 하니씩 들어 간다. 11100 11000 이 하나씩 들어가는데 여기서 간격이 보 이다.
RXd 받는 것을 의미한다. 데이터를 받으면 클락을 표준화시켜 데이터를 저장한후 오류를 검출한 후 하나하나씩 데이터를 빌어서 UDR레지스터로 보내는 역활을 한다.
main.h 에 값을 지정해 주는 곳은 데이터 버스가 지나 가는 곳이므로
UBBR UDR UDR USCRA USCRB USCRC를 설정해 줄 수 있다. 주소를 설정 메인파일에
UBBR을 보값을 설정한다 보는 로우일때 하이일 때로 나눌 수 있다. 1^^^^^(보) 0^^^^^^(보) 하이일때는 0000 0000 앞쪽 부분이 니블이므로 앞에 글자를 뛰우려면 >>8 비트 밀어야 된다
CPU의
보값은 USART.h에 설정해 준다 설정된 보값에 보레이터 발생기에 들어간다.
UBRR0L = ((OSC/(16*BAUD)) -1)
UBRR0H = ((OSC/(16*BAUD)) -1)>>8;
USCRA 값을 설정한다. 레지스터 해당 비트에 값을 선택한다
Rxc Txc UDRe FE DOR UPEn U2x MPCM USCRA 데이터에 각각 번호를 디파인 해준후에
각 자리에 의미하는 것에다가 비트를 넣어 준다
bit 7 자동으로 넣어지는 값이다 bit 자동 big 5 새로운 데이터가 들어갈 수 있는 공간
bit 4Fram erro이고
bit 3 데이타 오버런이다 데이터가 가득 차면 반응한다
bit 2 패리티검출코드이고
bit 1은 더블 전송방식을 할 것인가이고
bit 0은 멀리 프로세서 커뮤니케이션을 할 것인가 하는 것이다.
USART 방식은 RS 232라는 전압의 차이를 바꿔 주는 역할을 한다. ex) 5볼트 12볼트 전압차이를 바꿔주는 역활을 한다. USART는 동기 방식과 비동기 방식을 합친 방식이다.
USART
Synchronous : 동기식 전송
동기식 전송은 한 문자 단위가 아니라 미리 정해진 수 만큼의 문자열을 한 묶음으로 만들어서 일시에 전송하는 방법이다. 이 방법에서는 데이터와는 별도로 송신측과 수신측이 하나의 기준 클록으로 동기신호를 맞추어 동작한다. 수신측에서는 클록에 의해 비트를 구별하게 되므로, 동기식 전송을 위해서는 데이터와 클록을 위한 2회선이 필요하다. 송신측에서 2진 데이터들을 정상적인 속도로 내 보내면, 수신측에서는 클록의 한 사이클 간격으로 데이터를 인식하는 것이다.
현재 동기 전송방식을 사용
Asynchronous : 비동기식 전송
데이터 통신에서 정보의 송신 및 수신을 위해 사용되는 클록이 상대국과 독립적으로 운용되면서 송신될 정보가 있을 때마다 정보의 시작/정지(start-stop)를 수신 측에 알려 주는 정보 전송 형태. 이 방식은 다양한 정보 속도를 사용할 수는 있으나 전송 성능이 나쁘고 전송 대역이 커지는 단점이 있다.
'코스웨어 > 16년 스마트컨트롤러' 카테고리의 다른 글
20160322_장진웅_업무일지_펌웨어 실습(입력값 LCD에 출력) (0) | 2016.03.22 |
---|---|
2016_03_22_노태경_업무일지_ (0) | 2016.03.22 |
2016_03_21_업무일지_노태경 (0) | 2016.03.22 |
USART1 Rx Tx 완료 (0) | 2016.03.22 |
16.03.21 조승현 업무일지 시리얼페러럴/max3232/전송방식/dataoverrun/디파인거는법/sf&hw개념 (2) | 2016.03.22 |
20160318_업무일지_정우민_펌웨어(시계2) (0) | 2016.03.22 |
후니의 네트워크 이야기 258~314 (0) | 2016.03.22 |
후니의 네트워크 이야기 2~257 (0) | 2016.03.22 |