1 / 18

제 6 장

제 6 장. 82C55 의 응용동작 ( 전광판 순차 점등 회로 ). 6.1 DATA BASE 의 활용 (DB) (1). 마이컴 동작 원리. 6.1 DATA BASE 의 활용 (DB) (2). 기본적으로는 프로그램을 하면“ ROM” 이라는 곳에 구워서 ( 프로그램을 기록 ) 사용한다 . 새로운 프로그램을 할 때마다 매번 굽는 번거로움을 해소하기 위해 MC-E01MM 보드는 RAM 에 프로그램을 다운받아 ( 기록하여 ) ROM 처럼 사용한다. 6.1 DATA BASE 의 활용 (DB) (3).

starr
Download Presentation

제 6 장

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 제 6 장 82C55 의 응용동작 (전광판 순차 점등 회로)

  2. 6.1 DATA BASE 의 활용(DB) (1) • 마이컴 동작 원리 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  3. 6.1 DATA BASE 의 활용(DB) (2) • 기본적으로는 프로그램을 하면“ROM”이라는 곳에 구워서(프로그램을 기록) 사용한다. • 새로운 프로그램을 할 때마다 매번 굽는 번거로움을 해소하기 위해 MC-E01MM 보드는 RAM에 프로그램을 다운받아(기록하여) ROM처럼 사용한다. 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  4. 6.1 DATA BASE 의 활용(DB) (3) 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  5. 6.1 DATA BASE 의 활용(DB) (4) • 마이컴을 제어하는 명령어들 이외에 디스플레이 값이나, 특정 데이터를 소스에 추가해서 사용할 수 있다. • 이러한 값들은 그 값(HEX 값) 그대로 ROM에 구워진다. • 사용자는 원하는 데이터 값을 DB로 만들어 그 값을 출력하여 원하는 순차회로를 만들 수 있다. 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  6. 6.1 DATA BASE 의 활용(DB) (5) [ 그림 6-1 ] 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  7. 6.1 DATA BASE 의 활용(DB) (6) • [그림 6-1 ] 을 소스파일로 만들면 LED_DB: ; 레이블(DB의 위치) DB 10000000B ; 실제 출력 값 DB 01000000B DB 00100000B DB 00010000B DB 00001000B DB 00000100B DB 00000010B DB 00000001B 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  8. 6.1 DATA BASE 의 활용(DB) (7) • DB(Define Byte)는 한 바이트의 데이터를 정의할 때 사용 • 롬에 각각 1바이트로 매핑하고, 이런 값들은 데이터를 그대로 HEX값으로 바꾼다. • 실제 이 값들은 마이컴이 이해할 수 없는 값이다. 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  9. 6.2 LED 순차점등 알고리즘의 이해 (1) • LED 순차 점등회로는 위의 DB를 차례로 불러와 출력하는 것을 말함 • 일상생활에서 볼 수 있는 네온사인(옥외간판)등의 동작에 응용됨 • 간단한 순차점등을 만들어 보자 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  10. 6.2 LED 순차점등 알고리즘의 이해 (2) [ 그림 6-2 ] 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  11. 6.2 LED 순차점등 알고리즘의 이해 (3) • [그림 6-5] 에서, 소스 파일은 어셈블러를 거치면 HEX로 바뀌어 ROM에 매핑 된다. • 어셈블러는“LED_DB”라는 레이블을 ROM의 #0050H 번지로 인식 한다. 즉“LED_DB”레이블은 #0050H 번지를 나타낸다. • ROM에 있는 값을 읽어오기 위한 명령어는 “MOVC”를 사용한다. 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  12. 6.2 LED 순차점등 알고리즘의 이해 (4) • [MOV 명령어] 1) MOV A,#00H : 1바이트의 데이터를 A 레지스터로 이동 2) MOVX @DPTR,A : A 레지스터의 값을 램의 DPTR 번지로 WRITE함 3) MOVX A,@DPTR : A 레지스터에 램의 DPTR 번지의 값을 READ함 4) MOVC A,@A+DPTR : 롬의 (DPTR번지+A 값(변수))의 번지에서 값을 READ 해서 A 레지스터에 저장함 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  13. 6.2 LED 순차점등 알고리즘의 이해 (5) ORG 0000H START: JMP INITIAL ;; ORG 0035H INITIAL: NOP MOV R00,#00H ;; MAIN: MOV A,R00 MOV DPTR,#LED_DB MOVC A,@A+DPTR ;; INC R00 MOV A,R00 CJNE A,#08H,MAIN MOV R00,#00H JMP MAIN 데이터를 가져온다 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  14. 6.2 LED 순차점등 알고리즘의 이해 (6) 메모리에 변환되어서 매핑된 경우 LED_DB: 0050H 번지 #0050H + #00H = #0050H번지 #0050H + #01H = #0051H번지 #0050H + #02H = #0052H번지 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  15. [ 실험 ] 1.LED 한 개씩 8개의 LED를 순차적으로 점등한다.(이때 8255의 PORT A를 이용한다) (1) [ 순서도 검토 ] NO(8보다 작다) 변수 ≥ #08H YES(8보다 크다) 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  16. 1.LED 한 개씩 8개의 LED를 순차적으로 점등한다.(이때 8255의 PORT A를 이용한다) (2) [ 기본 프로그램 설명 (1/3) ] ORG 0000H ;시작번지를 0000번지로 한다 START: JMP INITIAL ;8051 초기 데이터(고정) ;; ORG 0035H ;프로그램 시작번지(35번지) INITIAL: MOV SP,#5FH ;스택포인터를 5FH로 잡는다 MOV IE,#00000000B ;인터럽트 모두해제(DISABLE) ;; MOV R00,#00H ;변수(R00 레지스터) 초기화 INIT_8255: MOV DPTR,#8003H ;8255의 컨트롤워드 입력 MOV A,#80H ;포트A,B,C 를 출력으로 한다 MOVX @DPTR,A ;8255에 입력한다. 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  17. 1.LED 한 개씩 8개의 LED를 순차적으로 점등한다.(이때 8255의 PORT A를 이용한다) (3) [ 기본 프로그램 설명 (2/3) ] MAIN: MOV A,R00 ;변수를 가져온다 MOV DPTR,#LED_DB ;DB 값의 첫 번째를 가져온다 MOVC A,@A+DPTR ;DB 에서 값을 가져온다. MOV DPTR,#8000H ;8255의 포트A를 선택한다 MOVX @DPTR,A ;8255의 포트A로 출력한다 ;; CALL D_1S ;1초 시간 딜레이... ;; ;시간조정 가능*** INC R00 ;변수 1증가(순차증가) MOV A,R00 CJNE A,#08H,MAIN ;모두 8개의 데이터이므로... MOV R00,#00H ;변수 클리어(처음값 가져옴) JMP MAIN 제6장 82C55의 응용동작(전광판 순차 점등 회로)

  18. 1.LED 한 개씩 8개의 LED를 순차적으로 점등한다.(이때 8255의 PORT A를 이용한다) (4) [ 기본 프로그램 설명 (3/3) ] LED_DB: ; 레이블 (DB의 위치) DB 10000000B ; 실제 출력 값 DB 01000000B DB 00100000B DB 00010000B DB 00001000B DB 00000100B DB 00000010B DB 00000001B ;; $DELAY.INC ;시간지연함수 포함 END ;프로그램 종료 제6장 82C55의 응용동작(전광판 순차 점등 회로)

More Related