안녕하십니까..
보통 델파이 프로그램에서보면.. 메모리 할당을 하지않고.. 그 값을 보려고 하면.. access violation error 가 납니다.
그런데.. IO 카드를 하나 달아서 통신을 하려고 하는데.. 학교에서배운바로는
Memory Mapped I/O,하고 Isorated I/O 두가지가 있잖습니까?
특정 IO 어드레스를 읽을려고 하니까.. 어떻게 해야 할지 모르겠네요..
Memory Mapped I/O 는 mov 명령으로 메모리데이터를 가져오고 쓰고 하고.. isorated I/O 는 in,out 으로 쓰고 가져오고 하는걸로 알고 있거든요..
몇년전인가. 제가 델파이로 한적이 있는데 그걸 잊어 버렸네요... 어이없게~
인라인 어셈블을 통해서 했는데.. 안됩니다.. access violation 이 납니다.
혹시. 경험있으신 분은 답변 주세요..
var data : word;
asm
mov ax,[$8001]
mov data,ax
end;
위처럼해서 만들었던거 같은데.. 지금해보니 안되네요...
그럼...
그렇지 않다면 i/o card 를 구입한 곳에서 드라이버 지원해주고
거기에 보면 엄청쉽게 함수로 값을 주고 받을 수 있게 정의 되어 있거든요.
구입하신 i/o card 구입업체나 인터넷 사이트에 가면 드라이버, 메뉴얼등
도움말을 많이 받으실수 있을것 같네요