ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.






جهت تبلیغ در وب سایت ECA کلیک کنید.

کاربران برچسب زده شده

نمایش نتایج: از 1 به 7 از 7
  1. #1
    2009/07/29
    لابه لاي الکترون هاي مدارام
    1,306
    34

    usb به روایت دیگر

    هوالعالم

    سلام
    برای اتصال avr ها به میکرو، روش های گوناگونی ارائه شده است.
    سابقا از تراشه ی FT232rl استفاده می کردم. تراشه خیلی خوبی بود و خوشدست تا این اواخر...
    که بدلیل بازی در آوردن شرکت FTDI چنین مشکلی پیش آمد
    http://www.eca.ir/forum2/index.php?topic=101834.0

    مشکل را ریشه ای حل کردم و آمدم سراغ تراشه های AT90usb

    برای کار با این تراشه ها، سابقا رنج زیادی کشیده می شد و کتابخانه های طولانی و ...
    http://www.eca.ir/forum2/index.php?topic=55963.0
    http://www.eca.ir/forum2/index.php?topic=89285.0
    و البته تلاش دوستان پیشتاز کاملا قابل احترام است


    اما ایندفعه به لطف پیشرفت کدویژن، کار بسیار ساده تر شده.
    کافیه کدویژن ورژن 3.12 دانلود شود.

    از سایت زیر دانلود کنید:
    http://electrolab.ir/%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-codevisionavr-v3-12/
    با پسوورد electrolab.ir بازش کنید
    بعد از نصب دو فایلی رو که داخل دایرکتوری CRACK هست از زیپ خارج کنید و داخل دایرکتوری BIN کدویژن بجای فایلهای قبلی بریزید.

    بعدش در قسمت کدویزارد
    تراشه at90usb162 انتخاب شود
    در بخش usb، تیک enable را بنزید و usb cdc انتخاب کنید
    بعد اون چرخدنده زده بشه.

    حالا کافیه این تکه کد کوچک قبل از MAIN برنامه اضافه بشه
    [code=c]
    #define _ALTERNATE_PUTCHAR_
    void putchar(char c)
    {
    usb_serial_putchar(c);
    }
    [/code]

    تموم!!
    این هم یه نمونه کد برنامه
    [code=c]
    /************************************************** *****
    This program was created by the
    CodeWizardAVR V3.12 Advanced
    Automatic Program Generator
    © Copyright 1998-2014 Pavel Haiduc, HP InfoTech s.r.l.
    http://www.hpinfotech.com

    Project :
    Version :
    Date : 12/14/2014
    Author :
    Company :
    Comments:


    Chip type : AT90USB162
    Program type : Application
    AVR Core Clock frequency: 16.000000 MHz
    Memory model : Small
    External RAM size : 0
    Data Stack size : 128
    ************************************************** *****/

    #include <90usb162.h>

    #include <delay.h>

    // USB Device functions
    #include <usb_device.h>
    // USB Device functions
    //#include <stdio.h>

    // USB CDC Virtual Serial Port functions
    #include <usb_cdc.h>

    // USB initialization
    #include "usb_init.h"

    // Declare your global variables here


    // Use the USB Virtual Serial Port as printf output
    #define _ALTERNATE_PUTCHAR_
    void putchar(char c)
    {
    usb_serial_putchar(c);
    }


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

    // Crystal Oscillator division factor: 1
    #pragma optsize-
    CLKPR=(1<<CLKPCE);
    CLKPR=(0<<CLKPCE) | (0<<CLKPS3) | (0<<CLKPS2) | (0<<CLKPS1) | (0<<CLKPS0);
    #ifdef _OPTIMIZE_SIZE_
    #pragma optsize+
    #endif

    // Input/Output Ports initialization
    // Port B initialization
    // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In
    DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0);
    // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T
    PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);

    // Port C initialization
    // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit2=In Bit1=In Bit0=In
    DDRC=(0<<DDC7) | (0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC2) | (0<<DDC1) | (0<<DDC0);
    // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit2=T Bit1=T Bit0=T
    PORTC=(0<<PORTC7) | (0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);

    // Port D initialization
    // Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In
    DDRD=(0<<DDD7) | (0<<DDD6) | (0<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0);
    // State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T
    PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);

    // Timer/Counter 0 initialization
    // Clock source: System Clock
    // Clock value: Timer 0 Stopped
    // Mode: Normal top=0xFF
    // OC0A output: Disconnected
    // OC0B output: Disconnected
    TCCR0A=(0<<COM0A1) | (0<<COM0A0) | (0<<COM0B1) | (0<<COM0B0) | (0<<WGM01) | (0<<WGM00);
    TCCR0B=(0<<WGM02) | (0<<CS02) | (0<<CS01) | (0<<CS00);
    TCNT0=0x00;
    OCR0A=0x00;
    OCR0B=0x00;

    // Timer/Counter 1 initialization
    // Clock source: System Clock
    // Clock value: Timer1 Stopped
    // Mode: Normal top=0xFFFF
    // OC1A output: Disconnected
    // OC1B output: Disconnected
    // OC1C output: Disconnected
    // Noise Canceler: Off
    // Input Capture on Falling Edge
    // Timer1 Overflow Interrupt: Off
    // Input Capture Interrupt: Off
    // Compare A Match Interrupt: Off
    // Compare B Match Interrupt: Off
    // Compare C Match Interrupt: Off
    TCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<COM1C1) | (0<<COM1C0) | (0<<WGM11) | (0<<WGM10);
    TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (0<<CS10);
    TCNT1H=0x00;
    TCNT1L=0x00;
    ICR1H=0x00;
    ICR1L=0x00;
    OCR1AH=0x00;
    OCR1AL=0x00;
    OCR1BH=0x00;
    OCR1BL=0x00;
    OCR1CH=0x00;
    OCR1CL=0x00;

    // Timer/Counter 0 Interrupt(s) initialization
    TIMSK0=(0<<OCIE0B) | (0<<OCIE0A) | (0<<TOIE0);

    // Timer/Counter 1 Interrupt(s) initialization
    TIMSK1=(0<<ICIE1) | (0<<OCIE1C) | (0<<OCIE1B) | (0<<OCIE1A) | (0<<TOIE1);

    // External Interrupt(s) initialization
    // INT0: Off
    // INT1: Off
    // INT2: Off
    // INT3: Off
    // INT4: Off
    // INT5: Off
    // INT6: Off
    // INT7: Off
    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);
    // PCINT0 interrupt: Off
    // PCINT1 interrupt: Off
    // PCINT2 interrupt: Off
    // PCINT3 interrupt: Off
    // PCINT4 interrupt: Off
    // PCINT5 interrupt: Off
    // PCINT6 interrupt: Off
    // PCINT7 interrupt: Off
    PCMSK0=(0<<PCINT7) | (0<<PCINT6) | (0<<PCINT5) | (0<<PCINT4) | (0<<PCINT3) | (0<<PCINT2) | (0<<PCINT1) | (0<<PCINT0);
    // PCINT8 interrupt: Off
    // PCINT9 interrupt: Off
    // PCINT10 interrupt: Off
    // PCINT11 interrupt: Off
    // PCINT12 interrupt: Off
    PCMSK1=(0<<PCINT12) | (0<<PCINT11) | (0<<PCINT10) | (0<<PCINT9) | (0<<PCINT8);
    PCICR=(0<<PCIE1) | (0<<PCIE0);

    // 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
    // The Analog Comparator's positive input is
    // connected to the AIN0 pin
    // The Analog Comparator's negative input is
    // connected to the AIN1 pin
    ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0);
    // Digital input buffer on AIN0: On
    // Digital input buffer on AIN1: On
    DIDR1=(0<<AIN0D) | (0<<AIN1D);

    // SPI initialization
    // SPI disabled
    SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);


    // USB Controller initialization in device mode
    // Note: This function also initializes the PLL
    usb_init_device(&usb_config);

    // Global enable interrupts
    #asm("sei&quot

    // Wait for the USB device to be enumerated by the host
    while (!usb_enumerated);

    // Wait 1.5 seconds for the operating system to
    // load any drivers needed by the USB device
    delay_ms(1500);

    // Wait for the USB host to be ready to receive serial data by
    // setting the CDC Virtual Serial Port's RS-232 DTR signal high
    while (usb_cdc_serial.control.dtr==0);

    while (1)
    {
    puts("Holoooooooooooooooooooooooo!"
    }
    }
    [/code]

    درایورش اش هم داخل پوشه کدویژن هست.
    این مسیر
    [code=text]
    C:\cvavr\EXAMPLES\USB\CDC Virtual Serial Port
    [/code]
    همین :wow:
    برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  2. #2
    2013/08/30
    1,000
    7

    پاسخ : usb به روایت دیگر

    بریم سراغ PICدیگه کم کم

    USBهاست داره خیلی راحت تر از اینه :read:
  3. #3
    2010/10/11
    Sabzevar
    897
    53

    پاسخ : usb به روايت ديگر

    AVR CDC يک رابط نرم افزاري براي تبديل USB به RS232 و TTL ميکروهاي AVR هست. که بر پايه ي VUSB خيلي وقت قبل کار شده. من نتونستم روي win8 ازش جواب بگيرم.

    الان همه ي اين ها رو نوشتم بپرسم اين روش روي win7-8 کار ميده؟ :redface:
    و درايور هاش بدون مشکل راه ميافته؟
  4. #4
    2009/07/29
    لابه لاي الکترون هاي مدارام
    1,306
    34

    پاسخ : usb به روايت ديگر

    نقل قول نوشته اصلی توسط MReza.p
    AVR CDC يک رابط نرم افزاري براي تبديل USB به RS232 و TTL ميکروهاي AVR هست. که بر پايه ي VUSB خيلي وقت قبل کار شده. من نتونستم روي win8 ازش جواب بگيرم.

    الان همه ي اين ها رو نوشتم بپرسم اين روش روي win7-8 کار ميده؟ :redface:
    و درايور هاش بدون مشکل راه ميافته؟
    سلام
    روی ویندوز 8.1 بدون اذیت راه افتاد

    کل زمانی که خرج راه انداختن مدار و برنامه نویسی کردم از نوشتن این خطوط کمتر طول کشید.
    با HID Generic هم می شه اما هنوز تست نگرفتم.
    برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  5. #5
    2009/07/29
    لابه لاي الکترون هاي مدارام
    1,306
    34

    پاسخ : usb به روایت دیگر

    نقل قول نوشته اصلی توسط بنیامین 20
    بریم سراغ PICدیگه کم کم

    USBهاست داره خیلی راحت تر از اینه :read:
    الان مگه شما سختی ای درون این دیدید ؟ :biggrin:

    بسلامت! برید سراغ PIC
    برای کاری در حوزه اربعین نیاز به نیروی داوطلب هستیم.

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  6. #6
    2012/12/27
    شهر راز (شیراز)
    1,727
    61

    پاسخ : usb به روایت دیگر

    درود آقا مرتضی
    آقا عالی بود ... :applause:
    البته هنوز امتحانش نکردم !!!
    نقل قول نوشته اصلی توسط MReza.p
    AVR CDC يک رابط نرم افزاري براي تبديل USB به RS232 و TTL ميکروهاي AVR هست. که بر پايه ي VUSB خيلي وقت قبل کار شده. من نتونستم روي win8 ازش جواب بگيرم.
    این هم راه خیلی خوبیه که میتونیم یک مبدل بسیار ارزانتر از FT232 بسازیم ...
    [size=10pt][b]

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت


    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت


    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت


    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    [/size]
  7. #7
    2010/07/08
    134
    3
    aed

    پاسخ : usb به روايت ديگر

    نقل قول نوشته اصلی توسط MortezaMir

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    با HID Generic هم می شه اما هنوز تست نگرفتم.
    سلام و تشکر.
    من مثال کدویژن در مورد HID Generic را کامپایل و در یک میکروی AT90USB162 (هدر برد فروشگاه) پروگرام کردم. یک نرم افزار هم برای تست ، در کنار مثال کدویژن وجود دارد که آن را اجرا کردم. میکرو داده را بدون مشکل ارسال می کند و در نرم افزار نمایش داده می شود. ولی وقتی از نرم افزار به میکرو داده ارسال می شود، طاهرا توسط میکرو دریافت نمی شود و نرم افزار نیز هنگ می کند. لطفا اگر کسی تجربه ای در این مورد دارد راهنمایی بفرماید.
    ممنون
نمایش نتایج: از 1 به 7 از 7

موضوعات مشابه

  1. ضبط تصاویر dvr در مکانی دیگر
    توسط فدایی داری در انجمن تاسيسات الكتريكي
    پاسخ: 6
    آخرين نوشته: 2015/11/01, 00:43
  2. مشاغل دیگر - پردرآمد
    توسط Solsal در انجمن بازار کار
    پاسخ: 5
    آخرين نوشته: 2015/07/09, 08:48
  3. PWM روی پایه های دیگر
    توسط بسطام بيرامي در انجمن میکروکنترلرهای AVR
    پاسخ: 13
    آخرين نوشته: 2014/04/27, 21:26
  4. ساخت ساب ووفر به روایت تصویر
    توسط hassanenginer در انجمن مدارات صوتي
    پاسخ: 5
    آخرين نوشته: 2013/03/13, 00:19
  5. نام دیگر بست برای کابل
    توسط doosoo در انجمن تاسيسات الكتريكي
    پاسخ: 5
    آخرين نوشته: 2010/07/15, 16:29

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •