본문 바로가기
코스웨어/11년 내장형하드웨어

[내장형]최남식-2011년9월5일 일일보고서

by 알 수 없는 사용자 2011. 9. 6.
728x90
반응형

 

 
 


-> 여기서 로컬 루프백은 잘못된 것이고 정상모드로 설정한다.

 

Net Card에도 루프백이 적용된다. 연결주소를 127.0.0.1로 하면

외부로 나가는 것이 아니라 자기한테 다시 돌아온다.

 


->CHMODE 14 - 00정상모드  ,PAR 9 - 1XX(패리티를 사용하지 않음)

6.

-> TXEN : 0 - 무효, 1 - 송신부의 동작을 허용한다.
    RXEN: 0 - 무효, 1 - 수신부의 동작을 허용한다.
세련된 표현으로 (1<<4) | (1<<6)  좀 더 세련된 표현 (1<<TXEN) | (1<<RXEN) 으로 표현.

7.8

-> TRXDY
0 = 송신버퍼에 문자가 들어있거나 송신부가 금지되어 있다.
1 = 송신버퍼에 문자가 들어있지 않아 송신문자의 라이트가 가능하다.
   RXRDY
0 = 수신버퍼에 문자가 들어있거나 송신부가 금지되어 있다.
1 = 수신버퍼에 문자가 들어있지 않아 송신문자의 라이트가 가능하다.

그러므로 여기서는 masking을 통해 알고 싶은것만 1로 셋팅한다.
while(0==DBGU_SR & 0x00000002) ; -> 세미콜론으로 아무것도 안하고 묶어두게 된다. 언제까지?
                                                     1이 될때까지 값이 0이 아닌 1이면되면 수행하게 해준다.
좀 더 세련된 표현 DBGU_SR & (1<<1);   좀더 고상하게 DBGU_SR & (1<<TXRDY);

예제) 시리얼 통신을 이용해 한 글자가 아닌 문자열을 출력시킨다.(단 새로운 변수는 생성하지 않는다)

while (0 =! (unsigned char *) upData)



에제2) PIOA에 0번 포트 LED를 키보드를 이용하여 1번을 누를때 마다 토글되게 한다.
-> 기본적인 방법에는 전역변수, static를 이용할 수 있지만 여기서는 PIOA계열 status register을 이용하여 토굴 시킨다.

 



리소스

일반적으로 프로그램은 코드와 데이터로 구성된다. 데이터는 프로그램의 처리 대상이며 코드는 데이터를 처리하는 수단이다. 데이터의 의미를 확장하여 코드가 아닌 모든 것을 데이터라고 할 때 비트맵, 아이콘, 메뉴, 문자열 등등 프로그램의 논리와 무관한 모든 것들이 데이터에 속한다. 도스 프로그래밍에서는 이런 데이터를 만들고 관리하는 작업이 하나의 과정에 통합되어 있지만 윈도우즈 프로그래밍에서는 별도의 작업 과정으로 분리되어 있다. 코드의 논리와 무관한 데이터들을 리소스(Resource)라고 하며 메뉴, 비트맵, 액셀러레이터, 문자열, 아이콘, 커서 등등이 여기에 속한다. 이런 리소스들은 별도의 편집기로 만들어져 컴파일시에 실행파일에 결합된다.


메뉴 리소스 만들기

1. 먼저 새로운 프로젝트를 생성한다.



2.생성된 프로젝트에 기존에 수업했던 파일을 다음과 같이 ADD시켜준다.

 




3.다음과 같이 menu.rc파일을 생성 시켜준다.




4.아래와 같이 menu폴더가 생성되게 되는데 거기서 오른쪽을 클릭하여 insert해준다.




5.MENU프로젝트로 가서 더블클릭하면 아래와 같은 창이 뜬다.




6.메뉴를 편집할 수있는 창으로 가장상위인 File을 만들어 준다.




7.하위메뉴도 똑같이 해서 Menu1,Menu2,Exit도 만둘어준다.(ID도 만들어 줘야되는 것을 잊지말자)




8.여기까지 끝나면 build를 한번해준다. 그러면 다음과 같이 resource.h파일이 디렉토리에 생성된 것을 볼 수 있다.


9. MsgProc.cpp에 다음 파일을 추가 시킨뒤 실행한다.




<실행결과>

 





728x90