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





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









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









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






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

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

نمایش نتایج: از 1 به 6 از 6
  1. #1
    2010/07/08
    134
    3
    aed

    مشکل اجرای برنامه در STM32F103

    سلام
    من از هدر برد فروشگاه استفاده می کنم.
    با استفاده از کتابخانه CMSYS برخی از قسمت های میکرو را راه اندازی کردم. ولی جند مشکل برام پیش اومده:
    من برنامه رو کامپایل و در میکرو پروگرام می کنم و بدون مشکل برنامه اجرا می شه، اما گاهی اوقات که چند خط کد به برنامه اضافه می کنم، برنامه بدون خطا کامپایل می شه ولی اصلا اجرا نمی شه. به عنوان مثال به کد زیر نگاه کنید:
    کد:
    #include "stm32f10x.h"
    #include <string.h>
    #include <stdio.h>
    #include <math.h>
    #include "main.h"
    #define ADC_BUFFER_LEN 5000
    #define VREF 3.3
    uint8_t Buffer[] = "Hello word. This is me.";
    //uint16_t CCR1_Val = 1000;
    //uint16_t capture = 0;
    //uint8_t gDMAFlag = 0;
    uint16_t gADC1[ADC_BUFFER_LEN], gADC2[ADC_BUFFER_LEN];
    uint8_t gRDY = 0;
    
    int main (void)
    {
    	uint16_t i, frq;
    	//int32_t sum;
    	char str[65];
    	double flickerFrq, fsum, power, sum, avg;
    	int16_t d1, d2, df, ramp, lastramp;
    	double volt[ADC_BUFFER_LEN];
    
    	init_mcu();
    
    	print(UART4, "Start\r\n");
    	for (i = 0; i < 10; i++) gADC1[i] = gADC2[i] = 0;
    	/* TIM3 enable counter */
    	TIM_Cmd(TIM3, ENABLE);
    	avg = read_adc();
    	while(1)
    	{
    		if (gRDY)
    		{
    			gRDY = 0;
    			/* average of samples */
    			sum = 0.0;
    			for (i = 0; i < ADC_BUFFER_LEN; i++)
    			{
                    //volt[i] = (double)gADC2[i] * 3;
    				volt[i] = volt[i];
    				sum += volt[i];
    			}
    			/* ... */
    		}
    	}
    }
    وقتی در حلقه for خط
    کد:
    //volt[i] = (double)gADC2[i] * 3;
    اضافه می شود، برنامه دیگر اجرا نمی شود،یعنی پس از پزوگزام کزدن، دستور پرینت اول برنامه نیز اجرا نمی شود. اما با حذف این خط برنامه و پروگرام کردن میکرو، برنامه اجرا می شود. البته نا گفته نماند که دستورات دیگری نیز در برنامه وجود دارد که در اینجا ذکر نشده است. از وقفه DMA هم استفاده شده است.
    در یک حالت دیگر هم این مشکل را دیدم و این بود که در وقفه اتمام ترانسفر DMA ، برای دیباگ کردن از دستور چاپ کردم استفاده کردم و برنامه به درستی اجرا می شد. با پاک کردن دستور چاپ کردن، برنامه اجرا نشد و با کمی تغییرات و جابجا کردن کد در تابع main دوباره برنامه اجرا شد. مقدار stack و heap را هم در فایل startup به ترتیب از 400 , 100 به 800 , 200 افزایش دادم اما مشکل برطرف نشد. لطفا راهنمایی بفرمایید که مشکل از کجاست.
    مشکل دیگری که دارم در مورد ADC است. ADC را در حالت تریگر با تایمر 3 فعال کردم و نتیجه تبدیل را با استفاده از DMA در یک آرایه قرار می دهم. مشکل اینجاست که با فعال کردن تایمر، ADC تریگ نمی شود و حتما باید یک بار به صورت نرم افزاری (با استفاده از تابع زیر) مقدار ADC خوانده شود تا پس از آن با بایمر تریگ شود.
    کد:
    uint16_t read_adc (void)
    {
    	uint16_t adc;
    	/* Start ADC1 Software Conversion */
    	ADC_SoftwareStartConvCmd(ADC1, ENABLE);
    	/* wait for conversion complete */
    	while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC)){}
    	/* read ADC value */
    	adc=ADC_GetConversionValue(ADC1);
    	/* clear EOC flag */
    	ADC_ClearFlag(ADC1, ADC_FLAG_EOC);
    	return adc;
    }
    با تشکر
  2. #2
    2007/11/30
    شيراز
    14
    9

    پاسخ : مشکل اجرای برنامه در STM32F103

    سلام
    مشکل شما در فضای پشته میکروتون هست
    داده ها و ارایه هاتون بیشتر از فضای پشته پیش فرض هست میتونید از تو فایل استارت اپ میکروتون مقدار استک و هیپ رو بیشتر کنید
    Stack_Size EQU 0x00000800

    AREA STACK, NOINIT, READWRITE, ALIGN=3
    Stack_Mem SPACE Stack_Size
    __initial_sp

    ; <h> Heap Configuration
    ; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
    ; </h>

    Heap_Size EQU 0x00002000

    AREA HEAP, NOINIT, READWRITE, ALIGN=3
    __heap_base
    Heap_Mem SPACE Heap_Size
    __heap_limit
  3. #3
    2007/11/26
    tehran
    380
    10

    پاسخ : مشکل اجرای برنامه در STM32F103

    http://www.eca.ir/forum2/index.php/topic,10159.0.html
    Engineering is the art of making what you want from things you can get.
    اموزش DSP ...........................
    http://www.eca.ir/forum2/index.php?topic=29824.0
    http://www.eca.ir/forum2/index.php?topic=32324.0
  4. #4
    2010/07/08
    134
    3
    aed

    پاسخ : مشکل اجرای برنامه در STM32F103

    نقل قول نوشته اصلی توسط moein b
    سلام
    مشکل شما در فضای پشته میکروتون هست
    داده ها و ارایه هاتون بیشتر از فضای پشته پیش فرض هست میتونید از تو فایل استارت اپ میکروتون مقدار استک و هیپ رو بیشتر کنید
    سلام و با تشکر از شما. مشکل من دقیقا همین چیزی بود که شما فرمودید.تعداد متغیرهای سراسری برنامه خیلی زیاد بود.
  5. #5
    2016/05/29
    2
    0

    پاسخ : مشکل اجرای برنامه در stm32f103

    سلام خدمت دوستان

    من یه پروژه نوشتم ولی با ارور های زیر روبرو میشم ممنون میشم راهنماییم کنید

    Build target 'Target 1'
    compiling main.c...
    main.c: Error: C3065E: type of input file 'Liberary\CMSIS\CM3\CoreSupport' unknown
    main.c:
    main.c: Error: C3065E: type of input file 'Liberary\CMSIS\CM3\DeviceSupport\ST\STM32F10x' unknown
    main.c:
    main.c: Error: C3065E: type of input file 'Liberary\CMSIS\CM3\DeviceSupport\ST\STM32F10x\sta rtup' unknown
    main.c:
    Target not created





  6. #6
    2010/07/08
    134
    3
    aed

    پاسخ : مشکل اجرای برنامه در stm32f103

    سلام. کد خطا رو در گوگل سرچ کنید. به نظرم یه جایی تو نامگذاری فایل ها یا پوشه ها خطا دارید. تو لینک زیر نوشته که کامپایلرها ممکنه با کاراکتر فاصله در نام فایل ها یا پوشه ها مشکل داشته باشند. نام یکی از فایل های شما sta rtup است.

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

    عضویت


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

    عضویت


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

    عضویت

نمایش نتایج: از 1 به 6 از 6

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

  1. مشکل در اجرای برنامه
    توسط ((O-I-O)) در انجمن میکروکنترلرهای AVR
    پاسخ: 19
    آخرين نوشته: 2015/11/30, 10:58
  2. مشکل در اجرای برنامه
    توسط eehsan11 در انجمن میکروکنترلرهای AVR
    پاسخ: 2
    آخرين نوشته: 2014/07/18, 13:15
  3. مشکل در اجرای برنامه S7_V5.5
    توسط hamedbmx در انجمن PLC
    پاسخ: 1
    آخرين نوشته: 2013/02/11, 17:27
  4. مشکل در اجرای برنامه run
    توسط sorena01 در انجمن نرم افزار
    پاسخ: 3
    آخرين نوشته: 2009/05/22, 05:59
  5. مشکل در اجرای برنامه
    توسط CONTRONIC در انجمن میکروکنترلرهای AVR
    پاسخ: 5
    آخرين نوشته: 2009/03/31, 09:03

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

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

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

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

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