NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3094 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 18 از 18

موضوع: کار نکردن rs485 برد کویر

  1. #1
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    Exclamation کار نکردن rs485 برد کویر

    سلام
    من مثال 15(RS485) را روی برد lpc 1788 میریزم ولی هیج خروجی نداره.
    قبلا از UART1 استفاده کرده بودم مشکلی نداشت ولی حالا UART 3 کانفیگ نمیشه.
    قسمت کانفیگ را میزارم به نظرتون مشکل از کوجاس.
    فايل هاي پيوست شده فايل هاي پيوست شده
    ویرایش توسط sravakhah : 04-10-2015 در ساعت 11:31

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    کاربر فعال
    تاریخ عضویت
    May 2014
    نوشته ها
    198
    تشکر
    14
    تشکر شده 79 بار در 71 پست

    پیش فرض

    یعنی تو این بورد هم uart1 هم uart3 ترنسیور داره؟ یا اصلا بدون ترنسیور داری تست میکنی؟
    شماتیک rs-485 برد رو اگه بزاری شاید بیشتر بتونیم کمک کنیم

  4. تشکرها از این نوشته :


  5. #3
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    نه
    از UART1 که 232 استفاده میکنم
    من این طور برداشت میکنم که اصلا uart 3 کانفیگ نمیشه که بخواد adm را راه بندازه

    - - - Updated - - -

    شماتیکم همون شماتیک کویره پورت 4.26 تا 4.29 برا 485 گذاشته شده.

    - - - Updated - - -

    شما برد کویرو داری؟

  6. #4
    کاربر فعال
    تاریخ عضویت
    May 2014
    نوشته ها
    198
    تشکر
    14
    تشکر شده 79 بار در 71 پست

    پیش فرض

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

  7. #5
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    شماتیکشا ضمیمه میکنم
    کد را نگاه کن از cmsis استفاده کردم
    به نظرت مشکلی میبینی
    دانلود فایل Download LPC1788 Re1 pdf از آپلود آی آر

  8. #6
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    .کد کانفیگ را در زیر آوردم





    کد:
    #include "lpc_types.h" #include "lpc177x_8x.h" #include "debug_frmwrk.h" #include "lpc177x_8x_gpio.h" #include "lpc177x_8x_pinsel.h" /* Private function prototypes -----------------------------------------------*/ void USART_Configuration(void); /******************************************************************************* * Function Name : main * Description : Main program * Input : None * Output : None * Return : None * Attention : None *******************************************************************************/ int main(void) { GPIO_Init(); PINSEL_ConfigPin(4,26,0); /* P4.26 - GPIO */ GPIO_SetDir(4, (1<<26), 1); /* Output Mode */ PINSEL_ConfigPin(4,27,0); /* P4.27 - GPIO */ GPIO_SetDir(4, (1<<27), 1); /* Output Mode */ USART_Configuration(); GPIO_SetValue(4, (1<<26)); //TX ENABLE GPIO_SetValue(4, (1<<27)); //RX ENABLE UARTPuts_( UART_3, "aa" ); UARTPuts_( UART_3, "* *" ); UARTPuts_( UART_3, "* Thank you for using EV-LPC1788-SDK Development Board £،^_^ *" ); UARTPuts_( UART_3, "* *" ); UARTPuts_( UART_3, "*****************************************************************" ); } } /******************************************************************************* * Function Name : USART_Configuration * Description : Configure USART1 * Input : None * Output : None * Return : None * Attention : None *******************************************************************************/ void USART_Configuration(void) { UART_CFG_Type UARTConfigStruct; /* * Initialize UART1 pin connect * P0.15: TXD * P0.16: RXD */ PINSEL_ConfigPin(4, 28, 1); PINSEL_ConfigPin(4, 29, 1); /* Initialize UART Configuration parameter structure to default state: * Baudrate = 115200bps * 8 data bit * 1 Stop bit * None parity */ UART_ConfigStructInit(&UARTConfigStruct); /* Re-configure baudrate to 115200bps */ UARTConfigStruct.Baud_rate = 115200; /* Initialize DEBUG_UART_PORT peripheral with given to corresponding parameter */ UART_Init(UART_3, &UARTConfigStruct); /* Enable UART Transmit */ UART_TxCmd(UART_3, ENABLE); } /********************************************************************************************************* END FILE *********************************************************************************************************/
    ویرایش توسط sigma-mx : 04-10-2015 در ساعت 20:18 دلیل: فرمت بندی برنامه با تگ کد

  9. #7
    کاربر فعال
    تاریخ عضویت
    May 2014
    نوشته ها
    198
    تشکر
    14
    تشکر شده 79 بار در 71 پست

    پیش فرض

    الان مشکل حل شد؟

  10. #8
    کاربر فعال
    تاریخ عضویت
    May 2014
    نوشته ها
    198
    تشکر
    14
    تشکر شده 79 بار در 71 پست

    پیش فرض

    اینجا فانکشن دوم رو فعال کردی
    PINSEL_ConfigPin(4, 28, 1);
    PINSEL_ConfigPin(4, 29, 1);
    تو قبلی فانکشن سوم
    PINSEL_ConfigPin(4, 28, 2); PINSEL_ConfigPin(4, 29, 2);
    طبق دیتا شیت فانکشن سوم درست باید باشه.
    صفحه 32 دیتا شیت اینطوری میگه

  11. تشکرها از این نوشته :


  12. #9
    مدیر بخش STM32 sigma-mx آواتار ها
    تاریخ عضویت
    Nov 2009
    نام
    سعید شریفیان
    نوشته ها
    1,421
    تشکر
    804
    تشکر شده 2,520 بار در 978 پست

    پیش فرض

    دوستان سورس کد هاتون رو جهت خواناتر شدن داخل تگ code قرار بدید (تو بخش تنظیمات اضافی علامت #).

  13. کاربران : 3 تشکر کرده اند از شما sigma-mx برای ارسال این پست سودمند:


  14. #10
    کاربر فعال
    تاریخ عضویت
    Jul 2013
    نوشته ها
    153
    تشکر
    42
    تشکر شده 47 بار در 38 پست

    پیش فرض

    شما از برد زرد رنگه استفاده می کنید؟
    اگه آره پایه هاش وارونس.

  15. #11
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    سلام
    PINSEL_ConfigPin را
    همه جوره امتحان کردم نشد.
    الان از Uart 1,2 رااز برد کشیدم بیرون و رو برد برد به adm485 دادم در ضمن enable را هم به 5 وصل کردم.
    مشکل حل شد ولی با باد ریت 9600 وقتی باد ریتا رو 115200 میذارم دیتا مزخرف میفرسته
    دارم بازم روش کار میکنم

  16. #12
    کاربر فعال
    تاریخ عضویت
    May 2014
    نوشته ها
    198
    تشکر
    14
    تشکر شده 79 بار در 71 پست

    پیش فرض

    حالا واقعا بر عکس بوذ اتصالشون؟

  17. #13
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    نه
    من از برد قرمز رنگه استفاده میکنم

  18. تشکرها از این نوشته :


  19. #14
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    مثال خود کویر برا rs485 مشکل داره(uart 3 )را کانفیگ کرده، تو عمل دیتا مبادله نمیشه کد را میزارم ببینید مشکل از کجاس
    ممنون




    کد:
    /****************************************Copyright (c)****************************************************
    **                                      
    **                                 http://www.powermcu.com
    **
    **--------------File Info---------------------------------------------------------------------------------
    ** File name:               main.c
    ** Descriptions:            This example describes how to use RS485 functionality on UART of LPC1788
    **
    **--------------------------------------------------------------------------------------------------------
    ** Created by:              AVRman
    ** Created date:            2012-8-18
    ** Version:                 v1.0
    ** Descriptions:            The original version
    **
    **--------------------------------------------------------------------------------------------------------
    ** Modified by:             
    ** Modified date:           
    ** Version:                 
    ** Descriptions:            
    **
    *********************************************************************************************************/
    
    
    /* Includes ------------------------------------------------------------------*/
    #include "lpc_types.h"
    #include "lpc177x_8x.h"
    #include "debug_frmwrk.h"
    #include "lpc177x_8x_gpio.h"
    #include "lpc177x_8x_pinsel.h"
    
    
    /* Private function prototypes -----------------------------------------------*/
    void USART_Configuration(void);
    
    
    /*******************************************************************************
    * Function Name  : Delay
    * Description    : Delay Time
    * Input          : - nCount: Delay Time
    * Output         : None
    * Return         : None
    * Attention		 : None
    *******************************************************************************/
    void  Delay (uint32_t nCount)
    {
    	for(; nCount != 0; nCount--);
    }
    
    
    /*******************************************************************************
    * Function Name  : main
    * Description    : Main program
    * Input          : None
    * Output         : None
    * Return         : None
    * Attention		 : None
    *******************************************************************************/
    int main(void)
    {
        /* 485_TX_EN   P4.26 */
        /* 485_RX_EN   P4.27 */
    	PINSEL_ConfigPin(4,26,0);	   /* P4.26 - GPIO */
        GPIO_SetDir(4, (1<<26), 1);	   /* Output Mode */
    
    
    	PINSEL_ConfigPin(4,27,0);	   /* P4.27 - GPIO */
        GPIO_SetDir(4, (1<<27), 1);	   /* Output Mode */
    
    
    	USART_Configuration();
    
    
    	/* RS485 Output Mode */
    	GPIO_SetValue( 4, (1<<26) );   /* 485_TX_EN Enable */
    	GPIO_SetValue( 4, (1<<27) );   /* 485_RX_EN Disable */ 
     
    	UARTPuts_( UART_3, "*****************************************************************" );
    	UARTPuts_( UART_3, "*                                                               *" );
    	UARTPuts_( UART_3, "*   Thank you for using EV-LPC1788-SDK Development Board £،^_^  *" );
    	UARTPuts_( UART_3, "*                                                               *" );
    	UARTPuts_( UART_3, "*****************************************************************" );
    
    
    	/* Infinite loop */
    	while(1)
    	{
    		/* RS485 Input Mode */
    		GPIO_ClearValue( 4, (1<<26) );  /* 485_TX_EN Disable */ 
    		GPIO_ClearValue( 4, (1<<27) );  /* 485_RX_EN Enable */
    	
    	    /* Serial port receive data */
    		/* import HY-LPC1788-SDK */
    		while( UARTGetChar(UART_3) !='E');
    		while( UARTGetChar(UART_3) !='V');
    		while( UARTGetChar(UART_3) !='-');
    		while( UARTGetChar(UART_3) !='L');
    		while( UARTGetChar(UART_3) !='P');
    		while( UARTGetChar(UART_3) !='C');
    		while( UARTGetChar(UART_3) !='1');
    		while( UARTGetChar(UART_3) !='7');
    		while( UARTGetChar(UART_3) !='8');
    		while( UARTGetChar(UART_3) !='8');
    		while( UARTGetChar(UART_3) !='-');
    		while( UARTGetChar(UART_3) !='S');
    		while( UARTGetChar(UART_3) !='D');
    		while( UARTGetChar(UART_3) !='K');
    	
    		/* RS485 Output Mode */
    		GPIO_SetValue( 4, (1<<26) ); 	/* 485_TX_EN Enable */
    		GPIO_SetValue( 4, (1<<27) );    /* 485_RX_EN Disable */ 
    		Delay(0xfffff);
    
    
    	    UARTPuts_( UART_3, "RS485 receive data OK");
    	}
    }
    
    
    /*******************************************************************************
    * Function Name  : USART_Configuration
    * Description    : Configure USART1 
    * Input          : None
    * Output         : None
    * Return         : None
    * Attention		 : None
    *******************************************************************************/
    void USART_Configuration(void)
    { 
    	UART_CFG_Type UARTConfigStruct;
    	/*
    	 * Initialize UART3 pin connect
    	 * P4.28: TXD
    	 * P4.29: RXD
    	 */
    	PINSEL_ConfigPin(4, 28, 2);
    	PINSEL_ConfigPin(4, 29, 2);
    
    
    	/* Initialize UART Configuration parameter structure to default state:
    	 * Baudrate = 115200bps
    	 * 8 data bit
    	 * 1 Stop bit
    	 * None parity
    	 */	UART_ConfigStructInit(&UARTConfigStruct);
    	/* Re-configure baudrate to 115200bps */
    	UARTConfigStruct.Baud_rate = 115200;
    
    
    	/* Initialize DEBUG_UART_PORT peripheral with given to corresponding parameter */
    	UART_Init(UART_3, &UARTConfigStruct);
    
    
    	/* Enable UART Transmit */
    	UART_TxCmd(UART_3, ENABLE);
    }
    
    
    /*********************************************************************************************************
          END FILE
    *********************************************************************************************************/

  20. #15
    کاربر فعال
    تاریخ عضویت
    May 2014
    نوشته ها
    198
    تشکر
    14
    تشکر شده 79 بار در 71 پست

    پیش فرض

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

  21. تشکرها از این نوشته :


  22. #16
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    ممنون که جواب میدی

  23. تشکرها از این نوشته :


  24. #17
    کاربر علاقه مند
    تاریخ عضویت
    Jul 2011
    نوشته ها
    25
    تشکر
    18
    تشکر شده 7 بار در 6 پست

    پیش فرض

    مشکل حل شد
    IC ADM روی برد مشکل داشت
    عوض کردم درست شد

  25. #18
    کاربر فعال
    تاریخ عضویت
    May 2014
    نوشته ها
    198
    تشکر
    14
    تشکر شده 79 بار در 71 پست

    پیش فرض

    به سلامتی

  26. تشکرها از این نوشته :


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

  1. زمانبندی در rs485
    توسط vahidasm در انجمن AVR
    پاسخ: 6
    آخرين نوشته: 13-10-2017, 23:28
  2. کمک در pcb و Rs485
    توسط fateme91 در انجمن طراحی و ساخت و آزمایش مدارت الکترونیک
    پاسخ: 6
    آخرين نوشته: 03-12-2014, 20:01
  3. Rs485
    توسط gbg در انجمن الکترونیک
    پاسخ: 13
    آخرين نوشته: 08-07-2014, 18:09
  4. ولتاژ کاری و خروجی در rs485
    توسط bahram68sh در انجمن را اندازی امکانات جانبی عمومی
    پاسخ: 2
    آخرين نوشته: 20-11-2013, 12:52
  5. RS485 with at91sam7x
    توسط drmb3650 در انجمن AT91 series (ATMEL)
    پاسخ: 4
    آخرين نوشته: 05-09-2013, 16:23

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

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