اطلاعیه

Collapse
No announcement yet.

راه حل با bascom و atmega64l

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

    راه حل با bascom و atmega64l

    سلام دوستان

    من یک atmega 64l استفاده کردم (البته این نوع 2 تا rx,tx داره ) من یک sim300 رو به یک rx1,tx1 وصل کردم و یک max 232 رو به یک rx2,tx2 وضل کاردم . حالا تو زبان bascom چطوری میتونم همه درخواستهای که از max میاد رو به sim 300 بفرستم و یا برعکس میشه کد رو بگید

    مرسی
    http://services.nexodyne.com/email/i...3D/0/image.png

    #2
    پاسخ : راه حل با bascom و atmega64l

    سلام
    ببینید در Help بسکام اگر نگاه کنید توضیح دستور زیر می تونه کمک کنه:

    کد:
    Config comx

    نشانی زیر همون مطلبه:

    http://avrhelp.mcselec.com/configcomx.htm

    موفق باشی

    دیدگاه


      #3
      پاسخ : راه حل با bascom و atmega64l

      سلام دوست عزیز

      کد:
      CONFIG COMx = baud , synchrone=0|1,parity=none|disabled|even|odd,stopbits=1|2,databits=4|6|7|8|9,clockpol=0|1
      من دقیقا نفهمیدم باید از این دستور به جه منظور استفاده کنم
      من عکس مدار رو قرار میدم شاید بهتر بتونید کمکم کنید



      اینم روی دستگاه



      حالا من میخوام این SIM300 به PC وصل بشه چه برنامه ای باید روی AVR بنویسم

      http://services.nexodyne.com/email/i...3D/0/image.png

      دیدگاه


        #4
        پاسخ : راه حل با bascom و atmega64l

        سلام
        ببین مگه شما نگفتی که می خوای رابطهای سریال ATmega64 رو راه بندازی. اگه درسته تو همون دستور بجای x از عدد 1 یا 2 استفاده کن. تو مثالهاش هست. مثل زیر:

        کد:
        Config com1=2400, parity=none, stpbits=1, databits=8,clockpol=1

        حالا واحد USART0 پیکره بندی شد. اول باید اون پورت باز بشه توسط دستور زیر:

        کد:
        Open "com1:" For Binary As #1

        بعد هم ازش استفاده کنی. مثل دستور زیر:

        کد:
        Print #1 , Tel ; " test serial port 2"

        می شه هم ببندیش:

        کد:
        Close #1

        موفق باشی

        دیدگاه


          #5
          پاسخ : راه حل با bascom و atmega64l

          سلام

          بیبنید این دستگاه با این فایل کار میکنه و هیچ مشکلی نداره میشه اینو به bascom تبدیل کنید
          ;*****
          ;* Title: USART0 initialize and send/receive data
          ;* Version: 2.0
          ;* Start date: 87.09.04
          ;* End date: 87.09.04
          ;* Target MCU: ATMEGA64
          ;* XTAL: 7.3728MHZ
          ;* Describtion:
          ;*This program initialize usart0 and send/receive data for it's buffer
          ;*
          ;*Used register:
          ;*XL,XH
          ;*****
          ;*****
          .INCLUDE "M64DEF.INC"
          .ORG 0X0000
          RJMP RESET ;Reset Handle
          ;*****
          RESET:
          ;***** Initialize stack pointer
          ;* Initialize stack pointer to 0X085F in internal SRAM

          LDI XL,LOW(0X10FF) ;Load XL with 0XFF
          LDI XH,HIGH(0X10FF) ;Load XH with 0X10
          OUT SPL,XL ;Load SPL with XL
          OUT SPH,XH ;Load SPH with XH

          LDI XL,0XFF ;Load XL with 0XFF
          OUT DDRA,XL ;Set port A as output

          LDI XL,0X00
          OUT PORTA,XL

          CALL USART0_INITIALIZE


          ;***** Initialize USART0
          ;* Describtion:
          ;*This subroutine initialize usart0 parameter
          ;*Used register:
          ;*XL
          ;*
          USART0_INITIALIZE:

          LDI XL,0X20 ;RXC TXC UDRE FE DOR PE U2X MPCM
          OUT UCSR0A,XL ; 0 0 1 0 0 0 0 0
          LDI XL,0XF8 ;RXCIE TXCIE UDRIE RXEN TXEN UCSZ2 RXB8 TXB8
          OUT UCSR0B,XL ; 1 1 1 1 1 0 0 0
          LDI XL,0X86 ;URSEL UMSEL UPM1 UPM0 USBS UCSZ1 UCSZ0 UCPOL
          STS UCSR0C,XL ; 1 0 0 0 0 1 1 0
          LDI XL,0X00 ;URSEL - - - UBRR11 UBRR10 UBRR9 UBRR8
          STS UBRR0H,XL ; 0 0 0 0 0 0 0 0
          LDI XL,0XBF ;UBRR7 UBRR6 UBRR5 UBRR4 UBRR3 UBRR2 UBRR1 UBRR0
          OUT UBRR0L,XL ; 1 0 1 1 1 1 1 1

          RET
          با تشکر از راهنمایی های شما
          http://services.nexodyne.com/email/i...3D/0/image.png

          دیدگاه


            #6
            پاسخ : راه حل با bascom و atmega64l

            سلام
            متاسفانه اسمبلی نمی تونم کمکی بکنم. :sad:
            دوستانی که اطلاعی دارند کمک کنند.
            موفق باشی

            دیدگاه


              #7
              پاسخ : راه حل با bascom و atmega64l

              سلام...
              من دارم روی atmega 8 یا 16 و sim300 کار میکنم...
              راستش هنوز جواب نگرفتم... اگه نقشه مدار دارین می تونید کمکم کنید؟؟!
              ممنون

              دیدگاه

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