اطلاعیه

Collapse
No announcement yet.

آرایه در زبان Basic !!!

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

    #16
    پاسخ : آرایه در زبان Basic !!!

    اونجوری که فکر میکنی اصلا سخت نیست...ولی اگه وقتشو نداری میتونی از کتابخونه های اماده استفاده کنی....خودم هم دارم یه کتابخونه واسه ارتباط سریال مینویسم ولی هنوز کامل نشده ...

    از اینجا خود کتابخونه رو دانلود کن ....

    این هم آموزش کار با همین کتابخونه

    یکم مطالعه ش کن همه چی دستت میاد...
    تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

    www.intelart.ir


    ساخت کنترلر دما PID فازی با AVR [آموزشی]

    دیدگاه


      #17
      پاسخ : آرایه در زبان Basic !!!

      ببخشید ولی USART رو شنیدم و تو دیتاشیت atmega32 هم تنها اینو گفته ولی UART رو تازه از پاسخ شما دیدم...اینا باهم که فرق آنچنانی با هم ندارن...چونکه کتابخونش همون کارای USART رو انجام میده؟
      البته یه نگاه اجمالی بهش انداختم...سعی خودمو میکنم که یادش بگیرم
      بازم ممنون
      صبرت که تمام شد نرو!
      "معرفت"
      تازه از آن لحظه آغاز می شود...

      دیدگاه


        #18
        پاسخ : آرایه در زبان Basic !!!

        اتفاقا کلی فرقشونه...

        USART=Universal Synchronous and Asynchronous serial Receiver and Transmitter

        UART=Universal Asynchronous serial Receiver and Transmitter

        USRT=Universal Synchronous serial Receiver and Transmitter

        مدلی که واسه ارتباط با کامپیوتر استفاده میشه معمولا همون غیر همزمان یا UART هستش...
        میکرو های AVR هم ارتباط سریال همزمان و هم غیرهمزمان رو پشتیبانی میکنند در حالی که میکروهای قدیمی تر مثل 8051 فقط حالت غیرهمزمان یا UART رو ساپورت میکنند...

        شما واسه ارتباط با PC فقط بخش UART رو مطالعه کن که وقتت هدر نره...حالت همزمان رو بعدا هم میتونی بری دنبالش...
        تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

        www.intelart.ir


        ساخت کنترلر دما PID فازی با AVR [آموزشی]

        دیدگاه


          #19
          پاسخ : آرایه در زبان Basic !!!

          نوشته اصلی توسط punisher.x64
          اونجوری که فکر میکنی اصلا سخت نیست...ولی اگه وقتشو نداری میتونی از کتابخونه های اماده استفاده کنی....خودم هم دارم یه کتابخونه واسه ارتباط سریال مینویسم ولی هنوز کامل نشده ...

          از اینجا خود کتابخونه رو دانلود کن ....

          این هم آموزش کار با همین کتابخونه

          یکم مطالعه ش کن همه چی دستت میاد...
          مطالعه کردم ولی چیز خاصی دستم نیومد..این کتابخونه رو اگه به برنامه اضافه کنی اون موقه چه جوری باید اطلاعات بفرستی شما ممکنه خودتون یه برنامه خیلی اده با این بنویسید که متوجه شیم.
          صبرت که تمام شد نرو!
          "معرفت"
          تازه از آن لحظه آغاز می شود...

          دیدگاه


            #20
            پاسخ : آرایه در زبان Basic !!!

            راستی مثل اینکه lcd های دیگری با اینچ بالا (حدود 4.5) هم وجود داره که حتی میشه به ATMEGA32 متصل کرد،میگم اگه با این سایز ال سی دی وجود داره بهتره که از همون ال سی دی استفاده کرد ممکنه در این مورد کمک کنید.
            صبرت که تمام شد نرو!
            "معرفت"
            تازه از آن لحظه آغاز می شود...

            دیدگاه


              #21
              پاسخ : آرایه در زبان Basic !!!

              نوشته اصلی توسط RoboRazi
              مطالعه کردم ولی چیز خاصی دستم نیومد..این کتابخونه رو اگه به برنامه اضافه کنی اون موقه چه جوری باید اطلاعات بفرستی شما ممکنه خودتون یه برنامه خیلی اده با این بنویسید که متوجه شیم.
              داخل manual نوشته که هرکدوم چیکار میکنند:

              1-یک دیفاین هست که باید باهاش باود ریت و کلاک کاری میکرو رو معرفی کنید : از این ماکرو واسه مقدار دهی به UBRR استفاده میکنه
              کد:
              UART_BAUD_SELECT	( 	baudRate,
              xtalCpu 		 )

              2-دو تا دیفاین دیگه هست که باهاش سایز بافر حلقه ای ارسال و دریافت که داخل برنامه استفاده میشه رو تعیین میکنید...شما فقط سایزش رو تعیین میکنید.اینطوری که خودش گفته باید سایز معرفی شده از سوی شما توانی از عدد 2 باشه مثلا 4 و 8و 16 و.....
              کد:
              UART_RX_BUFFER_SIZE  32
              UART_TX_BUFFER_SIZE  32

              3-یک متد هم هست که باید قبل از فعال کردن اینتراپت عمومی یا همون ()sei فراخوانیش کنید :
              کد:
              void uart_init	( 	unsigned int 	baudrate	 )

              4-با این متد میتونید یک کاراکرت ارسال کنید :
              کد:
              void uart_putc	( 	unsigned char 	data	 )

              5-با این یکی هم میشه یک رشته رو ارسال کرد:کافیه که تابع رو فراخوانی کنید و رشته مورد نظر رو به عنوان آرگومان بهش معرفی کنید :
              کد:
              void uart_puts	( 	const char * 	s	 )

              6-این یکی هم رشته میفرسته با این تفاوت که رشته مورد نظر داخل حافظه فلش سیو شده :
              کد:
              void uart_puts_p	( 	const char * 	s	 )

              7-این یکی هم واسه دریافت یک بایت هست.البته خروجی از نوع int هست که 2بایت رو شامل میشه.بایت کم ارزش حاوی اطالاعات و بایت پر ارزش هم وضعیت سلامت بایت دریافتی رو نشون میده اگه 0 بود یعنی اینکه بایت صحیح و سالم به دستتون رسیده ...اررور های دیگه ش رو هم میتونید داخا همون صفحه بینید که البته زیاد به کارتون نمیاد...
              کد:
              unsigned int uart_getc	( 	void 		 )
              با همین چند خط میتونید راحت از UART میکرو استفاده کنید....کار خاصی نداره....به ترتیبی که ک گفتم اول باود ریت و کلاک رو معرفی کنید و بعدش هم به راحتی ازش استفاده کنید...
              موفق باشید
              تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

              www.intelart.ir


              ساخت کنترلر دما PID فازی با AVR [آموزشی]

              دیدگاه


                #22
                پاسخ : آرایه در زبان Basic !!!

                نوشته اصلی توسط RoboRazi
                راستی مثل اینکه lcd های دیگری با اینچ بالا (حدود 4.5) هم وجود داره که حتی میشه به ATMEGA32 متصل کرد،میگم اگه با این سایز ال سی دی وجود داره بهتره که از همون ال سی دی استفاده کرد ممکنه در این مورد کمک کنید.
                من تا به حال این السیدی ها رو وصل نکردم...تجربه کار باهاشون رو ندارم...بهتره از دوستان دیگهبپرسید...
                این لینکو ببین به دردت میخوره یا نه :
                http://www.eca.ir/forum2/index.php?t...3619#msg563619
                تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                www.intelart.ir


                ساخت کنترلر دما PID فازی با AVR [آموزشی]

                دیدگاه


                  #23
                  پاسخ : آرایه در زبان Basic !!!

                  این برنامه ای که با URT نوشتم
                  ولی ارور میده در حد تیم ملی oo:
                  کد:
                  #include <mega32.h>
                  #include <stdio.h>
                  #include <uart.h>
                  
                  #define UART_BAUD_SELECT	(9600,8000000)
                  #define UART_TX_BUFFER_SIZE  32
                  void main(void)
                  {
                  PORTD=0x00;
                  DDRD=0xFF;
                  DDRA=0x00;
                  while (1)
                     {
                     k=PINA;
                     wait_ms(200);
                     void uart_putc(unsigned char k);
                  
                      }
                  }
                  اینم از اروراتش**************
                  Error: C:\Documents and Settings\Administrator.RoboRazi\Desktop\New Folder (3)\uart.h(52), included from: urt.c: #error directive: "This library requires AVR-GCC 3.4 or later, update to newer AVR-GCC compiler !"
                  و اینم هشدارش:*********************
                  Warning: C:\Documents and Settings\Administrator.RoboRazi\Desktop\New Folder (3)\uart.h(51), included from: urt.c: undefined symbol '__GNUC__', assumed zero
                  Warning: C:\Documents and Settings\Administrator.RoboRazi\Desktop\New Folder (3)\uart.h(51), included from: urt.c: undefined symbol '__GNUC_MINOR__', assumed zero
                  صبرت که تمام شد نرو!
                  "معرفت"
                  تازه از آن لحظه آغاز می شود...

                  دیدگاه


                    #24
                    پاسخ : آرایه در زبان Basic !!!

                    کد:
                    Error: C:\Documents and Settings\Administrator.RoboRazi\Desktop\New Folder (3)\uart.h(52), included from: urt.c: #error directive: "This library requires AVR-GCC 3.4 or later, update to newer AVR-GCC compiler !"
                    خب کامپایلری که ازش استفاده میکنید باید AVR-GCC نسخه 3.4 به بالا باشه...
                    احیانا با کدویژن که کامپایل نکردید؟
                    باید از Atmel Studio یا همون AVR studio یا هر برنامه دیگه ای که از کامپایلر AVR-GCC استفاده میکنه استفاده کنید...

                    کد های برنامه تون مشکلی نداره چون اروری در مورد کدها نداده...فقط از کامپایلر AVR-GCC باید استفاده کنید...
                    تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                    www.intelart.ir


                    ساخت کنترلر دما PID فازی با AVR [آموزشی]

                    دیدگاه


                      #25
                      پاسخ : آرایه در زبان Basic !!!

                      برنامه قبلی با کدویژن ران کرده بودم...
                      اینو با AVR studio ولی بازم ارور میده....
                      کد:
                      #ifndef F_CPU
                      #define F_CPU 8000000UL
                      
                      #endif
                      
                      #include <avr/io.h>
                      #include <util/delay.h>
                      #include "uart.h"
                      
                      #define UART_BAUD_SELECT	(9600,8000000)
                      #define UART_TX_BUFFER_SIZE  32
                      
                      int main(void)
                      {
                      	unsigned char j;
                      	DDRA=0x00;
                      	DDRD=0x02;
                        while(1)
                        {
                          j=PINA;
                          _delay_ms(200);
                          extern void uart_putc(j);
                      		 
                        }
                      }
                      اینم از اروره و هشدارا:
                      صبرت که تمام شد نرو!
                      "معرفت"
                      تازه از آن لحظه آغاز می شود...

                      دیدگاه

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