Search
অ্যাক্সেস কন্ট্রোল ডিভাইস
by : A.R | September 22, 2017 | 3 comments Skill Level: Advanced
Summary:
মাইক্রোকন্ট্রোলারভিত্তিক একটি ভার্সেটাইল অ্যাক্সেস কন্ট্রোল ডিভাইস তৈরী।

শিক্ষা প্রতিষ্ঠান এবং অফিস আদালতগুলোতে এখন অ্যাক্সেস কন্ট্রোল ডিভাইস হরহামেশাই দেখা যায়। অ্যাক্সেস কন্ট্রোল ডিভাইস ব্যবহার করলে  কোনোপ্রকার তালা-চাবি কিংবা সিকিউরিটি গার্ড ছাড়াই প্রতিষ্ঠানের নিরাপত্তা নিশ্চিত করা সম্ভব হয়। এই টিউটোরিয়ালে আমরা একটি অ্যাক্সেস কন্ট্রোল ডিভাইস তৈরী করব।


প্রয়োজনীয় যন্ত্রপাতিঃ

১)ATMEGA16-1

২)SIM900A kit-1

৩)4X4 Keypad Matrix (Small)-1

৪)HC-SR501 PIR Sensor Module-1

৫)Female to female jumpers-17

৬)Male to female jumpers-1

৭)LCD Display 16X2 with Header-1

৮)12V Door Lock Driver-1

৯)DC 12V Solenoid Electric Door Lock-1

১০)DC socket breakout board-1 

১১)12V 2A Power Adapter-1

১২)এবং প্রোগ্রামিং আর সার্কিট সেটআপের জন্য AVR Trainer Kit। আপনারা চাইলে অন্য প্রোগ্রামার ব্যবহার করে ব্রেডবোর্ডেও সার্কিট বসাতে পারেন। 

 

কার্যপ্রনালীঃ

১)ডিভাইসের সামনে কেউ আসলে পিআইআর সেন্সর তার উপস্থিতি সনাক্ত করবে।

২)উপস্থিত ব্যক্তির কাছে ডোরলকের পাসওয়ার্ড চেয়ে এলসিডিতে  মেসেজ উঠবে।

৩)সঠিক পাসওয়ার্ড অর্থ্যাত 123456  চাপলে   দরজা খুলবে। সাথে সাথে একটি পূর্বনির্ধারিত মোবাইল নাম্বারে একটি এসএমএসে জানানো হবে যে দরজা খুলে গেছে। 

৪)ভুল পাসওয়ার্ড দিলে আবারও পাসওয়ার্ড চাওয়া হবে।

 

সার্কিট কানেকশনঃ

১)প্রথমে এভিআর ট্রেইনার কিটের সাথে পিআইআর মোশন সেন্সরকে যুক্ত করি। পিআইআর মোশন সেন্সরের পিনআউট এবং কার্যপ্রনালী আমরা্  ইতোমধ্যে এই টিউটোরিয়ালে দেখেছি।মাইক্রোকন্ট্রোলার তথা এভিআর ট্রেনার কিটের সাথে এর কানেকশন হবে নিম্নরুপঃ

চিত্রঃপিআইআর মোশন সেন্সরের পাওয়ার পিনের সাথে এভিআর ট্রেনার কিটের পাওয়ার পিনের কানেকশন

 

চিত্রঃ মোশন সেন্সরের আউটপুট পিনের সাথে AVR trainer kit এর PA0 পিনের কানেকশন।


PIR motion sensor

Microcontroller

VCC

VCC

GND

GND

OUT

PA0

  

 

২) জিএসএম মডেম সম্পর্কে না জেনে থাকলে এই টিউটোরিয়ালটি তার আগের অংশ  অবশ্যই পড়বেন।  মাইক্রোকন্ট্রোলার তথা এভিআর ট্রেনার কিটের সাথে  SIM900A'র এর কানেকশন হবে নিম্নরুপঃ

 

চিত্রঃ SIM900 kit এর পাওয়ার পিনের সাথে AVR trainer kit এর পাওয়ার পিনের কানেকশন।

 


চিত্রঃ SIM900 kit এর Tx ও Rx পিনের সাথে AVR trainer kit এর Rx ও Tx  পিনের কানেকশন।


SIM900A

Microcontroller

VCC

VCC

GND

GND

Tx

Rx

Rx

Tx

 

৩)এবার মাইক্রোকন্ট্রোলারের সাথে কি প্যাডের কানেকশন সম্পন্ন করি। মাইক্রোকন্ট্রোলারের সাথে কি-প্যাডের কানেকশন হবে নিম্নরুপঃ

 

 

Keypad

Micrcontroller

C1

PB4

C2

PB5

C3

PB6

C4

PB7

R1

PB0

R2

PB1

R3

PB2

R4

PB3

৪)এভিআর ট্রেনার কিটের এলসিডি কানেকটরে এলসিডি বসাই।

 

 

৫)ডোরলকটিকে ড্রাইভারের সাথে কানেক্ট করি।

 

৬)এবার ডোরলক  ড্রাইভারের সাথে মাইক্রোকন্ট্রোলারের কানেকশন দিই।


Microcontroller

Door lock driver

GND

GND

PC0

Sig

 

 

 

৭)ডোরলক ড্রাইভারের 12V পিনে ১২ ভোল্ট অ্যাডাপটারের মাধ্যমে পাওয়ার সাপ্লাই দেওয়া হয়েছে।


 

 

এই কাজটির জন্য আমরা ব্যবহার করেছি একটি ব্রেডবোর্ড এবং ডিসি সকেট ব্রেকআউট বোর্ড। 

ডোরলক ড্রাইভার এবং ট্রেনার কিটের গ্রাউন্ড অবশ্যই শর্ট করতে হবে।

 

 

৮)AVR Trainer kit কে কম্পিউটারের সাথে কানেক্ট করে কোড আপলোড করি।



আমাদের পুরো সেট আপটি দেখতে ছিল এইরকম।


 

কোডঃনিচের কোডটি লিখতে ব্যবহার করা হয়েছে Mikro C pro for AVR. কোডটি মাইক্রোসিতে লিখে কম্পাইল করুন। তারপর বিল্ড করে মাইক্রোকন্ট্রোলারে আপলোড করুন।

  • // LCD module connections
  • sbit LCD_RS at PORTD4_bit; // connect the RS pin of LCD to PD4
  • sbit LCD_EN at PORTD6_bit; // connect the EN pin of LCD to PD6
  • sbit LCD_D4 at PORTC4_bit; // connect the D4 pin of LCD to PC4
  • sbit LCD_D5 at PORTC5_bit; // connect the D5 pin of LCD to PC5
  • sbit LCD_D6 at PORTC6_bit; // connect the D6 pin of LCD to PC6
  • sbit LCD_D7 at PORTC7_bit; // connect the D7 pin of LCD to PC7
  • sbit LCD_RS_Direction at DDD4_bit;
  • sbit LCD_EN_Direction at DDD6_bit;
  • sbit LCD_D4_Direction at DDC4_bit;
  • sbit LCD_D5_Direction at DDC5_bit;
  • sbit LCD_D6_Direction at DDC6_bit;
  • sbit LCD_D7_Direction at DDC7_bit;
  • // End LCD module connections
  • char txt[6], password[6]={'1','2','3','4','5','6'};//txt=password given by user, password=password set by the manufacturer
  • int count=0;
  • int i=0;
  • void sms();
  • void keypad ()
  • {
  • DDA0_bit=0; //Motion sensor attached to PA0
  • DDRB=0xF0; // 4 MSB for output(columns) 4 LSB for input(rows);
  • PORTB=0x0F; //enable internal pullups for PB0-PB3
  • DDC0_bit=1; //Doorlock attached to PC0
  • Lcd_Init(); // Initialize LCD
  • Lcd_Cmd(_LCD_CLEAR); // Clear display
  • Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
  • Lcd_Out(1, 1, "Enter password");
  • while (1) //loop key check forever
  • {
  • Delay_ms(100);
  • if(count>=6)
  • {
  • if(password[0]==txt[0]&& password[1]==txt[1]&&password[2]==txt[2]&&password[3]==txt[3]&& password[4]==txt[4]&&password[5]==txt[5])
  • {
  • PORTC0_bit=1; //Doorlock opens
  • Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
  • Lcd_out(1,1, "Welcome!");
  • sms();
  • Delay_ms(1000);
  • Lcd_cmd(_LCD_CLEAR);
  • for(i=0;i<=10;i++) //wait for 10 seconds
  • {
  • Delay_ms(1000);
  • count=0;
  • Lcd_cmd(_LCD_CLEAR);
  • PORTC0_bit=0; //Lock closed
  • }
  • break;
  • }
  • else
  • {
  • Lcd_cmd(_LCD_CLEAR);
  • Lcd_out(1,1, "Wrong password!");
  • Lcd_out(2,1, "Please try again");
  • Delay_ms(2000);
  • count=0;
  • Lcd_Cmd(_LCD_CLEAR); // Clear display
  • Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
  • Lcd_Out(1, 1, "Enter password");
  • Delay_ms(1000);
  • }
  • }
  • //first column
  • PORTB = 0xEF;
  • Delay_ms(10);
  • if (PINB0_bit == 0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='1';
  • while(PINB0_bit == 0);
  • }
  • else if (PINB1_bit == 0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='4';
  • while(PINB1_bit == 0);
  • }
  • else if (PINB2_bit == 0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • Count++;
  • txt[count-1]='7';
  • while(PINB2_bit == 0);
  • }
  • else if (PINB3_bit == 0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • count=0;
  • PORTC0_bit=0;
  • Lcd_Out(1, 1, "Enter password");
  • while(PINB3_bit == 0);
  • //break;
  • }
  • //second column
  • PORTB = 0xDF;
  • Delay_ms(10);
  • if (PINB0_bit == 0)
  • { if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='2';
  • while(PINB0_bit == 0);
  • }
  • else if (PINB1_bit == 0)
  • { if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='5';
  • while(PINB1_bit == 0);
  • }
  • else if (PINB2_bit == 0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='8';
  • while(PINB2_bit == 0);
  • }
  • else if (PINB3_bit == 0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='0';
  • while(PINB3_bit == 0);
  • }
  • //third column
  • PORTB = 0xBF;
  • Delay_ms(10);
  • if (PINB0_bit == 0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='3';
  • while(PINB0_bit == 0);
  • }
  • else if (!(PINB & 0x02))
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='6';
  • while(!(PINB & 0x02));
  • }
  • else if (!(PINB & 0x04))
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='9';
  • while(!(PINB & 0x04));
  • }
  • else if(PINB3_bit==0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='#';
  • while(PINB3_bit == 0);
  • }
  • //fourth column
  • PORTB = 0x7F;
  • Delay_ms(10);
  • if (PINB0_bit==0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='%';
  • while(PINB0_bit==0);
  • }
  • else if (PINB1_bit==0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='*';
  • while(PINB1_bit==0);
  • }
  • else if (PINB2_bit==0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='-';
  • while(PINB2_bit==0);
  • }
  • else if (PINB3_bit==0)
  • {
  • if(count==0)
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • Lcd_Chr_CP('*');
  • count++;
  • txt[count-1]='+';
  • while(PINB3_bit==0);
  • }
  • }
  • }
  • void sms()
  • {
  • UART1_Init(9600); // Initialize UART module at 9600 bps
  • UART1_Write_Text("AT"); //AT command mode selected
  • UART_Write(0x0D); //CR
  • UART_Write(0x0A); //LF
  • Delay_ms(1000);
  • Delay_ms(100);
  • UART1_Write_Text("ATE0"); //Echo off
  • UART_Write(0x0D); //CR
  • UART_Write(0x0A); //LF
  • Delay_ms(100);
  • UART1_Write_Text("AT+CMGF=1"); //select text format of message
  • UART_Write(0x0D); //CR
  • UART_Write(0x0A); //LF
  • Delay_ms(100);
  • Delay_ms(1000);
  • UART1_Write_Text("AT+CMGS=\"+88017xxxxxxxx\"");//write your mobile number here
  • UART_Write(0x0D); //CR
  • UART_Write(0x0A); //LF
  • Delay_ms(1000);
  • UART1_Write_Text("Door opened");//write your message here
  • UART_Write(0x1A);
  • UART_Write(0x0D); //CR
  • UART_Write(0x0A); //LF
  • }
  • void main()
  • {
  • Lcd_Init();
  • Lcd_Cmd(_LCD_CURSOR_OFF);
  • while(1)
  • {
  • if(PINA0_bit==1) //when Motion sensor senses any motion.
  • {
  • keypad(); //Enter the keypad function.
  • }
  • else
  • {
  • Lcd_Cmd(_LCD_CLEAR);
  • }
  • }
  • }
// LCD module connections
sbit LCD_RS at PORTD4_bit;   // connect the RS pin of LCD to PD4
sbit LCD_EN at PORTD6_bit;   // connect the EN pin of LCD to PD6
sbit LCD_D4 at PORTC4_bit;   // connect the D4 pin of LCD to PC4
sbit LCD_D5 at PORTC5_bit;   // connect the D5 pin of LCD to PC5
sbit LCD_D6 at PORTC6_bit;   // connect the D6 pin of LCD to PC6
sbit LCD_D7 at PORTC7_bit;   // connect the D7 pin of LCD to PC7

sbit LCD_RS_Direction at DDD4_bit;
sbit LCD_EN_Direction at DDD6_bit;
sbit LCD_D4_Direction at DDC4_bit;
sbit LCD_D5_Direction at DDC5_bit;
sbit LCD_D6_Direction at DDC6_bit;
sbit LCD_D7_Direction at DDC7_bit;
// End LCD module connections
 char txt[6], password[6]={'1','2','3','4','5','6'};//txt=password given by user, password=password set by the manufacturer
 int count=0;
 int i=0;
 void sms();
void keypad ()
{
     DDA0_bit=0;            //Motion sensor attached to PA0
     DDRB=0xF0;             // 4 MSB for output(columns) 4 LSB for input(rows);
     PORTB=0x0F;            //enable internal pullups for PB0-PB3
     DDC0_bit=1;            //Doorlock attached to PC0
     Lcd_Init();                   // Initialize LCD
     Lcd_Cmd(_LCD_CLEAR);          // Clear display
     Lcd_Cmd(_LCD_CURSOR_OFF);     // Cursor off
     Lcd_Out(1, 1, "Enter password");

     while (1) //loop key check forever
     {
         Delay_ms(100);

         if(count>=6)
         {
         if(password[0]==txt[0]&& password[1]==txt[1]&&password[2]==txt[2]&&password[3]==txt[3]&& password[4]==txt[4]&&password[5]==txt[5])
         {
         PORTC0_bit=1;                  //Doorlock opens
         Lcd_Cmd(_LCD_CURSOR_OFF);     // Cursor off
         Lcd_out(1,1, "Welcome!");
         sms();
         Delay_ms(1000);
         Lcd_cmd(_LCD_CLEAR);
         for(i=0;i<=10;i++)           //wait for 10 seconds
         {
          Delay_ms(1000);
          count=0;
          Lcd_cmd(_LCD_CLEAR);
          PORTC0_bit=0;               //Lock closed
         }
          break;
         }

         else
         {
         Lcd_cmd(_LCD_CLEAR);
         Lcd_out(1,1, "Wrong password!");
         Lcd_out(2,1, "Please try again");
         Delay_ms(2000);
         count=0;

         Lcd_Cmd(_LCD_CLEAR);          // Clear display
         Lcd_Cmd(_LCD_CURSOR_OFF);     // Cursor off

         Lcd_Out(1, 1, "Enter password");
         Delay_ms(1000);
         }
         }
          //first column
          PORTB = 0xEF;
          Delay_ms(10);
          if (PINB0_bit == 0)
          {
             if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='1';
             while(PINB0_bit == 0);

          }
          else if (PINB1_bit == 0)
          {
             if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='4';
             while(PINB1_bit == 0);

          }
          else if (PINB2_bit == 0)
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             Count++;
             txt[count-1]='7';
             while(PINB2_bit == 0);
          }
          else if (PINB3_bit == 0)
          {
             Lcd_Cmd(_LCD_CLEAR);
             count=0;
             PORTC0_bit=0;
             Lcd_Out(1, 1, "Enter password");
             while(PINB3_bit == 0);
             //break;

          }

          //second column
          PORTB = 0xDF;
          Delay_ms(10);
          if (PINB0_bit == 0)
          {   if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='2';
             while(PINB0_bit == 0);
          }
          else if (PINB1_bit == 0)
          {   if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='5';
             while(PINB1_bit == 0);
          }

          else if (PINB2_bit == 0)
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='8';
             while(PINB2_bit == 0);
          }

          else if (PINB3_bit == 0)
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='0';
             while(PINB3_bit == 0);
          }

          //third column

          PORTB = 0xBF;
          Delay_ms(10);
          if (PINB0_bit == 0)
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='3';
             while(PINB0_bit == 0);
          }
          else if (!(PINB & 0x02))
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='6';
             while(!(PINB & 0x02));
          }
          else if (!(PINB & 0x04))
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='9';
             while(!(PINB & 0x04));
          }
          else if(PINB3_bit==0)
          {
             if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
            Lcd_Chr_CP('*');
            count++;
            txt[count-1]='#';
            while(PINB3_bit == 0);
          }

          //fourth column

          PORTB = 0x7F;
          Delay_ms(10);
          if (PINB0_bit==0)
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='%';
             while(PINB0_bit==0);
          }
          else if (PINB1_bit==0)
          {
              if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='*';
             while(PINB1_bit==0);
          }
          else if (PINB2_bit==0)
          {
             if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='-';
             while(PINB2_bit==0);

          }
          else if (PINB3_bit==0)
          {
             if(count==0)
             {
              Lcd_Cmd(_LCD_CLEAR);
             }
             Lcd_Chr_CP('*');
             count++;
             txt[count-1]='+';
             while(PINB3_bit==0);

          }



     }



}

void sms() 
{

UART1_Init(9600);               // Initialize UART module at 9600 bps
  UART1_Write_Text("AT");         //AT command mode selected
  UART_Write(0x0D);           //CR
  UART_Write(0x0A);           //LF
  Delay_ms(1000);

  Delay_ms(100);
  UART1_Write_Text("ATE0");         //Echo off
  UART_Write(0x0D);           //CR
  UART_Write(0x0A);           //LF
  Delay_ms(100);
  UART1_Write_Text("AT+CMGF=1");   //select text format of message
  UART_Write(0x0D);           //CR
  UART_Write(0x0A);           //LF
  Delay_ms(100);
  Delay_ms(1000);
  UART1_Write_Text("AT+CMGS=\"+88017xxxxxxxx\"");//write your mobile number here
  UART_Write(0x0D);           //CR
  UART_Write(0x0A);           //LF
  Delay_ms(1000);
  UART1_Write_Text("Door opened");//write your message here
  UART_Write(0x1A);
  UART_Write(0x0D);           //CR
  UART_Write(0x0A);           //LF
  
 }



void main()
{
 Lcd_Init();
 Lcd_Cmd(_LCD_CURSOR_OFF);
 while(1)
 {

 if(PINA0_bit==1)   //when Motion sensor senses any motion.
 {
 keypad();          //Enter the keypad function.

 }
 else
 {
  Lcd_Cmd(_LCD_CLEAR);
 }
 }
}

Login to post comments.
anon
Najmul0211 | Oct 12,2017 at 01:21 PM
all circuit price =???
anon
A.R | Oct 13,2017 at 04:27 PM
'প্রয়োজনীয় যন্ত্রপাতি' শিরোনামের প্যারাটিতে এই টিউটোরিয়ালে যতগুলো পার্টস ব্যবহার করা হয়েছে তার প্রত্যেকটির লিংক দেওয়া আছে। একটু কষ্ট করে সেগুলো ক্লিক করলেই কিন্তু দামগুলো আপনি দেখে নিজে হিসাব করতে পারবেন। টিউটোরিয়ালটি পড়ে বুঝে থাকলে প্রজেক্টের দামটা কমানোর সুযোগ কোথায় কোথায় আছে তা-ও বের করতে পারবেন। বুদ্ধির অতটুকু চর্চার সুযোগ আমরা আপনাদেরকে অবশ্যই দিতে চাই।
anon
Guitarist | Nov 11,2017 at 12:36 AM
code gulo code blocks a compile kora jabe na?
anon
A.R | Nov 11,2017 at 09:24 AM
আমাদের জানামতে না। মাইরক্রো সি ফর এভিআর মাইক্রোইলেক্ট্রনিকার ওয়েবসাইট থেকেই নামাতে পারবেন। আমাদের ট্রেনার কিটের সাথে আমরা সিডিতে দিয়ে দিই।
anon
Guitarist | Nov 16,2017 at 08:07 AM
তাহলে আমি সব কম্পোনেন্টস গুলো অর্ডার করছি।
যদি কোডগুলো ট্রেনার কিটে সেট করে দেন তাহলে ভাল হয়।
anon
A.R | Nov 16,2017 at 09:25 AM
বুঝলাম না। ট্রেনার কিটে কোড সেট করা বলতে কী বোঝালেন? কোড লোড করতে হয় মাইক্রোকন্ট্রোলারে। সেটি আপনি ট্রেনার কিট দিয়ে করবেন না অন্যকোনো প্রোগ্রামার দিয়ে সেটা সম্পূর্ণ আপনার ব্যপার। দেখুন, আমাদের কিন্তু AVR microcontroller এর উপর অলরেডি ২৭ টি টিউটোরিয়াল দেওয়া হয়ে গেছে। বেসিকগুলো না বুঝে এগুলো নিয়ে নাড়াচাড়া করলে বেশিদূর যাওয়া যাবে না। আর আমরা টিউটোরিয়ালে কোড উন্মুক্ত করেই দিয়েছি। এটা কপি-পেস্ট করে কম্পাইল এবং লোড করা আপনাদের দায়ীত্ব। কাউকে কোনোরকম কোডিং বা ডিজাইন করে দেওয়া আমাদের পলিসির পরিপন্থী। https://www.techshopbd.com/about-us/technical-asistance
anon
Guitarist | Nov 16,2017 at 08:25 AM
avr trainer kit out of stock!!
kobe pabo??
anon
A.R | Nov 16,2017 at 04:23 PM
Available now. https://www.techshopbd.com/product-categories/avr-98776/318/avr-trainer-kit-techshop-bangladesh


Copyright © 2012-13 Techshop Bangladesh. All rights reserved.