회원가입 ID/PW 찾기
AA


















댓글 25
  • No Profile

    처음부터 책에 나온 설명대로 uVsion 설정을  바꾸셨다면 이상이 없겠지만

    안바꾸셨으면 바꾸셔야 할부분이

    1. target 탭부분에
     

    Memory Model : Large 로 바꾸시구요.. small로 하나 large로 하나 상관은없는데 대부분 large로설정하구요

    그리고 밑에 off-chip code memory 부분과 off-chip xdata memory 부분을 바꾸시면 되구요

    그림처럼 각 주소 할당 번지가 책에 저렇게 되어있다면 맞구요

    저 같은경우에는 off-chip code memory 부분에 0x5000 0x6000이고

    off-chip Xdata memory 부분에 0xB000 0x1000 으로 되어 있습니다 각 보드마다 틀릴거라 생각 듭니다


    우선 memory model 설정부분 large해보시구요

    그다음으로 설정해주는 부분이 C51탭부분에 interrup vectors at address부분 체크 하시고 주소 써주시는거랑

    debug 탭에 오른쪽에 있는 use 체크 해주시고 맞게 하셨네요 그리고 저같은경우에는 디버킹 툴 세팅부분에

    breakpoihnts,toolbox,memory display 부분 체크 되어있네요

    책에 그대로 되어있는데 안된다 하시면..흠.. 그 책 CD에 있는 프로젝트 소스 옴기셔서 실행해보시는것도 좋구요

    그래도 안된다면 하드웨어적인 문제로 밖에 보이지 않네요

    그리고 com2로 사용하신다고 하신거 같은데 com1이네요;;

    직접 해보면서 오류를 찾고 싶지만 직접 못도와드려서 죄송하네요 ;;;


  • No Profile
    하드웨어 적인 문제 같으시면 다른 컴퓨터에 보드를 연결 해보시고

    하시면 될것같네요 usb같은거 말고 데스크탑 본체에 시리얼 포트가 있는 컴터로요~
  • No Profile
    글쓴이 행복하면 08.01.21 09:21 댓글 좋아요 0 싫어요 0

    만약에 하드웨어 적 문제라면.. 어느 쪽에서 문제가 있는 거예요!?

    일단.. 전원부는 다 들어 와서.. 기본 세팅 화면은 다 뜨거등요..;;;;

    통신부분이 안되면..;; 이긍;;

  • No Profile
    음...우선...행복하면님의 보드에 전원을 넣으면...LCD에 문자가 뜬다고 하는 것으로 봐서는..
    분명히 롬에 프로그램이 들어있는 상태인거 같군요..
    그럼...이제 생각해 볼 문제가 좀 압축이 된거 같네요...(물론 계속 저의 상상일 뿐이라.ㅡㅡ)
    어쩌든지..간에..

    이렇게 한번 해보세요..우선...의심되는게 하나 있어서요..
    "시작" => "프로그램" => "보조프로그램" => "통신" => "하이퍼터미널"
    실행하셔서..
    보레이트 9600 ..... 패리티 None  데이터비트 8bit  스탑비트 1bit   흐름제어 없음 ...
    로 셋팅하시고..
    보드의 리셋을 한번 눌러보세요..
    혹시 어떤 문자가 나오는지....
  • No Profile
    글쓴이 행복하면 08.01.21 21:42 댓글 좋아요 0 싫어요 0

    하이퍼터미널을 들어 가니깐.. 뭐.. 텔넷 뭐.. 하라고 하던데;;

    이그응.. 근데.. 궁금한게 있는데요..

    지금 이 보드에서는 isp를 지원 안하니깐..

    롬라이터를 꾸워야 되잖아요..

    그 꿉기전에.. 시리얼포트를 이용해서..

    직접 보드에서 돌아가는지 확인 해 볼려고 하는건데..

    모니터로만 확인을 할 수 있고,, 시리얼 포트를 통해서 연결된

    보드에서는 확인 할 수 없는 건가요!?

  • No Profile

    얼레 그 보드가 컴터상에서 만든 소스를 가지고 Put_String("hello");

    이런식으로 하면 보드 LCD화면에 hello라고 뜨는걸로 알고 있거든요 그러니까 소스를 짜면 보드로 연결해서 디버깅->런하면

    그렇게 되져... 보드로 확인할수 있는걸로 알고 있구요 ... 그래서 led제어 lcd제어 timer , interrupt,adc머 여러가지 보드에 있는

    것을 소프트웨어 C나 어셈블리를 이용해서 소스 짜고 보드로 돌리는게 그 보드가 있는 이유 같네요

    하이퍼터미널은...

    시리얼 통신용 프로그램을 만들었을시에 시리얼포트 함수 구현하고 그걸 출력 해야 메뉴 선택 되고 만드신 프로그램으로

    제어용으로만 사용해보았구요 아무런 소스도 안짠상태에서는 연결을 안해 봤습니다 설정을 해줘야 돼구요

    보드네에 어떤연결 프로그램이 있는지 모르겠네요 바로 다이렉트로 보드랑 연결은 해보지 않아서

    8051이라서 자동으로 짜여져 있는 소스는 없는것 같습니다.

    연결을 하여도 연결만 되지 머 특정한 프로그램이 뜨거나 그러진 않구요

    pxa255등과 같은 머 32bit 용 보드 회사에서 만들어서 그런것들에는 기본적으로 어떤프로그램이 있어서

    텔넷으로 접속해서 머 설정 이런건 알겠는데 8051은 잘모르겠네요

    보드에서 확인할수 있을거에요

    기본 세팅 화면이라고 하시는게 제가 알기론 전원을 그냥 키면 LCD는 무슨 wait 어쩌고 기다리시요 영어 막나오고

    led는 불이 한번씩 다 켜졌다가 꺼지고 세그먼트는 숫자 막 올라갔다 내려가고 머 이런거 말씀 하시는건가요?

    처음에 전원 키면요 .. reset버튼 눌러도 그렇게 되지 않나요? 암튼 그냥 그건 보드 키면 이게 정상이구나 알려주는거구요

    하드웨어 적인게 보드랑 컴터랑 연결이 안됬다는 말이에요~

    제가 보기에는 ;;;

  • No Profile
    그러니까 연결이 되었는지 안되었는지 그거 알려면 우선 usb머 기본 윈도우 시스템정보에 등록정보에 포트 세팅 이게

    잘못 되어서 안잡혀 있어서 인식이 안되는거 같아서요...세팅을 제대로 하셨는지 모르겠구요

    도무지 모르겠다 연결이 됬는지 그러시면 다른 친구분이나 pci로 시리얼 포트가 있으신분컴터로 가져가서 간단한 소스를 돌려보시면

    만약 된다면 연결 상태 문제 인거 같네요... 계속 말이 길어지네요 ㅈㅅ ;;
  • No Profile

    제가 확인해 보니깐...미니로봇의 보드가 확실히 맞군요..
    그거 모니터프로그램이 들어있는 형태의 보드 입니다.....
    그리고 시리얼이 정확히 연결되 있으면..
    하이퍼 터미널로..연결해놓고....(프로그램 아무것도 안넣고) 보드를 리셋하면..
    연결이 제대로 되어 있다면..문자가 뜰겁니다...행복하면 님의 보드에 LCD가
    잘동작되었다고 했으니...제가 보기에는 모니터 프로그램이 잘 동작하고 있는 상태입니다.

    그거 보레이트 9600 으로 맞췄었는데...19200 일수도 있습니다....그보드는 벌써 써본지가 10년이 넘은거라..ㅡㅡ
    정확히 기억이 나지 않지만...
    우선..케일에서 작업하지 마시고..
    하이퍼터미널에서.....시리얼이 잘 연결되어 있는지 확인해보세요..

    그리고 윈본드꺼 칩은 완전히 8031하고 똑같습니다...그게 아마 더 싸서 그걸로 썼나봅니다.
    특별히 칩에 하드웨어적인 디버거는 없구요..오리지널 보다 속도만 더 빠른 형태힙니다.

    제가 보기에는 그것만 확인하시면...될것 같군요....

  • No Profile
    제 예상이 맞다면..

    +------- 8051(31)monitor v2.0    miniROBOT -----+
    |             [www.minirobot.co.kr]                                 |
    |      [H] Help                                                                |
    |      [M] Memory test    [4000h-bfffh]                        |
    |      [C] memory Clear   [4000h-bfffh] <= 0            |
    |      [D] Dump data,code [0000h-ffffh]                    |
    |      [L] Loading program[4000h-                            |
    |      [R] Running  at 4000h(0),4100h(1)                 |
    |      [P] Port1 out                                                         |
    +-----------------------------------------------+

    대충 이런 비슷하게 뜰겁니다...
  • No Profile
    그리고 이런 형태의 보드는 좀 않좋은 것이....
    공부할 때는 그럭저럭 괜찮은데......나중에 개발 다 하고나서는 ....좀 않좋은 점이 있죠..
    켜자마자 내가 만든 프로그램을 띄우려면...
    모니터프로그램 지우고..내가 만든 프로그램을 4000번지 시작이 아닌..0번지 시작으로..다시 바꾸고..
    롬에다 꿔야지요.....
    그래서 이런 형태의 보드는 학습용으로는 좀 사용할 수 있지만..개발용으로는 좋지 않습니다.

    어쨌든 간에.....Max232회로가 문제가 없다면....그리고 Tx, Rx부분이 정확히 연결이 되어 있다면...
    분명히 보드 동작시키는데는 문제 없으실 겁니다.
  • No Profile

    만일..파워켰는데...글씨가 막 깨지면서..출력되면..
    보레이트가 맞지 않는 겁니다..
    만일 9600이었으면..19200 으로....바꿔보시고..테스트 해보세요.
    가끔 크리스털이 11.0592에서 9600으로 맞춰져 있는 경우도 있으니까요..
    그런데 크리스털이 22.1184이면 19200으로 맞춰야 제 동작이 되겠죠.

  • No Profile
    글쓴이 행복하면 08.01.22 11:59 댓글 좋아요 0 싫어요 0
    저.. 하이퍼 터미널이 안되는데.. 다시 설명을 좀 해 주실수 있나요!?

    전 하이퍼 터미널을 들어가니깐.. 텔넷으로 들어 가더라구요,., 이그응.. ㅠㅠ

    그리고 지금 이 보드에서는 isp를 지원 안하니깐..

    롬라이터를 꾸워야 되잖아요..

    그 꿉기전에.. 시리얼포트를 이용해서..

    직접 보드에서 돌아가는지 확인 해 볼려고 하는건데..

    모니터로만 확인을 할 수 있고,, 시리얼 포트를 통해서 연결된

    보드에서는 확인 할 수 없는 건가요!?

    이것도 궁금 하구요,,,
  • No Profile

    우선 USB시리얼 케이블을 연결하시면...컴포트 하나가 생길겁니다.
    그리고 나서..하이퍼 터미널을 띠우면..아래 화면을 볼 수 있지요..
    first.JPG
    여기서 아무 이름이나 넣고..확인 하시면..
    second.JPG

    이런 창을 보실 수 있으실 겁니다..여기에서..컴포트 선택하시구요..
    만일 컴퓨터에 컴포트가 없으면 ...TCP-IP만 있을 겁니다...
    어쨌든..여기서 확인하시면..

    third.JPG

    컴포트 설정 부분이..나오는데....
    속도..맞춰주시고...데이터 비트, 스탑 비트, 패리티 비트..흐름제어..등을 셋팅합니다.
    보통..흐름제어는 안쓰구요.....데이터 스탑 패리티..를 8 1 None 로 많이들 사용합니다.

    그러면..하이퍼 터미널이 ...시리얼통신을 하기 위한 상태가 되는거구요.
    컴포트에 연결되어 있는 8051보드의 리셋을 눌러보시기 바랍니다...
    문자가 아마 뜰거라고 생각됩니다. ...아마 안된다면..먼가 연결이..잘못이 있을 겁니다...

    수고하세요....파이팅..rabbit%20(30).gif

  • No Profile
    글쓴이 행복하면 08.01.23 21:15 댓글 좋아요 0 싫어요 0
    comidi님 말한대로 하니깐.. 뜨는데요;;;

    그럼.. 잘못된건 없는거 같은데;;

    이그응..;; ㅋㅋ

    점점 사건은 미궁 속으로....;; ㅋㅋㅋ
  • No Profile
    ^^; 그럼 8051을 공부하기 위한..준비는 다 끝난겁니다...
    그 내용은...지금은 좀 힘들고..집에 들어가서 올려드리지요..
  • No Profile

    제가 보기에는.....정확하진 않지만....Keil C 용 모니터 프로그램을 미니로봇에서 제공하고 있는지도 모르겠습니다.
    전 사실 미니로봇꺼 보드를 사용해봤지만...Keil하고 연동해서 사용해 보진 못해서...
    확신은 못한다는..

    대신에..케일하고..하이퍼터미널 같은 터미널 프로그램을 이용하여..8051을 공부하는 방법을 설명 드리려구요..
    우선..책에 있는 소스를 만드시고...링커옵션이나..컴파일 옵션은..책하고 똑같이 따라서..
    컴파일 하세요...
    그래서 ...만들어진 Hex파일이 있을 겁니다..

    우선..그 파일이름을 설명의 편의상 test.hex 라고 가정합시다..
    그리고 위에 쓰여진데로 하이퍼 터미널이 연결된 상태에서...
    리셋을 누르면...모니터 프로그램이 동작할 겁니다..
    음...제가 보드가 없으니깐...스크린 샷을 보여드릴 수가 없군요..어쨌든..간에..

    "L" 을 누르면...다운로드 대기상태가 될 겁니다..(Loading Program)
    그런뒤에...하이퍼터미널의 메뉴중에 "전송" => "텍스트 파일보내기" 를 실행합니다.
    그럼 파일 대화상자가 뜨는데..그곳에서..파일이름에 *.hex 를 치시고..
    아까 만든 test.hex를 찾아갑니다.

    test.hex 파일을 선택하셨으면.."열기" 버튼을 누르면...다운로딩이 진행됩니다.

    다운로딩이 끝난뒤...이제 프로그램을 실행하시면 됩니다...
    모니터 프로그램 메뉴에서 "R" 메뉴가 있을 겁니다. (Running .....)

    제가 보드가 없어서 정확한 설명을 드리긴 힘들지만...아마 잘 보시면..이해하실 수 있을 거라고 생각됩니다.
    건투를 빕니다..^^;


  • No Profile

    참...근데...모니터 프로그램의 메뉴가...

    +------- 8051(31)monitor v2.0    miniROBOT -----+
    |             [www.minirobot.co.kr]                                 |
    |      [H] Help                                                                |
    |      [M] Memory test    [4000h-bfffh]                        |
    |      [C] memory Clear   [4000h-bfffh] <= 0            |
    |      [D] Dump data,code [0000h-ffffh]                    |
    |      [L] Loading program[4000h-                            |
    |      [R] Running  at 4000h(0),4100h(1)                 |
    |      [P] Port1 out                                                         |
    +-----------------------------------------------+

    이렇게 뜨나요? 아니면..메뉴가 약간 다른가요?

  • No Profile
    글쓴이 행복하면 08.01.24 09:04 댓글 좋아요 0 싫어요 0

    예.. 위 그림과 비슷한 문자가 출력 된거 같애요..

    형태는 똑같아요..

    자세한 내용은 확실히 안봐서;;;;ㅋㅋ

  • No Profile
    글쓴이 행복하면 08.01.24 23:01 댓글 좋아요 0 싫어요 0

    근데.. 했는데.. run했는데..

    Start address : 0000
    End   address : 4076
        [R] program run
        [Q] retun prompt

    Program Starting point select

    0:4000h 1:4100h ?

    이런 메세지가 뜨더라구요..
    그래서.. 둘다 해봤는데.. 안돼요.. ㅠㅠ

  • No Profile
    아겅..아직도 이게 해결이 안됐나봐요....run누르면 프로그램이 실행되야 하는데 말이지요..ㅡㅡ

  • No Profile

    흠...혹시 만들어진 hex파일 첨부 해주실 수 있나요?
    그리고 run은 4000번지로 시키는게 맞을 겁니다...
    근데 중요한건 링크할 때 시작 번지를 4000번지에 맞추셔야 해요..
    만일 0번지로 맞춰져 있으면....실행이 안되는게 당연합니다.

  • No Profile
    그리고 외부 램 롬을 쓰니깐....메모리 구조는 Large를 사용하시면 됩니다.
    근데 램이 위치하는 곳이 4000번지 맞나요? 그거도 좀 의문인데...GAL이 어떻게 꿔져 있냐에 따라서.
    메모리 맵이 달라지니깐요...
  • No Profile

    연결에 문제가 없다면 keil 의 메모리 설정 부분이 좀 의심이 가는데요

    그 보드에 off-chip code memory 와 off-chip xdata memory 부분 잘 설정 해주신건지 모르겠네요..

    commidi님 말씀 처럼 램 위치하는 곳이 4000번지가 아니고 머 예를 들어 얼레는 5000번지부터 시작하는데

    잘못설정 하시면 안되는걸로 알고 있습니다..  메모리 구조 부분 Large 로 설정 바꾸시구요 맨위에 그림에서

    행복하면님이 보시는 8051 마이크로프로세서 응용로봇제작 ? (세화) 이책 저도 봤었는데 흠...

    그책안에서는 4000번지로 시작했는지 모르겠네요 우선 keil 부분 세팅 하는 부분이 있었는지 잘 모르겠구요

    keil에서 컴파일 하고 hex파일 만들어서 하이퍼터미널로 하셨을때 어차피 keil에서 hex파일을 만든거기때문에

    설정부분을 잘못하셨다면 keil에서나 하이퍼 터미널이나 똑같이 안돌아가는건 맞는거 같네요

  • No Profile

    예전에 기억에...(가물가물하지만...ㅡㅡ) 8000번지 였던거도 같은데...ㅡㅡ
    어쨌든 간에 메모리 맵은...갈에 의존됩니다...혹시 GAL소스가 있으시면...그거보고 메모리 맵 확인하시면..
    될 거같군요..


  • 누군가가 작성한  keil사용법을 올려 드리겠습니다.
    참고하세요 ^^;

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
26 펌웨어 & 코딩언어 HOT모니터 정보 읽어올때 프로토콜1 빛나는 영혼 1374 2008.03.06
25 펌웨어 & 코딩언어 HOT아~~20 あさひ 928 2008.01.15
24 펌웨어 & 코딩언어 HOT최근에 질문 받은 소스-_-;;1 아크마 765 2007.08.16
23 펌웨어 & 코딩언어 HOTRS232 컨트롤 소스2 아크마 3832 2007.04.13
22 펌웨어 & 코딩언어 HOT시리얼통신 데모 프로그램 소스2 아크마 3304 2007.04.13
21 펌웨어 & 코딩언어 HOT시리얼통신 테스트 프로그램2 아크마 3255 2007.04.13
20 펌웨어 & 코딩언어 HOT화상 캠 제어 소스5 아크마 3287 2007.04.13
19 펌웨어 & 코딩언어 HOT음성변조 관련 프로그램 소스 모음4 아크마 6565 2007.04.13
18 펌웨어 & 코딩언어 HOT어셈으로 구현한 암호화 복호화 - by 아크마4 아크마 2765 2007.08.08
17 펌웨어 & 코딩언어 HOTC를 위한 어셈블리어22 아크마 3160 2007.06.06
16 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #16 [ 입력/출력 ]10 뺘쑝 3730 2007.06.02
15 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #15 [ 인터럽트 : DOS가 서비스를 제공하는 방법 ]5 뺘쑝 2864 2007.06.02
14 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #14 [ 스트링 작업 ]6 뺘쑝 2833 2007.05.24
13 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #13 [ 산술 연산 ]9 뺘쑝 3683 2007.05.24
12 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #12 [ 프로시저 ]9 뺘쑝 2902 2007.05.24
11 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #11 [ 제어 흐름의 구현 ]8 뺘쑝 2531 2007.05.24
10 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #10 [ 제어 흐름 ]7 뺘쑝 2653 2007.05.24
9 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #9 [ 일반 명령문 ]11 뺘쑝 3233 2007.05.11
8 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #8 [ 자료의 정의 ]8 뺘쑝 1934 2007.05.04
7 펌웨어 & 코딩언어 HOT어셈블리어 강좌 #7 [ 프로그램의 처리 ]6 뺘쑝 2282 2007.05.04
  • 인생은 하나의 실험이다. 실험이 많아질수록 당신은 더 좋은 사람이 된다.
    - 에머슨
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.