اطلاعیه

Collapse
No announcement yet.

Integrated DTMFTransceiver-mt8880

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    Integrated DTMFTransceiver-mt8880

    سلام
    دوستان اگر کسی هست درباره این آی سی mt8880مطلبی می دونه ممنون می شم راهنمایی کنه- حتی یک جمله




    نادانترين مردم کساني هستند که فکر مي کنند داناترين آنها هستند.

    #2
    پاسخ : Integrated DTMFTransceiver-mt8880

    توی دیتا شیتش بجای 1 جمله 20 صفحه توضیح داده :mrgreen:
    datasheetcatalog.com



    اگه مردم می دونستن زمان چقدر با ارزشه دیگه هیچ وقت کفش بند دار نمی خریدن البرت انیشتن

    دیدگاه


      #3
      پاسخ : Integrated DTMFTransceiver-mt8880

      توی دیتا شیتش بجای 1 جمله 20 صفحه توضیح داده
      datasheetcatalog.com
      100 در صد دوست عزیزی که این مطلب را نوشتن حتما دیتا شیت رو مطالعه کردن-از این رو نوشتن این مطلب جالب نیست-

      دوست عزیز برنامه ای قبلا آماده کرده بودم برایتان می گذارم شاید بدرد تان بخورد.



      #include <mega16.h>
      #include <delay.h>
      // Alphanumeric LCD Module functions
      #asm
      .equ __lcd_port=0x1B ;PORTA
      #endasm
      #include <lcd.h>
      #define HI 1
      #define LOW 0
      #define IRQ PORTD.4
      #define RD PORTD.5
      #define RSO PORTD.6
      #define CS PORTD.7
      #define WR PORTC.0
      #define D0 PORTD.0
      #define D1 PORTD.1
      #define D2 PORTD.2
      #define D3 PORTD.3

      /////////////////////////////////////////////////////////
      // send pulse //
      /////////////////////////////////////////////////////////
      void send_pulse0 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 0)
      RSO=0;
      WR=0;
      RD=1;
      delay_us(10);
      D0=0;
      D1=1;
      D2=0;
      D3=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse1 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 1)
      RSO=0;

      delay_us(10);
      D0=1;
      D1=0;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse2 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 2)
      RSO=0;

      delay_us(10);
      D0=0;
      D1=1;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse3 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 3)
      RSO=0;

      delay_us(10);
      D0=1;
      D1=1;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }

      void send_pulse4 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 4)
      RSO=0;

      delay_us(10);
      D0=0;
      D1=0;
      D2=1;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse5 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 5)
      RSO=0;

      delay_us(10);
      D0=1;
      D1=0;
      D2=1;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }

      void send_pulse6 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 6)
      RSO=0;
      delay_us(10);
      D0=0;
      D1=1;
      D2=1;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }

      void send_pulse7 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 7)
      RSO=0;

      delay_us(10);
      D0=1;
      D1=1;
      D2=1;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse8(void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 8)
      RSO=0;

      delay_us(10);
      D0=0;
      D1=0;
      D2=0;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse9 (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit 9)
      RSO=0;

      delay_us(10);
      D0=1;
      D1=0;
      D2=0;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse_setare (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit setare)
      RSO=0;

      delay_us(10);
      D0=1;
      D1=1;
      D2=0;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse_morab (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit morab)
      RSO=0;

      delay_us(10);
      D0=0;
      D1=0;
      D2=1;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);

      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse_A (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit A)
      RSO=0;

      delay_us(10);
      D0=1;
      D1=0;
      D2=1;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);
      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse_B (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit B)
      RSO=0;

      delay_us(10);
      D0=0;
      D1=1;
      D2=1;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);
      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse_C (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit C )
      RSO=0;

      delay_us(10);
      D0=1;
      D1=1;
      D2=1;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);
      ///////////////////////////////////////////////////////////////////////////////END
      }
      void send_pulse_D (void)
      {

      ////////////////////////////////writ to transmit data register (send a digit D)
      RSO=0;

      delay_us(10);
      D0=0;
      D1=0;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);
      ///////////////////////////////////////////////////////////////////////////////END
      }



      void reset(void)
      {

      }

      ///////////////////////end off reset
      /////////////////////////////////////////
      // make_tone //
      //// ////
      /////////////////////////////////////////
      /////////////////////////////////////////
      /////////////////////////////////////////
      void make_tone (void)
      {
      /////////////////////////wrlth too A register
      RSO=1;
      D0=1;
      D1=0;
      D2=0;
      D3=1;
      WR=0;
      RD=1;
      delay_us(10);
      ///////////////////////////// END OF A
      delay_ms(100);
      RSO=1;
      WR=1;
      RD=0;
      delay_us(1);
      /////////////////////////wrlth too B register
      RSO=1;
      D0=0;
      D1=0;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(10);
      /////////////////////////////END OF B
      }


      void main(void)
      {
      // Declare your local variables here

      ////////////////////////////////////////////////////////
      // reset MT8888 //
      ////////////////////////////////////////////////////////
      ////////////////////////////////////////////////////////
      ////////////////////////////////////////////////////////
      ////////////////////////////////////////////////////////
      ////////////////////////////////////////////////////////
      ////////////////////////////////read statos rejister
      //IRQ=1;
      CS=0;
      delay_ms(100);
      RSO=1;
      WR=1;
      RD=0;
      delay_us(1);
      ////////////////////////////////writh to control register01
      RSO=1;
      D0=0;
      D1=0;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(1);
      ////////////////////////////////writh to control register02
      RSO=1;
      D0=0;
      D1=0;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(1);
      ////////////////////////////////writh to control register 03
      RSO=1;
      D0=0;
      D1=0;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(1);
      ////////////////////////////////writh to control register04
      RSO=1;
      D0=0;
      D1=0;
      D2=0;
      D3=0;
      WR=0;
      RD=1;
      delay_us(1);
      ////////////////////////////////read status register
      RSO=1;
      WR=1;
      RD=0;
      delay_us(10);
      /* /////////////////////////writh too A register
      RSO=1;
      D0=1;
      D1=0;
      D2=1;
      D3=1;
      delay_us(20);
      WR=0;
      RD=1;
      delay_us(50);
      ///////////////////////////// END OF A
      /////////////////////////wrlth too B register
      RSO=1;
      D0=0;
      D1=0;
      D2=0;
      D3=0;
      delay_us(20);
      WR=0;
      RD=1;
      delay_us(10);
      /////////////////////////////END OF B */


      // Input/Output Ports initialization
      // Port A initialization
      // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
      // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
      PORTA=0x00;
      DDRA=0x00;

      // Port B initialization
      // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
      // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
      PORTB=0x00;
      DDRB=0x00;

      // Port C initialization
      // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=Out
      // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=0
      PORTC=0x00;
      DDRC=0x01;

      // Port D initialization
      // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out
      // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
      PORTD=0x00;
      DDRD=0xFF;

      // Timer/Counter 0 initialization
      // Clock source: System Clock
      // Clock value: Timer 0 Stopped
      // Mode: Normal top=FFh
      // OC0 output: Disconnected
      TCCR0=0x00;
      TCNT0=0x00;
      OCR0=0x00;

      // Timer/Counter 1 initialization
      // Clock source: System Clock
      // Clock value: Timer 1 Stopped
      // Mode: Normal top=FFFFh
      // OC1A output: Discon.
      // OC1B output: Discon.
      // Noise Canceler: Off
      // Input Capture on Falling Edge
      // Timer 1 Overflow Interrupt: Off
      // Input Capture Interrupt: Off
      // Compare A Match Interrupt: Off
      // Compare B Match Interrupt: Off
      TCCR1A=0x00;
      TCCR1B=0x00;
      TCNT1H=0x00;
      TCNT1L=0x00;
      ICR1H=0x00;
      ICR1L=0x00;
      OCR1AH=0x00;
      OCR1AL=0x00;
      OCR1BH=0x00;
      OCR1BL=0x00;

      // Timer/Counter 2 initialization
      // Clock source: System Clock
      // Clock value: Timer 2 Stopped
      // Mode: Normal top=FFh
      // OC2 output: Disconnected
      ASSR=0x00;
      TCCR2=0x00;
      TCNT2=0x00;
      OCR2=0x00;

      // External Interrupt(s) initialization
      // INT0: Off
      // INT1: Off
      // INT2: Off
      MCUCR=0x00;
      MCUCSR=0x00;

      // Timer(s)/Counter(s) Interrupt(s) initialization
      TIMSK=0x00;

      // Analog Comparator initialization
      // Analog Comparator: Off
      // Analog Comparator Input Capture by Timer/Counter 1: Off
      ACSR=0x80;
      SFIOR=0x00;

      // LCD module initialization
      lcd_init(16);

      while (1)
      {

      lcd_clear();
      lcd_gotoxy(0,1);
      lcd_putsf("DIALING"
      delay_ms(250);

      reset();
      make_tone();
      send_pulse1();
      lcd_gotoxy(0,0);
      lcd_putsf("1"
      delay_ms(104);
      make_tone();
      send_pulse2();
      lcd_gotoxy(1,0);
      lcd_putsf("2"
      delay_ms(104);
      make_tone();
      send_pulse3();
      lcd_gotoxy(2,0);
      lcd_putsf("3"
      delay_ms(104);
      make_tone();
      send_pulse4();
      lcd_gotoxy(3,0);
      lcd_putsf("4"
      delay_ms(104);
      make_tone();
      send_pulse5();
      delay_ms(104);
      lcd_gotoxy(4,0);
      lcd_putsf("5"
      make_tone();
      send_pulse6();
      delay_ms(104);
      lcd_gotoxy(5,0);
      lcd_putsf("6"
      make_tone();
      send_pulse7();
      delay_ms(104);
      lcd_gotoxy(6,0);
      lcd_putsf("7"
      make_tone();
      send_pulse8();
      delay_ms(104);
      lcd_gotoxy(7,0);
      lcd_putsf("8"
      make_tone();
      send_pulse9();
      delay_ms(104);
      lcd_gotoxy(8,0);
      lcd_putsf("9"
      make_tone();
      send_pulse0();
      delay_ms(104);
      lcd_gotoxy(9,0);
      lcd_putsf("0"
      make_tone();
      send_pulse_A();
      delay_ms(104);
      lcd_gotoxy(10,0);
      lcd_putsf("A"
      make_tone();
      send_pulse_B();
      delay_ms(104);
      lcd_gotoxy(11,0);
      lcd_putsf("B"
      make_tone();
      send_pulse_C();
      delay_ms(104);
      lcd_gotoxy(12,0);
      lcd_putsf("C"
      make_tone();
      send_pulse_D();
      delay_ms(104);
      lcd_gotoxy(13,0);
      lcd_putsf("D"
      make_tone();
      send_pulse_setare();
      delay_ms(104);
      lcd_gotoxy(14,0);
      lcd_putsf("*"
      make_tone();
      send_pulse_morab();
      delay_ms(104);
      lcd_gotoxy(15,0);
      lcd_putsf("#"
      delay_ms(104);


      lcd_gotoxy(0,1);
      lcd_putsf("END "
      delay_ms(1000);



      // Place your code here

      };
      }




      دیدگاه


        #4
        پاسخ : Integrated DTMFTransceiver-mt8880

        سلام-
        ممنون از لطفتان
        نادانترين مردم کساني هستند که فکر مي کنند داناترين آنها هستند.

        دیدگاه

        لطفا صبر کنید...
        X