[마이크로프로세서응용실험] (예비) 실험 08: 직렬통신
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[마이크로프로세서응용실험] (예비) 실험 08: 직렬통신에 대한 보고서 자료입니다.

목차

문제 1. 프로그램 각 줄에 주석을 다시오.

문제 2. ASCII 코드가 무엇인지 설명하고, 또한 실험 프로그램에서 어떻게 이용되고 있는지 설명하시오.

문제 3. Main 프로그램의 while loop 내 프로그램의 동작에 관해 설명하시오.

문제 4. 아래 실험에 사용하는 프로그램에서 baud rate를 계산하시오. [bps]

문제 5. PC 하이퍼터미널에서 소문자 a, b, c 를 입력하여 8051로 송신하면, 8051에서는 대문자 A, B, C 로 바꾸어 송신하도록 프로그램을 수정해보시오.

본문내용

10비트 프레임 비동기식 통신모드로
start bit + 8 bit 데이터 + stop bit으로 구성되며 가변 보드레이트로 위에서 말한것처럼 타이머1에 의해진다. 아래 표는 각 모드에 대한 설명이다
보드레이트를 구하는 식은 아래와 같다.
오실레이터 주파수(11.0592MHz)를 12분주한 것이 타이머클럭 주파수고 TH1의 초기설정 값(0xFD, 11111101, 253)에 의해 오버플로우 주기를 정하고 비동기식전용클럭은 타이머 클럭이 16번 들어와야 한번 넘어가므로 16이 나누어 지고 SMOD=0에 의해 2를 또 나눈다.
따라서 이 프로그램의 보드레이트는 이다.
아래의 그림을 통해 보드레이트가 어떻게 전해지는지 볼 수 있다
문제 5. PC 하이퍼터미널에서 소문자 a, b, c 를 입력하여 8051로 송신하면, 8051에서는 대문자 A, B, C 로 바꾸어 송신하도록 프로그램을 수정해보시오.
- 우선 키보드로 ‘a’, ‘b’, ‘c’를 입력하면 아스키코드에 의해 97, 98, 99가 2진수로 바뀌어서 컴퓨터가 인식한 후 이 값을 8051로 전달한다. 직렬 통신에 의해 수신된 값을 다시 하이퍼터미널로 송신한다.
만약 수신된 값을 송신하기 전에 변화시키면 소문자를 대문자로 바꿀 수 있을 것이다
소문자 a, b, c는 아스키코드로 97, 98, 99 이고 대문자 A, B, C는 아스키코드로 65, 66, 67 이어서 소문자와 대문자 사이에 32만큼 차이가 있음을 알 수 있다.
따라서 프로그램에서 새로운 변수 unsigned char ch_1을 받아서 ch_1에 ch에서 32를 뺀 값을 넣어준다면 소문자를 대문자로 바꿀 수 있을 것이다.
void main(void)
{
unsigned char ch;
unsigned char ch_1;// 새로운 변수를 선언한다
Lcd_Clr();
Put_String(\"Serial Port PGM \");
Line2();
Put_String(\"Press any KeyBD \");
Line3();
Put_String(\"Received Data: \");
Serial_Init();
while(1){
ch=RxData();
Line4();
Put_String(\" \");
Cput(ch);
ch_1 = ch - 32; // ch(소문자)에서 32를 뺀 값을 새 변수에 저장한다
TxData(ch_1);// 새 변수를 송신하고 이 송신된 값이 하이퍼터미널에서
대문자로 나타날 것이다
}
}
  • 가격2,800
  • 페이지수6페이지
  • 등록일2014.03.16
  • 저작시기2014.1
  • 파일형식한글(hwp)
  • 자료번호#908210
본 자료는 최근 2주간 다운받은 회원이 없습니다.
다운로드 장바구니