본문내용
\"된 순간부터 리드 모드로 동작이 시작되고, 데이터는 어드레스가 셋 되면서부터 tacc후, *EC에서부터 tec후, *OE에서 셋후, D7-D0로 읽어 내지만, 일반적으로는 tce 또는 toe 중 최대값을 액세스 타입으로 설계한다.
- 8 스텐바이 모드(standby mode)
스탠바이 모드는 *CE가 니게이트(negate) 되어 있는 상태를 말한다. 즉, ROM이 선택이 되지 않아서, 동작하지 않는 상태를 말한다.
(d) 데이터 메모리 인터페이스
8051은 프로그램 메모리와 데이터 메모리를 각각 64K 바이트까지 확장할 수 있다. 따라서 SRAM 6264를 사용한다. SRAM 6264는 데이터 입/출력 단자 8개와 8K바이트(어드레스 단자 13개)의 용량을 갖고 있다.
(가) 6264 동작 모드
6264 SRAM의 동작 모드는 4가지의 동작 모드가 있다.
- 8스탠바이 모드(standby mode) : 칩이 선택되지 않을 때 (CS=[H])를 말하며, 이 상태에서 출력 단자는 하이 임피던스이므로, 데이터 버스에 여러 개의 칩을 연결할 경우 *CS단자를 제어하면 다른 칩을 선택할 수 있다.
- 8리드 모드(read mode) : *CS와 *OE를 반대로 하면, 리드 모드가 되고, 데이터는 어드레스가 세트된 후 tacc후, *CS가 반대가 된 후, *OEtaoc후, 가 \"L\"된 후 , 데이터를 얻지만, 일반적으로 tacc또는 taoc중 최대값을 액세스 타입으로 설정한다. 이때 *WE는 \"H\"로 되어 있어야 한다.
- 8라이트 모드(write mode)
1) *OE를 보통 \"H\"로 해서 써넣기를 하는 모드이다. 가장 일반적인 라이트 모드이지만, 리드 사이클에서 라이트 사이클로 들어갈 경우 주의할 필요가 있다. 리드 사이클이 끝났을 때에는 *OE는 \"H\"로 되지만, 여기부터 twd기간에 칩측의 데이터 단자가 하이 임피던스로 되지 않을 가능성이 있다.
2) *OE를 보통 \"L\"로 고정시키고, 써넣는 모드이다. 이와 같은 경우에는 *WE에서 리드/라이트를 구별시켜, *WE가 \"H\"이면 리드 사이클, \"L\"이며, 라이트 사이클을 실행한다. 안 좋은 방법이다.
(가) SRAM 6264 인터페이스
어드레스 버스와 데이터 버스 및 *RD, *WR 제어 신호가 필요하다. 어드레스 버스는 8051의 어드레스 버스를 연결하고, 데이터 버스는 8051의 데이터 버스를 연결하면 된다.
제어 신호 중 *WR신호는 8051의 *WR신호를 직접 연결하였지만, *RD신호는 조금 변형을 시켰다. 프로그램 메모리 및 데이터 메모리로서 사용할 수 있도록 하였다. 8051의 *RD신호와 *PSEN 신호를 AND 해서 6264의 *OE신호에 연결하면 된다
◆ C언어의 기본적인 사항들
C 언어는 대문자와 소문자를 구별하여 프로그램을 만들어야 한다 .대부분의 함수, 키워드는 소문자이므로 주의를 할 필요가 있으며 이 강좌에서는 C언어를 이용하여 프로그램을 만들 수 있을 정도의 기본적인 것들만 설명하기로 한다.
1. 숫자 표기
C언어에서 정수와 실수는 다음과 같이 표기한다.
(1) 정수
정수 표현기법
-------------------------------------------------------
8진수 : 0으로 시작되는 숫자 : 012
10진수 : +,-와 0 이외의 숫자로 표시되는 숫자 : 123,-10
16진수 : 0X, 0x로 시작되는 숫자 : 0X1c,0x1d
--------------------------------------------------------
(2) 실수
실수는 부동 소수점으로 취급된다. 10진수로 표기하며, 가수부와 지수부로 나누어지고, 가수부의 마지막에 e또는 E를 붙여 그 이후에 지수를 표기한다.
2. 연산자
C언어에서는 많은 연산자가 사용되며, 어셈블리어에서와 같이 비트 단위로 조작할 수 있다.
(첨부된 자료를 활용하자)
3. 데이터 형식
데이터의 크기는 cpu마다 조금씩 다르기 때문에 사용자는 다른 컴파일러에서도 반듯이 확인해야 한다.
예1) bit 데이터형 사용하기
8051의 내부 렘중에 비트 단위로 리드, 라이트 할 수 있는 영역과 특수기능 레지스터군에서 비트 지정이 가능한 영역에 변수를 지정할 때 사용한다.
bit light =0; /*내부 램 0x20의 비트 번호 0을 light로 지정*/
sbit ET1 =0xab; /*특수 기능 레지스터 중에서 비트 어드레스 0xab를 ET1으로 지정*/
예2)특수기능 레지스터제어
sfr P1 = 0x90; /* 0x90을 P1으로 지정 */
sfr TMOD = 0x89; /* 0x89를 TMOD로 지정 */
4. 포인터
포인터는 메모리 형태를 저장하는 1바이트, 메모리 어드레스를 나타내는 2바이트의 총 3바이트 크기이다
--------------------------------------------------------------------
메모리형 메모리값 설명
--------------------------------------------------------------------
idata 1 간접액세스할 수 있는 내부 데이터 메모리(256바이트)
xdata 2 외부 데이터 메모리 (64k바이트)
pdata 3 페이지화된 외부 데이터 메모리(256 바이트)
data 4 직접 액세스할 수 있는 내부 데이터 메모리(128바이트)
code 5 프로그램 메모리(64k 바이트)
--------------------------------------------------------------------
예3)
변수를 메모리형의 값과 어드레스를 정의한 다음, 데이터를 써넣는다
#define ADDRESS(*(unsigned char *) 0x22000)
ADDRESS=0x31;
변수를 메모리형과 어드레스를 정의한 다음, 데이터를 써넣는다
#define ADDRESS (*(unsigned char xdata)0x22000)
ADDRESS=0x31;
예4) 포인터 사용하기
포인터는 다른 C에서 처럼 그대로 사용할 수 있다
c=*((char code *)0x51000); /*프로그램 메모리 0x1000번지의 내용을 변수 c에 저장
- 8 스텐바이 모드(standby mode)
스탠바이 모드는 *CE가 니게이트(negate) 되어 있는 상태를 말한다. 즉, ROM이 선택이 되지 않아서, 동작하지 않는 상태를 말한다.
(d) 데이터 메모리 인터페이스
8051은 프로그램 메모리와 데이터 메모리를 각각 64K 바이트까지 확장할 수 있다. 따라서 SRAM 6264를 사용한다. SRAM 6264는 데이터 입/출력 단자 8개와 8K바이트(어드레스 단자 13개)의 용량을 갖고 있다.
(가) 6264 동작 모드
6264 SRAM의 동작 모드는 4가지의 동작 모드가 있다.
- 8스탠바이 모드(standby mode) : 칩이 선택되지 않을 때 (CS=[H])를 말하며, 이 상태에서 출력 단자는 하이 임피던스이므로, 데이터 버스에 여러 개의 칩을 연결할 경우 *CS단자를 제어하면 다른 칩을 선택할 수 있다.
- 8리드 모드(read mode) : *CS와 *OE를 반대로 하면, 리드 모드가 되고, 데이터는 어드레스가 세트된 후 tacc후, *CS가 반대가 된 후, *OEtaoc후, 가 \"L\"된 후 , 데이터를 얻지만, 일반적으로 tacc또는 taoc중 최대값을 액세스 타입으로 설정한다. 이때 *WE는 \"H\"로 되어 있어야 한다.
- 8라이트 모드(write mode)
1) *OE를 보통 \"H\"로 해서 써넣기를 하는 모드이다. 가장 일반적인 라이트 모드이지만, 리드 사이클에서 라이트 사이클로 들어갈 경우 주의할 필요가 있다. 리드 사이클이 끝났을 때에는 *OE는 \"H\"로 되지만, 여기부터 twd기간에 칩측의 데이터 단자가 하이 임피던스로 되지 않을 가능성이 있다.
2) *OE를 보통 \"L\"로 고정시키고, 써넣는 모드이다. 이와 같은 경우에는 *WE에서 리드/라이트를 구별시켜, *WE가 \"H\"이면 리드 사이클, \"L\"이며, 라이트 사이클을 실행한다. 안 좋은 방법이다.
(가) SRAM 6264 인터페이스
어드레스 버스와 데이터 버스 및 *RD, *WR 제어 신호가 필요하다. 어드레스 버스는 8051의 어드레스 버스를 연결하고, 데이터 버스는 8051의 데이터 버스를 연결하면 된다.
제어 신호 중 *WR신호는 8051의 *WR신호를 직접 연결하였지만, *RD신호는 조금 변형을 시켰다. 프로그램 메모리 및 데이터 메모리로서 사용할 수 있도록 하였다. 8051의 *RD신호와 *PSEN 신호를 AND 해서 6264의 *OE신호에 연결하면 된다
◆ C언어의 기본적인 사항들
C 언어는 대문자와 소문자를 구별하여 프로그램을 만들어야 한다 .대부분의 함수, 키워드는 소문자이므로 주의를 할 필요가 있으며 이 강좌에서는 C언어를 이용하여 프로그램을 만들 수 있을 정도의 기본적인 것들만 설명하기로 한다.
1. 숫자 표기
C언어에서 정수와 실수는 다음과 같이 표기한다.
(1) 정수
정수 표현기법
-------------------------------------------------------
8진수 : 0으로 시작되는 숫자 : 012
10진수 : +,-와 0 이외의 숫자로 표시되는 숫자 : 123,-10
16진수 : 0X, 0x로 시작되는 숫자 : 0X1c,0x1d
--------------------------------------------------------
(2) 실수
실수는 부동 소수점으로 취급된다. 10진수로 표기하며, 가수부와 지수부로 나누어지고, 가수부의 마지막에 e또는 E를 붙여 그 이후에 지수를 표기한다.
2. 연산자
C언어에서는 많은 연산자가 사용되며, 어셈블리어에서와 같이 비트 단위로 조작할 수 있다.
(첨부된 자료를 활용하자)
3. 데이터 형식
데이터의 크기는 cpu마다 조금씩 다르기 때문에 사용자는 다른 컴파일러에서도 반듯이 확인해야 한다.
예1) bit 데이터형 사용하기
8051의 내부 렘중에 비트 단위로 리드, 라이트 할 수 있는 영역과 특수기능 레지스터군에서 비트 지정이 가능한 영역에 변수를 지정할 때 사용한다.
bit light =0; /*내부 램 0x20의 비트 번호 0을 light로 지정*/
sbit ET1 =0xab; /*특수 기능 레지스터 중에서 비트 어드레스 0xab를 ET1으로 지정*/
예2)특수기능 레지스터제어
sfr P1 = 0x90; /* 0x90을 P1으로 지정 */
sfr TMOD = 0x89; /* 0x89를 TMOD로 지정 */
4. 포인터
포인터는 메모리 형태를 저장하는 1바이트, 메모리 어드레스를 나타내는 2바이트의 총 3바이트 크기이다
--------------------------------------------------------------------
메모리형 메모리값 설명
--------------------------------------------------------------------
idata 1 간접액세스할 수 있는 내부 데이터 메모리(256바이트)
xdata 2 외부 데이터 메모리 (64k바이트)
pdata 3 페이지화된 외부 데이터 메모리(256 바이트)
data 4 직접 액세스할 수 있는 내부 데이터 메모리(128바이트)
code 5 프로그램 메모리(64k 바이트)
--------------------------------------------------------------------
예3)
변수를 메모리형의 값과 어드레스를 정의한 다음, 데이터를 써넣는다
#define ADDRESS(*(unsigned char *) 0x22000)
ADDRESS=0x31;
변수를 메모리형과 어드레스를 정의한 다음, 데이터를 써넣는다
#define ADDRESS (*(unsigned char xdata)0x22000)
ADDRESS=0x31;
예4) 포인터 사용하기
포인터는 다른 C에서 처럼 그대로 사용할 수 있다
c=*((char code *)0x51000); /*프로그램 메모리 0x1000번지의 내용을 변수 c에 저장
키워드
추천자료
나노기술 현황 (Nano Technology)
하드웨어에 관한 모든 것
클러스터 시스템에서의 자원 관리 프로그래밍 모델
CPU구조와 구분
[RFID] RFID의 기본특성과 시장전망 - RFID, 정보시스템의 구성요소, 분류와 특성, 표준화, ...
(결과) HBE-MCU-Multi 구동 GPIO 이용 LED 켜기 - AVR HBE-MCU-Multi 장비를 처음으로 사용하...
임베디드 시스템에서 사용되는 cpu의 종류와 특징
Intel Vs AMD(pdf,ppt-2개)
[기업정보][기업][정보][기업채용정보][기업지식정보][기업인사정보][기업기술정보][기업회계...
[컴퓨터의 이해 공통] 1.스마트폰 현재 기준 ①대표적인 스마트폰 3개 이상 선정 이유와 각 운...
소개글