질문게시판 > 모터 과전류 감지에 대해서

TODAY380 TOTAL2,175,688
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | 모터 과전류 감지에 대해서

페이지 정보

작성자 방구석MCU 작성일2020-11-24 21:53 조회40,540회 댓글15건

본문

	

안녕하세요 마스터님 

마스터님이 주신 조언대로 키제어 루틴을 짜보니까 확실하게 동작되었습니다. 감사합니다!

하나더 질문할게 있는데, H브릿지회로에서 전류가 흘러나가는 쪽에 1옴/3W저항을 이용하여 전류를 센싱하고 있었습니다. 

보통 돌아가고 있는 모터를 억지로 멈추면 과전류가 흐르기 마련인데, 전류값이 증가하지를 않습니다.. ADC0핀을 이용해서 센싱하고 있는데,

코드를 어떻게 수정해야 할지 전혀 모르겠습니다. 혹시 조언부탁드려도 될까요? 전류센싱하는 회로와 코드는 아래에 첨부하였습니다. 코드가 너무

긴거 같아서 다른 루틴은 가리고 전류센싱루틴과 메인 루틴만 보여드리겠습니다. 긴글 읽어주셔서 감사합니다

 

 

#include <io.h>

#include <mega128.h>

#include <stdio.h>

#include <delay.h>          

#include "mydef_ver3.h"      

#include "lcd.h"

 

u08 sec;

u08 time_count;

bit time_flag;        

u16 tmp_buf[10];

u08 lcd_mode;

u08 pwm;

u08 a,b,c;

u08 startflag = 0 ;

u08 cwflag = 0 ;

u08 upflag = 0 ;

u08 downflag = 0 ;

u08 startflag1 = 0;

u08 cwflag1 = 0;

u08 upflag1 = 0;

u08 downflag1 = 0;

u08 q = 2 ;

u08 stop = 3;

u08 cw = 0;

u08 cw1 = 0;

u08 temp = 0;

u08 connect1 = 0;

bit over;

 

u08 str_motor[] = "MOTOR CO";

u08 str_connect[] = "CONNECT";

u08 str_load[] = "LOAD!";

u08 str_name[] = "NTROLLER";

u08 str_start[] = "TART]";

u08 str_welcome[] = "WELCOME:";

u08 str_title1[] = "DESIGNED";

u08 str_title2[] = " BY KYT";                      

u08 str_stop1[] = "------ST";                   

u08 str_stop2[] = "OP------";

u08 str_press[] = "PRESS [S";

u08 str_second[] = "SECOND: ";

u08 str_pwm[] = "PWM ";

u08 str_duty[] = "DUTY";

 

u08 str_blank[] = "       ";

u08 str_cw[] = "CW";

u08 str_ccw[] = "CCW";

unsigned char direction='x'; 

volatile unsigned char Hall;

volatile unsigned char connect;

volatile unsigned int count;

volatile unsigned int i = 0;

 

 

void lcd(u08 a1);        

void step(void);

void keypress();

void beep(void);

void pwm_upcotrol();

void pwm_downcontrol();

void ADCONVERT(void);

void pwm1_control(u08 x);

 

 

u08 BCD_TO_ASC(u08 a)

{

 switch(a)

 {

  case 0: return '0';break;

  case 1: return '1';break;

  case 2: return '2';break;

  case 3: return '3';break;

  case 4: return '4';break;

  case 5: return '5';break;  

  case 6: return '6';break;

  case 7: return '7';break;

  case 8: return '8';break;

  case 9: return '9';break;

  case 10: return 'A';break;

  case 11: return 'B';break;

  case 12: return 'C';break;

  case 13: return 'D';break;

  case 14: return 'E';break;

  case 15: return 'F';break;                   

 }

  

 

void lcd(u08 a1)

{

u08 old_key = 0;

u08 new_key;

u08 l,m,n,o,p;

float vval;

u08 ival, buf;

unsigned char N100, N10, N1;

s16 duty_ratio;   

new_key = KEY_IN & KEY_MASK; 

 

 vval = (float)a1 * 5.0 / 255.0; //1옴 저항에 걸리는 전압을 측정하여 전류 계산

 ival = (int)(vval*100.0+0.5);

 

 N100 = ival/100;

 buf =  ival%100;

 

 N10 = buf/10;

 N1 = buf%10;

         

          if(new_key!=old_key)         

          {         

          if(new_key == START) 

          {

          if(startflag1 == 0) 

          {

          startflag1 = 1; 

          

           if(pwm == 0 || direction == 'x')

          {

           q = 0;

          }

          

          else if(direction == '+' || direction == '-')

          {

           q = 1;

          } 

          } 

          } else startflag1 = 0; 

            

          

          if(new_key == CW)   // CW/CCW        

          {

          if(cwflag == 0)

          {  

          cwflag = 1; 

          

          if(direction == '+' && direction != 'x')

          { 

           cw = 1;

           cw1 = 1; 

           temp = pwm;

          } 

           

          else if(direction == '-' && direction != 'x')

          { 

           cw = 2;

           cw1 = 2; 

           temp = pwm;

          }    

          } 

          } else cwflag = 0;

          

          if( cw == 1 )

          { 

          if( cw1 == 1 ) 

          {

          pwm = pwm - 25;

          OCR1AL = pwm;

          OCR1BL = pwm;

          OCR1CL = pwm;

          }

          

          if (pwm == 0)

          {

           cw1 = 3;

           direction = '-';

          }

          

          if (cw1 == 3)

          {  

          pwm = pwm + 25;

          OCR1AL = pwm;

          OCR1BL = pwm;

          OCR1CL = pwm;

          

          if( temp == pwm )

          {

          cw1 = 0;

          cw = 0;

          } 

          }       

          }

            

         else if(cw == 2)

          {

          

          if(cw1 == 2) 

          {

          pwm = pwm - 25;

          OCR1AL = pwm;

          OCR1BL = pwm;

          OCR1CL = pwm;

          }

          

          if (pwm == 0)

          {

           cw1 = 4;

           direction = '+';

          }

          

          if (cw1 == 4)

          { 

          pwm = pwm + 25;

          OCR1AL = pwm;

          OCR1BL = pwm;

          OCR1CL = pwm;

          

          if( temp == pwm)

          {

          cw1 = 0;

          cw = 0;

          }   

          }

          }

          

           if( q == 1 )

          {

          lcd_home();    

          lcd_clear();

          duty_ratio = pwm*0.39;           //100/255

          o = 0x30+ duty_ratio/10;

          p = 0x30+ duty_ratio%10;

          lcd_control_write(0x80);            

          lcd_data_write(o);

          lcd_data_write(p);    

          lcd_control_write(0x82);            

          lcd_print_data("%",1); 

          lcd_control_write(0xC3);

          lcd_data_write(0x30+N100);

          lcd_data_write(0x30+N10);

          lcd_data_write(0x30+N1); 

          lcd_control_write(0xC6);

          lcd_print_data("mA",2);

          }      

          

           else if( q == 0 )

          {  

           lcd_home();    

           lcd_clear();

           lcd_control_write(0x80); 

           lcd_print_data(str_stop1,8); 

           lcd_control_write(0xC0);

           lcd_print_data(str_stop2,8);                  

          }

         

          if(direction == '+')

          { 

           lcd_control_write(0x86);

           lcd_print_data("CW",2); 

          } 

           

          else if(direction == '-')

          {   

           lcd_control_write(0x85);

           lcd_print_data("CCW",3); 

          }  

         }    

        old_key = new_key;                                                         

}      

 

 

#define ADC_VREF_TYPE 0x20           //AD0 INPUT

unsigned char read_adc(unsigned char adc_input)

{

ADMUX = 0xA0;

//   adc_input | (ADC_VREF_TYPE & 0xff);

// Delay needed for the stabilization of the ADC input voltage

delay_us(150);

// Start the AD conversion

ADCSRA|=0x40;

// Wait for the AD conversion to complete

while ((ADCSRA & 0x10)==0);

ADCSRA|=0x10;

return ADCH;

}

 

void ADCONVERT(void)

{

 a = read_adc(0);

 lcd(a);    

}

 

// Timer 0 overflow interrupt service routine

interrupt [TIM0_OVF] void timer0_ovf_isr(void)

{

// Reinitialize Timer 0 value

   TCNT0=0x28;

// Place your code here  

    if(count == 1)

    {   

    keypress();

    count = 0;  

    } else count = count + 1;  

    

    if(i == 5)

    {

     ADCONVERT();

     error();

     i = 0;

    } else i = i + 1;

}

 

 

void main(void)

{// Declare your local variables here

u08 i;

u08 a,b,c;

 

    DDRA = 0x00;

    PORTA = 0x00;       //LCD DATA PORT

 

    DDRB = 0xF0;        //INPUT & OUTPUT MODE

    PORTB = 0xEF;

    delay_ms(3);        // 상단 커패시터 충전

    PORTB = 0x0F;

    

    DDRC = 0xF0;

    PORTC =0x0F;       //BCD KEY INPUT AND LCD CONTROL PORT    

    

    DDRD= 0x07;

    PORTD=0x00;        //Hole sensor & Low input

    

    DDRE = 0x00;

    PORTE =0x00 | (0x03 << 6);

    

    DDRF = 0x00;

    PORTF = 0x00;       //CURRENT SENSING

    

    DDRG = 0xFF;

    PORTG = 0x00;      //BUZZER AND RELAY CONTROL PORT 

     

 

// Timer/Counter 0 initialization

// Clock source: System Clock

// Clock value: 10.800 kHz

// Mode: Normal top=0xFF

// OC0 output: Disconnected

// Timer Period: 20 ms

ASSR=0<<AS0;

TCCR0=(0<<WGM00) | (0<<COM01) | (0<<COM00) | (0<<WGM01) | (1<<CS02) | (1<<CS01) | (1<<CS00);

TCNT0=0x28;

OCR0=0x00;

 

// Timer/Counter 1 initialization

// Clock source: System Clock

// Clock value: 43.200 kHz

// Mode: Ph. correct PWM top=0x00FF

// OC1A output: Non-Inverted PWM

// OC1B output: Non-Inverted PWM

// OC1C output: Non-Inverted PWM

// Noise Canceler: Off

// Input Capture on Falling Edge

// Timer Period: 11.806 ms

// Output Pulse(s):

// OC1A Period: 11.806 ms Width: 0.97222 ms

// OC1B Period: 11.806 ms Width: 0.97222 ms

// OC1C Period: 11.806 ms Width: 0.97222 ms

// Timer1 Overflow Interrupt: Off

// Input Capture Interrupt: Off

// Compare A Match Interrupt: Off

// Compare B Match Interrupt: Off

// Compare C Match Interrupt: Off

TCCR1A=(1<<COM1A1) | (0<<COM1A0) | (1<<COM1B1) | (0<<COM1B0) | (1<<COM1C1) | (0<<COM1C0) | (0<<WGM11) | (1<<WGM10);

TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (1<<CS12) | (0<<CS11) | (0<<CS10);

TCNT1H=0x00;

TCNT1L=0x00;

ICR1H=0x00;

ICR1L=0x00;

 

OCR1AH=0x00;

OCR1AL=0x15; // PWM 1

 

OCR1BH=0x00;

OCR1BL=0x15; // PWM 2

 

OCR1CH=0x00;

OCR1CL=0x15; // PWM 3

 

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=(0<<OCIE2) | (0<<TOIE2) | (0<<TICIE1) | (0<<OCIE1A) | (0<<OCIE1B) | (0<<TOIE1) | (0<<OCIE0) | (1<<TOIE0);

ETIMSK=(0<<TICIE3) | (0<<OCIE3A) | (0<<OCIE3B) | (0<<TOIE3) | (0<<OCIE3C) | (0<<OCIE1C);

 

EICRA=(0<<ISC31) | (0<<ISC30) | (0<<ISC21) | (0<<ISC20) | (0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00);

EICRB=(0<<ISC71) | (0<<ISC70) | (0<<ISC61) | (0<<ISC60) | (0<<ISC51) | (0<<ISC50) | (0<<ISC41) | (0<<ISC40);

EIMSK=(0<<INT7) | (0<<INT6) | (0<<INT5) | (0<<INT4) | (0<<INT3) | (0<<INT2) | (0<<INT1) | (0<<INT0);

 

// USART0 initialization

// USART0 disabled

UCSR0B=(0<<RXCIE0) | (0<<TXCIE0) | (0<<UDRIE0) | (0<<RXEN0) | (0<<TXEN0) | (0<<UCSZ02) | (0<<RXB80) | (0<<TXB80);

 

// USART1 initialization

// USART1 disabled

UCSR1B=(0<<RXCIE1) | (0<<TXCIE1) | (0<<UDRIE1) | (0<<RXEN1) | (0<<TXEN1) | (0<<UCSZ12) | (0<<RXB81) | (0<<TXB81);

 

// Analog Comparator initialization

// Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off

    ACSR=0x80;

    SFIOR=0x00;

    

// ADC initialization

// ADC Clock frequency: 86.400 kHz

// ADC Voltage Reference: AREF pin

    ADMUX = 0xA0;

    //ADC_VREF_TYPE & 0xff;

    ADCSRA = 0x87;

 

    lcd_mode = 1;

    

    lcd_init();

    lcd_clear();

    lcd_home();

 

    lcd_control_write(0x80);

    lcd_print_data(str_motor,8);

    lcd_control_write(0xC0);        

    lcd_print_data(str_name,8);    

        

    delay_ms(2000);

 

    lcd_home();    

    lcd_clear();

 

    lcd_control_write(0x80);

    lcd_print_data(str_title1,8);    

       

    lcd_control_write(0xC0);        

    lcd_print_data(str_title2,7);    

        

    delay_ms(2000);

 

    lcd_home();    

    lcd_clear();  

     

    lcd_control_write(0x80);            

    lcd_print_data(str_press,8);

    

    lcd_control_write(0xC0);            

    lcd_print_data(str_start,5);      

         

 

//*********************** SECTION m8 *******************         

     #asm("sei")

//*********************** SECTION m9 ********************

 

    BUZ_RLY = 0x00;

  

//*********************** SECTION m10 ********************    

    while (1)

    {   

    keypress();     

    if(i == 5)

    {

     ADCONVERT();

     error();

     i = 0;

    }

    }  

}

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 15

조회수 40,540

master님의 댓글

master 작성일

ADMUX = 0xA0;
mcu가 128 아닌가요?
128 경우 위 설정을 하면 안될텐데요?
어째서 0xA0로 설정했는지 상세하게 설명해보세요

방구석MCU님의 댓글

방구석MCU 댓글의 댓글 작성일

답변 감사드립니다. MEGA128 맞습니다.
0xA0으로 설정한 이유는 ADC가 있는 포트 중에서 ADC0에만 전류 감지회로를 연결해서 AD0 단극성 입력으로 한게 첫번째 이유고, A는 처음에는 0x20으로 하였다가 기준전압없이 그냥 하게 되는지 확인하려고 A로 하였습니다. 근데 0x20이나 0xA0 둘 다 안되서 헤매고 있었습니다.

master님의 댓글

master 댓글의 댓글 작성일

기준전압이 없이 하려면 0x00을 설정하면 됩니다만
AVref핀에는 기준전압이 연결되어야 합니다.
데이터시트를 보셨는지 모르겠지만 0xA0 중 레퍼런스 설정인 10은 사용하지 말라는 설정입니다.

방구석MCU님의 댓글

방구석MCU 댓글의 댓글 작성일

조언 감사드립니다. 하나 더 질문할게 제가 12V, 0.83A, 3상 모터를 돌릴때, 1옴에 걸리는 전압을 이용해서 모터의 전류치를 알려고 합니다. 보통 모터가 돌아가는 도중 억지로 멈추려고 하면 과전류가 흐르기 마련인데 전류가 크게 증가하지 않고 변화가 없습니다. 혹시 3상 모터에 흐르는 전류치를 계산하기 위해서 필요한 공식 같은 것이 있나요??

master님의 댓글

master 댓글의 댓글 작성일

전류가 증가하지 않는다는 것은 어떻게 확인했는지 기술해보세요

방구석MCU님의 댓글

방구석MCU 댓글의 댓글 작성일

빠른 답변 감사드립니다. 사실 bl4252 1262를 이용해 모터 제어기를 만들고 있는데, 1옴에 걸리는 전압을 기준으로 전류치를 측정하여 lcd에 표시하는 것입니다. 먼저 성공하신 분들이 많아, 앞서 언급한 모터를 이용해 완성해 놓으신 것을 보면, 모터가 돌아가는 도중에 손으로 모터를 잡아서 멈추려고 하면 LCD에 표시되는 전류가 1.5배에서 그 이상으로 증가하는 것을 볼 수 있습니다. 그것도 전류가 최고 속도에서 200mA정도 범위내에서 감지가 되고 억지로 멈추려고 했을때 300mA정도가 LCD에 표시가 됩니다. 근데 제가  위에 코드를 기준으로 만든것은 전류가 2A 가까이 나오고, 모터를 손으로 잡아 멈추어 보아도, 전류가 크게 변화가 없습니다. 그래서 모터에 흐르는 전류를 계산할 때 특별한 무언가가 있는것인지 궁금해서 질문드렸습니다.

master님의 댓글

master 작성일

전압을 테스터기로 측정했나요?
아니면 ADC로 측정했나요?
엉터리 설정의 ADC로 측정해서는 안된다는 말씀을 먼저 드리죠

방구석MCU님의 댓글

방구석MCU 댓글의 댓글 작성일

네 저도 처음에 ADC가 잘못된줄알고 코드를 수정하고, 1옴저항을 테스터기로 측정해보니까 adc에서 측정한것과 일치하였습니다... 원래대로면 0.83V 내외로 나와야하는데 어떻게 해야할지 도저히 감이잡히지 않습니다.. 제어코드의 오류인지, 주파수가 너무 높은것인지..

master님의 댓글

master 댓글의 댓글 작성일

ADC 사용하지말고 테스터기로 과전류 측정이 되고 있는지를 먼저 체크하세요

방구석MCU님의 댓글

방구석MCU 댓글의 댓글 작성일

테스터기로 측정하였을 떄도 똑같습니다. 앞에서 말을 애매하게 한것 같네요. 1옴에 걸리는 전압을 통해 전류값을 바로
계산할 수 있기때문에 테스터기로 1옴 양단에 걸리는 전압을 측정하였을 때, 최고 속도 기준 2V가까이 측정이 되었습니다. 이 말인즉슨, 전류가 2A라는 것이죠. 근데 문제는 모터가 돌아가는 도중 손으로 잡아서 억지로 멈주려고 해보아도 1옴 양단에 걸리는 전압이 올라가는 것이 아니라 오히려 떨어지는 것입니다. 제 개인적인 생각으로는 제어 코드가 잘못된거 같은데, 모터에 흐르는 전류를 측정하는 코드나 모터 과전류 감지 코드를 어떻게 짜야할지 도저히 모르겠습니다.  모터 전류 감지 코드 같은게 있을까요??

master님의 댓글

master 작성일

모터가 돌아가는 도중 손으로 잡아서 억지로 멈추려고 해도 테스터로 측정 했을 때 전압이 떨어진다는 것이죠?
얼마나 떨어지든가요?
실험 내용을 상세히 적지 않으면 스므고개를 하게되고 서로 시간낭비를 하게 됩니다.
만약 테스터기로 전압이 떨어진다면 모터 또는 모터 전압측정 회로 문제일 뿐 프로그램과는 상관없습니다.
회전하는 모터를 손으로 어떻게 잡는다는 것일까요?
처음부터 돌지 못하도록 공구를 사용해서 단단히 고정한 후에 회전시킨 것일까요? (가장 전류가 많이 흐릅니다.)
회전하는 모터를 손으로 잡는 것은 위험하므로 하지 않아야하며 손으로 조금 건드린다고 해서 모터에 부하로 작용할지는 의문입니다.

방구석MCU님의 댓글

방구석MCU 댓글의 댓글 작성일

https://www.youtube.com/watch?v=JcCiVa3zuMQ&t=13s
일단 제가 만들고자 하는 것이 어떤것인 가 링크 첨부하겠습니다. 중간에 모터를 손으로 잡아서 과전류가 흐르게 하는것이 어떤것인가 나옵니다.

master님의 댓글

master 댓글의 댓글 작성일

테스터기로 측정해서 손으로 잡았을 때 과전류 검출이 안된다면 회로 구성에 문제가 있는 것입니다.

방구석MCU님의 댓글

방구석MCU 댓글의 댓글 작성일

회로구성이, 특히나 저기 1옴단자 연결된쪽은 유튜브에 나온 모터제어기랑 똑같이 연결되어있는데, 제어코드 쪽 은 문제가 없는건가요??

master님의 댓글

master 댓글의 댓글 작성일

인터럽트와 메인함수에 같은 코드가 적혀있군요
메인함수의 무한루프 코드를 삭제하세요

interrupt [TIM0_OVF] void timer0_ovf_isr(void){
  TCNT0=0x28;
    if(++count>1){ count=0; keypress(); }
    if(++i>=5){ i=0; ADCONVERT(); error(); }
}

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은 질문게시판에서만 작성 가능합니다. 스태프 19-01-15 9698
공지 사이트 이용 안내댓글[24] master 17-10-29 29853
질문 esp32를 이용한 피에조부저댓글[1] 이미지새글 ejdog 22-05-27 13
질문 아두이노 서보모터 무한회전 문제 해결을 어떻게 해야할까요 새글 GinGer 22-05-27 16
답변 답변글 답변 : 아두이노 서보모터 무한회전 문제 해결을 어떻게 해야할까요 새글 master 22-05-27 17
질문 모터 엔코더 제어 질문드립니다. 새글 oreoreo 22-05-27 19
답변 답변글 답변 : 모터 엔코더 제어 질문드립니다. 새글 master 22-05-27 14
질문 아두이노 RF무선통신 관련 질문입니다.댓글[2] 새글 메론맛드링크 22-05-27 19
질문 아두이노 속도측정, 속도를 LCD에 표시, 가까워지면 부저 새글 wgtjdwls 22-05-27 20
답변 답변글 답변 : 아두이노 속도측정, 속도를 LCD에 표시, 가까워지면 부저 새글 master 22-05-27 17
질문 블루투스 관련 코드 도와주세요 새글 scape 22-05-27 19
답변 답변글 답변 : 블루투스 관련 코드 도와주세요 새글 master 22-05-27 16
질문 ATmega128 1602A LCD 출력 질문입니다.댓글[2] 새글 444222a 22-05-27 34
질문 ATmega128 스위치 채터링 관련 질문드립니다댓글[3] 새글 yeon 22-05-27 37
질문 마이크로칩 스튜디오 코드 해석 새글 최선을다하자 22-05-27 21
답변 답변글 답변 : 마이크로칩 스튜디오 코드 해석 새글 master 22-05-27 18
질문 적외선 거리 센서로 블루투스 알람 설정 코딩...댓글[1] 새글 ededed 22-05-26 22
질문 아두이노 api 질문댓글[1] 새글첨부파일 리니어 22-05-26 21
질문 atmega128 키패드 입력 오류에 대하여 질문 있습니다.댓글[2] 새글 마프하나 22-05-26 50
질문 초음파센싱을 통한 리니어벨트 (스텝모터사용) 조건문댓글[1] 새글 아두이노대학 22-05-26 31
질문 아트메가128/ srf05 초음파센서를 이용한 타이머 인터럽트 질문입니다 새글 아트메가넘어려워 22-05-26 31
답변 답변글 답변 : 아트메가128/ srf05 초음파센서를 이용한 타이머 인터럽트 질문입니다 새글 master 22-05-26 31
질문 atmega128에서 스위치1개는LED, 스위치 1개는 세그먼트의 동작하게 하려는데.. aasdw 22-05-26 59
답변 답변글 답변 : atmega128에서 스위치1개는LED, 스위치 1개는 세그먼트의 동작하게 하려는데..댓글[1] 새글 master 22-05-26 34
질문 Atmega128 블루투스 오류 질문 yhj2644 22-05-26 58
답변 답변글 답변 : Atmega128 블루투스 오류 질문 새글 master 22-05-26 33
질문 아두이노 간단한 프로그램 행복지수업 22-05-25 49
답변 답변글 답변 : 아두이노 간단한 프로그램 새글 master 22-05-26 31
질문 atmega128 타이머 작성시 키패트 입력으로 인터럽트 사용에 대하여 질문이 있습니다.댓글[1] 이미지 마프하나 22-05-25 92
질문 로드셀 무게 센서 질문드립니다.댓글[2] 제비고기 22-05-25 58
게시물 검색

2022년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2021년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2020
모바일버전으로보기