이전의 wiz-c와 씨름하다가 새로운 툴을 찾았는데 정말 좋다. mikroPascal이라는 이 툴도 2000워드 제한이 있지만 초보 개발을 이해서는 유용하다. 더 많은 PIC를 지원하고 편집창도 잘 만들어졌고 비교적 사용자도 많고 wiz-c에서 문제였던 비트 다루기가 편해졌다. 비슷한 프로그램으로 mikro-c라는 것두 있으니 사용해보고 싶다면 권해보고 싶다. 구현을 다 집어넣어도 비교적 많은 공간이 남아서 더 많은 기능을 구현할 수 있으리라 본다. 일반 직관적인 pascal이라는게 맘에 무척든다.
새로 포팅한(사실 새로 다시 만들었다) 소스들도 문제없이 아주 잘 작동한다. 낯설지만 재미있는 툴인 것 같다.
'기타' 카테고리의 다른 글
| 새로운 PIC 프로그래밍 툴 mikroPascal (0) | 2012/01/18 |
|---|---|
| PIC Progammer 제작. (0) | 2012/01/07 |
| Wiz C - PIC 프로그래밍 툴. (0) | 2011/12/11 |
| 일일 점점 커진다. (0) | 2011/12/03 |
| LED 회로 다 만들다. (0) | 2011/06/26 |
| GIMP로 인스타그램 효과 흉내내기. (0) | 2011/06/19 |
인쇄기판까지 그러놓고 결국엔 만능기판으로 만들었다. 인쇄기판은 여러가지 손이 많이가고 시도해보지 않아 또다른 난관이 있을지도 모른다는 핑계로 이번에는 만류. 사실 회로의 완성도가 부족하다는 이유도 있다.
일단 만능기판으로 손톱을 태워가며 만들어서 이리저리 고친 후에야 완성을 했다. 의외의 제약들도 있어서 결국엔엔 많이 고쳐야 했다. 아직 해결 못한 부분이 전원부인데 레귤레이터가 많이 따스해진다. 방열판의 도움을 받고 있지만 그정도의 소비전력은 아닌 것 같은데 활활 타오르려 한다.
기본 설계는 크게 문제되는 부분이 없는 것 같고 100오옴의 저항들을 출력단에 안전을 위해 배치했는데 3번과 4번, 그리고 5번에는 빼는 것은 좋을 것 같다. SI Prog의 확장 인터페이스들을 이용하는데 트랜지스터의 스위칭 전압이 약간 적어지는 것 같다는 추정.
설계상에서 많이 변화된 부분은 하나의 출력을 제외한 다른 I/O입출력은 16F627의 B포트를 사용한다. 왜냐면 이 포트가 입력으로 TTL 신호를 받아들이는데 문제가 없다. 포트 A는 슈미트트리커(ST)신호를 입력으로 사용하는데 이는 보다 더 높은 전압을 1(0.8VDD)과 0(0.2VDD)의 구분 신호로 받아들인다. 반면 TTL은 2V 이상이면 1로 인식하기에 더 편하다.
처음에는 많은 실패가 있었다. 많은 문서를 읽어봤지만 프로그래밍 상태로 들어가는 조건을 엉터리로 명시하고 있었기 때문인데 그 때문에 상당히 오랜 기간동안 고민을 했다. MCLR을 먼저 인가하고 그 다음 VDD를 인가하는 것이 일반적인 순서인데 실제로는 VDD를 인가하고 MCLR을 인가해야만 프로그래밍 모드로 들어간다. 몹쓸 기술 문서들 =_=;
그 외의 다른 큰 문제들은 없었다.
내부 펌웨어의 동작은 간단하다. 특정 시간동안 데이터를 받아들이고 혹시 끊기거나 중단되면 VDD인가 전압이 끊어지도록 만들었다. 250밀리초의 무응답 시간을 설정하고 있으며 내부적으로 테스트를 위해 그 기능을 끄는 기능도 포함하고 있다. 입출력은 기본적으로 낮은 비트를 먼저 출력 클럭과 함께 내보내거나 읽으며, 데이터를 읽는 타이밍은 상승엣지와 하강엣지 둘인데 기본적으로는 상승엣지에서 읽도록 되어 있으며 하강 엣지로 설정도 가능하다. 하강엣지에서의 읽는 것은 AVR을 위한 것인데 아직 테스트하지는 못했다.
일단 PIC를 위한 프로그래밍 툴을 만들고 나서 다른 칩셋들에 대한 적용을 재고해봐야겠다.
아래 첨부 파일에는 회로도, 펌웨어, 간단한 테스트 프로그램(16F676으로 실험)을 포함한다.
일단 만능기판으로 손톱을 태워가며 만들어서 이리저리 고친 후에야 완성을 했다. 의외의 제약들도 있어서 결국엔엔 많이 고쳐야 했다. 아직 해결 못한 부분이 전원부인데 레귤레이터가 많이 따스해진다. 방열판의 도움을 받고 있지만 그정도의 소비전력은 아닌 것 같은데 활활 타오르려 한다.
기본 설계는 크게 문제되는 부분이 없는 것 같고 100오옴의 저항들을 출력단에 안전을 위해 배치했는데 3번과 4번, 그리고 5번에는 빼는 것은 좋을 것 같다. SI Prog의 확장 인터페이스들을 이용하는데 트랜지스터의 스위칭 전압이 약간 적어지는 것 같다는 추정.
설계상에서 많이 변화된 부분은 하나의 출력을 제외한 다른 I/O입출력은 16F627의 B포트를 사용한다. 왜냐면 이 포트가 입력으로 TTL 신호를 받아들이는데 문제가 없다. 포트 A는 슈미트트리커(ST)신호를 입력으로 사용하는데 이는 보다 더 높은 전압을 1(0.8VDD)과 0(0.2VDD)의 구분 신호로 받아들인다. 반면 TTL은 2V 이상이면 1로 인식하기에 더 편하다.
처음에는 많은 실패가 있었다. 많은 문서를 읽어봤지만 프로그래밍 상태로 들어가는 조건을 엉터리로 명시하고 있었기 때문인데 그 때문에 상당히 오랜 기간동안 고민을 했다. MCLR을 먼저 인가하고 그 다음 VDD를 인가하는 것이 일반적인 순서인데 실제로는 VDD를 인가하고 MCLR을 인가해야만 프로그래밍 모드로 들어간다. 몹쓸 기술 문서들 =_=;
그 외의 다른 큰 문제들은 없었다.
내부 펌웨어의 동작은 간단하다. 특정 시간동안 데이터를 받아들이고 혹시 끊기거나 중단되면 VDD인가 전압이 끊어지도록 만들었다. 250밀리초의 무응답 시간을 설정하고 있으며 내부적으로 테스트를 위해 그 기능을 끄는 기능도 포함하고 있다. 입출력은 기본적으로 낮은 비트를 먼저 출력 클럭과 함께 내보내거나 읽으며, 데이터를 읽는 타이밍은 상승엣지와 하강엣지 둘인데 기본적으로는 상승엣지에서 읽도록 되어 있으며 하강 엣지로 설정도 가능하다. 하강엣지에서의 읽는 것은 AVR을 위한 것인데 아직 테스트하지는 못했다.
일단 PIC를 위한 프로그래밍 툴을 만들고 나서 다른 칩셋들에 대한 적용을 재고해봐야겠다.
아래 첨부 파일에는 회로도, 펌웨어, 간단한 테스트 프로그램(16F676으로 실험)을 포함한다.
'기타' 카테고리의 다른 글
| 새로운 PIC 프로그래밍 툴 mikroPascal (0) | 2012/01/18 |
|---|---|
| PIC Progammer 제작. (0) | 2012/01/07 |
| Wiz C - PIC 프로그래밍 툴. (0) | 2011/12/11 |
| 일일 점점 커진다. (0) | 2011/12/03 |
| LED 회로 다 만들다. (0) | 2011/06/26 |
| GIMP로 인스타그램 효과 흉내내기. (0) | 2011/06/19 |
GCBASIC을 사용하다가 부족함이 느껴져서 새로운 프로그래밍툴을 찾았다.
WIZ C라는 툴인데 많은 기능이 하나로 된 통합툴. 데모 버전은 프로 버전(구입해야함)의 모든 기능을 가지고 알림창과 2000워드(14비트 명령어 단위)를 넘을 수 없는 단점이 있다. 소규모 취미용으로는 아주 적합한 듯.
처음에는 다소 많은 물음창이 뜨는데 그중에는 유니코드로 소스코드를 저장할 것인지에 대한 내용과 데모 예제를 띄울 것인가 하는 알림창이 뜬다. 유니코드로 저장해도 백업으로 ANSI코드로 병행해서 저장되니 걱정할 필요가 없다.
일단 프로세서를 정하고, 설계를 하고 F9를 누르거나 메뉴를 누르면 소스 코드들이 만들어진다. 만들어진 코드 중에 "*_User.c"의 내용을 채우면 된다. 초기화나 인터럽트 루틴 그리고 메인이 되는 사용자 루프 함수에 코딩을 하면 만들 수 있다. 발견되는 단점이 있다면 GCBASIC처럼 uS단위의 딜레이는 별도의 프로그래밍을 필요로 한다.
직관적이며 디버깅도 가능해서 맘에 꼭 드는 툴이다.
직관화된 덕분에 만들려고 했던 장치의 소프트웨어 부분을 드디어 완성. 이제 회로를 만들고 시연을 위한 프로그램을 만드는 일이 남았다.
WIZ C라는 툴인데 많은 기능이 하나로 된 통합툴. 데모 버전은 프로 버전(구입해야함)의 모든 기능을 가지고 알림창과 2000워드(14비트 명령어 단위)를 넘을 수 없는 단점이 있다. 소규모 취미용으로는 아주 적합한 듯.
처음에는 다소 많은 물음창이 뜨는데 그중에는 유니코드로 소스코드를 저장할 것인지에 대한 내용과 데모 예제를 띄울 것인가 하는 알림창이 뜬다. 유니코드로 저장해도 백업으로 ANSI코드로 병행해서 저장되니 걱정할 필요가 없다.
일단 프로세서를 정하고, 설계를 하고 F9를 누르거나 메뉴를 누르면 소스 코드들이 만들어진다. 만들어진 코드 중에 "*_User.c"의 내용을 채우면 된다. 초기화나 인터럽트 루틴 그리고 메인이 되는 사용자 루프 함수에 코딩을 하면 만들 수 있다. 발견되는 단점이 있다면 GCBASIC처럼 uS단위의 딜레이는 별도의 프로그래밍을 필요로 한다.
직관적이며 디버깅도 가능해서 맘에 꼭 드는 툴이다.
직관화된 덕분에 만들려고 했던 장치의 소프트웨어 부분을 드디어 완성. 이제 회로를 만들고 시연을 위한 프로그램을 만드는 일이 남았다.
'기타' 카테고리의 다른 글
| 새로운 PIC 프로그래밍 툴 mikroPascal (0) | 2012/01/18 |
|---|---|
| PIC Progammer 제작. (0) | 2012/01/07 |
| Wiz C - PIC 프로그래밍 툴. (0) | 2011/12/11 |
| 일일 점점 커진다. (0) | 2011/12/03 |
| LED 회로 다 만들다. (0) | 2011/06/26 |
| GIMP로 인스타그램 효과 흉내내기. (0) | 2011/06/19 |

picport.zip
Prev
Rss Feed