회원가입 ID/PW 찾기

1) 지식 창고는 본인이 작성한 콘텐츠(팁/노하우/리소스/강좌 등)을 무료 혹은 가상화폐인 납포인트를 통해 공유하는 공간입니다.
2) 본인이 작성한 콘텐츠에 대해서만 지식 창고에 등록할 수 있으며, 저작권에 위배되는 콘텐츠는 사전경고 없이 삭제될 수 있습니다.
3) 콘텐츠 구매 및 첨부파일 다운로드는 회원그룹 '연구원' 이상 가능하오니, 경험치를 쌓아 진급한 후에 이용 부탁드립니다.
4) 무료 콘텐츠의 본문은 구매절차 없이 즉시 이용할 수 있으며, 판매 납포인트가 있는 콘텐츠는 구매 후 이용할 수 있습니다.
5) 콘텐츠 판매에 따른 납포인트 수익은 지정한 비율(50%)에 따라 판매자에게 지급하며, 납포인트 수익을 통해 진급을 빨리할 수 있습니다.
6) 구매 후 평가를 하면 구매 납포인트의 20%를 돌려 드립니다.

콘텐츠 수 172
판매자 아크마 판매 납포인트 무료 평점 3.8점 / 총 9명 참여
사용할일이 있어서 도트매트릭스로 만들다가 갑자기 마이컴박스를 찍어 보고 싶더라고요.. 그래서 마이컴박스를 표시하도록 프로그램을 수정하여 올려봅니다. 모듈형태로 파는 제품이 굴러다니기에 (소스도 제조사에서 제공해주기에) 간단히 수정하여 만들어봤습니다. PCB는 기존에 다른 용도로 만든걸 좀 뜯어서 고쳐서 만들었지요.. 다판 저 아크릴 프레임 만드느라 손도 베이고 좀 힘들었지요...회로도와 소스는 이번주내에 올릴게요(워낙 간단하고 인터넷에 있는거라 필요없겠지만) SDC10188.JPGSDC10189.JPGSDC10190.JPGSDC10191.JPG

//------------------------------------------------------------------------------
//  LED MODULE TEST PROGRAM  SamKwang SMM-51616
//------------------------------------------------------------------------------
//  MPU: ATmega128-16au
//  Clock: 16Mhz
//  modified by akma @090303
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/signal.h>
#ifndef BV
#define BV(bit) (1<<(bit))
#endif
#ifndef cbi
#define cbi(reg,bit) reg &= ~(BV(bit))
#endif
#ifndef sbi
#define sbi(reg,bit) reg |= (BV(bit))
#endif
#define outp(bit,reg) reg = bit
 
#define red_on      sbi(PORTA,0)
#define red_off     cbi(PORTA,0)
#define green_on    sbi(PORTA,1)
#define green_off   cbi(PORTA,1)
#define enable_on   sbi(PORTA,2)
#define enable_off  cbi(PORTA,2)
#define latch_on    sbi(PORTA,3)
#define latch_off   cbi(PORTA,3)
#define clock_on    sbi(PORTA,4)
#define clock_off cbi(PORTA,4)
#define addr        PORTC
volatile unsigned int  addr_buf;
volatile unsigned char reset_count;
volatile unsigned char data_count;
volatile unsigned int  cursor_count;
volatile unsigned int  cursor;
void display(void);
void port_init(void);
void timer0_init(void);
unsigned int const led_red[100] =
{
   0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0380 , 0x06E0 , 0x0420
 , 0x0420 , 0x03C0 , 0x0000 , 0x0360 , 0x0340 , 0x0240 , 0x0240 , 0x07FE
 , 0x0600 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0780
 , 0x0040 , 0x00C0 , 0x0300 , 0x0620 , 0x03D0 , 0x0180 , 0x0100 , 0x07F8
 , 0x0C00 , 0x0000 , 0x00E0 , 0x01B0 , 0x0110 , 0x0110 , 0x00E0 , 0x0000
 , 0x0000 , 0x0000 , 0x3C78 , 0x7EFC , 0xFEFE , 0xFFFE , 0xFFFE , 0xFFFE
 , 0x7FFE , 0x7FFC , 0x7FFC , 0x3FF8 , 0x1FF0 , 0x1FF0 , 0x0FE0 , 0x07C0
 , 0x0380 , 0x0100 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000
};
unsigned int const led_green[100] =
{
   0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0380 , 0x06E0 , 0x0420
 , 0x0420 , 0x03C0 , 0x0000 , 0x0360 , 0x0340 , 0x0240 , 0x0240 , 0x07FE
 , 0x0600 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0780
 , 0x0040 , 0x00C0 , 0x0300 , 0x0620 , 0x03D0 , 0x0180 , 0x0100 , 0x07F8
 , 0x0C00 , 0x0000 , 0x00E0 , 0x01B0 , 0x0110 , 0x0110 , 0x00E0 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0000 , 0x0008 , 0x0008
 , 0x1C08 , 0x3718 , 0x2110 , 0x211F , 0x1E10 , 0x0010 , 0x0010 , 0x0010
 , 0x0010 , 0x0010 , 0x0010 , 0x0010 , 0x0000 , 0x0000 , 0x0000 , 0x0000
 , 0x0780 , 0x0040 , 0x00C0 , 0x0300 , 0x0620 , 0x03D0 , 0x0180 , 0x0100
 , 0x07F8 , 0x0C00 , 0x0000 , 0x02E0 , 0x0330 , 0x0220 , 0x0268 , 0x0278
 , 0x0260 , 0x0000 , 0x0000 , 0x0000
};
//----------- Timer0(8bit) Interrupt service  ----------------------------------
SIGNAL(SIG_OVERFLOW0){
  outp(0x04, TCCR0);        // CLK/64 prescale
  outp(0x06, TCNT0);        // 1msec
    cursor_count++;
    if(cursor_count>70){
      cursor_count=0;
      cursor++;
      if(cursor>84){
        cursor=0;
      }
    }
  display();
}
//-----------Port Initialize ---------------------------------------------------
void port_init(void){
  PORTA=0x00;
  DDRA=0x1f;
  PORTC=0x00;
  DDRC=0x0f;
  red_off;
  green_off;
  clock_off;
  enable_off;
  latch_on;
  addr_buf=0x0f;
  addr=addr_buf;
}
//----------- Timer0(8bit) Initialize ------------------------------------------
void timer0_init(void){
  outp(BV(TOIE0), TIMSK);   // T0 overflow interrupt Enable
  outp(0x04, TCCR0);        // CLK/64 Prescale
  outp(0x06, TCNT0);        // 1msec
}
//--------- system_Initialize routine ------------------------------------------
void system_initialize(void){
  cli();          // Global interrup Disable
  port_init();
  timer0_init();
  sei();          // Global Interrup Enable
}
//------------------------------------------------------------------------------
void display(void){
unsigned char i;
unsigned int red_buf;
unsigned int green_buf;
  enable_on;
  if(reset_count==0){
    reset_count=1;
    data_count=0;
  }
  red_buf=led_red[data_count+cursor];
  green_buf=led_green[data_count+cursor];
  for(i=0; i<16; i++){
    if(red_buf&0x8000){
      red_on;
    }
    else{
      red_off;
    }
    if(green_buf&0x8000){
      green_on;
    }
    else{
      green_off;
    }
    clock_on;
    clock_off;
    red_buf<<=1;
    green_buf<<=1;
  }
  data_count++;
  if(data_count>=16){
    data_count=0;
    reset_count=0;
  }
  latch_off;
  latch_on;
  addr_buf++;
  if(addr_buf==16){
    addr_buf=0;
  }
  addr=addr_buf;
  enable_off;
}
//--------- mian program routine -----------------------------------------------
int main(void)
{
  system_initialize();
  while(1){
  }
}
 


모르는 것이 무엇인지 스스로 정리하고 질문하는 습관을 가집시다.
무성의/광범위하거나 직접 해보지 않고 올리는 질문은 서로를 피곤하게 합니다.
질문쪽지는 사절이오니 게시판에 글을 남겨주세요. 그래야 다같이 공유할 수 있으니까요.

첨부

profile
빛나는 영혼 2009.03.30 19:05
오.... 대단하신데요.  저거 삼성 머시기 그 모듈 아닌가요? 무진장 오래된 것?? 같은데.

저놈 잔상이 생겨서 예전에 삽질했던 기억이 나네요.

아크릴 붙이시다니 저 귀찮은 작업을 ^^;;;;

멋져요!~~~~
profile
아크마 2009.03.31 01:50
ㅋㅋ 잔상이 좀 생긴거 같기도 하고...모르겠어요 그냥 굴러다니기에 인터넷에서 검색해서 대략 소스도 제공되길래...한건데.....회로구성과 소스는 그리 오래 안걸렸지만...저 아크릴 작업이...저의 손가락에 피를 보게 만들었죠...ㅋㅋ 그래도 만들고 나니 좀 뿌듯..ㅋㅋ 전에는 이런짓 한번도 안햇는데 요새 미쳤나봐요.ㅋㅋㅋ노트북에 소스가 있으니 노르북 키는데로 소스 업로드를 해야겠네요// 따라 만드실분은 없을듯 보이지만..ㅋㅋ
profile
lovedoremi 2009.04.29 16:39
그저 멋지다는 생각 밖에는 안듭니다~~~ 아크마님은 저랑 소스 작성하는 규칙이 조금 틀리신것 같아요~~~ ㅎㅎ 소스의 코드의 깔끔함~~~ 정말 멋져요! 동영상 플레이가 안되요 ㅠ.ㅠ 저 텍스트 에디터의 이름이 뭐예요? 아크마님 같은 초고수는 뭐가 틀려도 틀린거 같아요~~~ 도트 매트릭스 갖고 싶내요~~~ ㅎㅎ
profile
아크마 2009.04.30 16:26
아 저소스는 제조사에서 제공해주는 소스를 쬐금 고친거랍니다^^;;

전 고수가 아니라서요..

텍스트 에디터는 주로 컴파일러에서 제공하는 에디터나 울트라 에디터를 사용하는데  위에 올린거는 마이컴박스 홈페이지에서 제공되는 code highlite를 이용해서 올린거에요..글올릴때 extension component누르시면 소스코드 이쁘게 올릴수 있어요^^;;

좋은 하루되세요....
profile
kikimonako 2009.11.09 15:05
깔끔하게 생겼네요 ㅎㅎ
profile
월간낚시 2009.11.30 20:44
언제 쯤 아크마님 실력이 될까요? ㅡㅜ
profile
enginius 2009.12.17 10:34
저도 고덴시 ldm으로 만든적 있어요 ㅋ 저것도 삼색LED겠죠 ?
래치에 타이밍이 스펙보다 길어서 고생했던 기억이 나네요 ㅋㅋ
profile
타타두 2011.03.07 00:21

깔끔깔끔 ㅋ 사진이 좀 흔들리셧네요 ㅋ

profile
수풀새 2013.12.20 17:52
아크마님 대단합니다 훌륭하십니다!
profile
고산묵월 2013.12.26 18:33
http://www.micombox.com/files/attach/images/20510/148/087/SDC10187.avi로 접속하면 동영상 다운받을 수 있네요.
profile
수풀새 2014.01.20 15:15
아크마님 감사합니다
search
List of Articles
번호 분류 제목 평점 포인트 판매자 등록일 구매수 조회 수
공지 공공의 목적으로 공유하고자 하는 소프트웨어는 '소프트웨어 자료실'에 업로드를 요청드립니다.
공지 구매후 평점 댓글을 남겨주시면 구매포인트의 20%를 돌려드립니다.
172 ECAD 아무거나 회로부품에 Simulation Model 연결하기 무료 아크마 2018-01-06 0 189
171 ECAD 아무거나 Altium Designer V9 datasheet 무료 아크마 2018-01-06 0 132
170 ECAD 아무거나 Altium을 활용한 PCB CAD 툴의 운용 방법 무료 아크마 2018-01-06 0 163
169 ECAD 아무거나 Altium Xspice 한글 매뉴얼 무료 아크마 2018-01-06 0 226
168 ECAD 아무거나 XSpice Simulation Model 생성관련 자료 무료 아크마 2018-01-06 0 86
167 ECAD 아무거나 해외 아트워크 무료 공공 2017-04-21 0 226
166 ECAD 아무거나 PCB 설계시 규격관련 참조자료입니다. [4] 무료 선녀와남후꾼 2016-06-16 0 381
165 ECAD 아무거나 Artwork [1] 무료 YEJUN 2017-02-10 0 126
164 ECAD 아무거나 FR 4 사이즈 1100X500 사이즈 [1] 무료 초구의마술사 2015-10-23 0 220
163 ECAD 아무거나 altium에서 orcad16.5 회로도 가져오기 [4] 무료 바람이 2014-06-01 0 3347
162 ECAD 아무거나 window8.1설치 [4] 무료 바람이 2014-04-07 0 4110
161 ECAD 아무거나 altium 배우기 4일 [6] 무료 바람이 2014-01-26 0 16767
160 ECAD 아무거나 PCB 제조공정 [14] 무료 시나브로69 2012-05-31 0 4179
159 ECAD 아무거나 그림으로 보는 PCB 제조공정 [11] 무료 시나브로69 2012-05-31 0 4228
158 ECAD 아무거나 PADS Helper [3] 무료 kumjin75 2012-04-17 0 4196
157 ECAD 아무거나 회로도 그릴때 DxDesigner 가 앞으로 추세인지요? 무료 파도^^; 2011-05-27 0 4646
156 ECAD 아무거나 Via Current Calculator V2.0 [5] 무료 아크마 2011-04-20 0 4344
155 ECAD 아무거나 display colors setup [1] 무료 SOUL 2011-03-22 0 4167
154 ECAD 아무거나 PCB 라인/PAD 및 VIA의 Capacitance & Inductance 계산-엑셀 [7] 무료 bbkbbk 2011-03-11 0 7590
153 ECAD 아무거나 pcb 임피던스 매칭 관련 [2] 무료 soso79 2011-02-17 0 12537
  • 한 친구를 얻는데는 오래 걸리지만 잃는데는 잠시이다.
    - 릴리
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.