NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 4022 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
صفحه 2 از 3 نخستنخست 123 آخرینآخرین
نمایش نتایج: از 21 به 40 از 44

موضوع: مشکل باstm32f103

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

    پیش فرض

    سلام
    مهندس اولی که شکل کلی تابع هست . و دومی ( خط پایین ) یک نمونه مثال که اگه اشتباه نکنم SWJ رو disable میکنه و پایه هاش تبدیل به gpio میشند . اگه منظور شما مرجع این پارامتر های مثل gpio_remap_swj_disable هست که گفتم قبلا اگه تو فایل gpio.h (یعنی stm32f10x_gpio.h ) رو بگردید 30-40 مورد از این پارامتر ها پیدا میکنید که جلوی هر کدوم توضیحشو نوشته ... تمامش هم مربوط به ریمپ کردن یک واحد هست .مثلا واحد usart1 پایه های rx,tx مربوط به دو پایه خاص هست دیگه ... شما میتونید با ریمپ کردن اونا رو رو دو پایه مشخص دیگه ( البته نه هر پایه ای ! تو دیتاشیت گفته شده ) منتقل کنید .
    قسمت دوم تابع هم که باید enable یا disable باشه . یعنی شما این قابلیت و ریمپ رو فعال یا غیر فعال میکنید .
    در مورد اینکه آیا باز هم پین هایی هستند که gpio نشدن تو همون گزینه ها بگرد چند تا مورد هست برای غیر فعال کردن swd و jtag که باید از اونا استفاده کنی .

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


  3. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نام
    Advertising world
    نوشته ها
    Many
     

  4. #22
    کاربر علاقه مند
    تاریخ عضویت
    Oct 2009
    نام
    کاظم
    نوشته ها
    33
    تشکر
    11
    تشکر شده 7 بار در 6 پست

    پیش فرض

    مهندس من دقیقا stm32f10x_gpio.h رو نگاه کردم
    وهمینطور دیتاشیت stm رو
    اونجا 3 موضوع بود که هنوز برام حل نشدست
    1)main function after rest
    (که خوب یعنی کارکرد اصلی pinبعد از reset وقبل از اعمال تغییر به پین)
    2)default
    3)Remap
    حالامنظور شما اینه که اگه توی تابع GPIO_PinRemapConfig( GPIO_Remap_SWJ_NoJTRST, DISABLE);
    disable بذاریم config پین میره روی I/Oواگه enableبذاریم میره روی remap?
    پس default اینجا چیکارست ؟
    یا اینکه توی تابع
    void GPIO_PinRemapConfig(uint32_t GPIO_Remap, FunctionalState NewState);
    بجای uint32_t GPIO_Remap حالت فعلی پین رو بذاریم و بجای FunctionalState NewState حالتی رو که میخوایم پین بهش تبدیل بشه؟
    وکلا اگه یه مثال باشه خیلی بهتره چون من خیلی از تابع های stm32f10x_gpio.hرو امتخان کردم ولی از هیچ کدومش جواب نگرفتم بعد یه سوال دیگه اگه بخوایم یه پین تو حالت I/O باشه با ید حتما خاصیتش رو به یه پین دیگه بدیم؟
    حالا من الان توی این برنامه ای که دارم فقط میخوام همه pin هام ioباشن اینم برنامه
    فايل هاي پيوست شده فايل هاي پيوست شده

  5. #23
    کاربر علاقه مند
    تاریخ عضویت
    Oct 2009
    نام
    کاظم
    نوشته ها
    33
    تشکر
    11
    تشکر شده 7 بار در 6 پست

    پیش فرض

    در واقع الان گیج گیجم
    ویرایش توسط kazem67sh : 03-12-2012 در ساعت 15:02

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

    پیش فرض

    مهندس من دقیقا stm32f10x_gpio.h رو نگاه کردم
    وهمینطور دیتاشیت stm رو
    اونجا 3 موضوع بود که هنوز برام حل نشدست
    1)main function after rest
    (که خوب یعنی کارکرد اصلی pinبعد از reset وقبل از اعمال تغییر به پین)
    2)default
    3)Remap
    حالامنظور شما اینه که اگه توی تابع GPIO_PinRemapConfig( GPIO_Remap_SWJ_NoJTRST, DISABLE);
    disable بذاریم config پین میره روی I/Oواگه enableبذاریم میره روی remap?
    پس default اینجا چیکارست ؟
    یا اینکه توی تابع
    void GPIO_PinRemapConfig(uint32_t GPIO_Remap, FunctionalState NewState);
    بجای uint32_t GPIO_Remap حالت فعلی پین رو بذاریم و بجای FunctionalState NewState حالتی رو که میخوایم پین بهش تبدیل بشه؟
    وکلا اگه یه مثال باشه خیلی بهتره چون من خیلی از تابع های stm32f10x_gpio.hرو امتخان کردم ولی از هیچ کدومش جواب نگرفتم بعد یه سوال دیگه اگه بخوایم یه پین تو حالت I/O باشه با ید حتما خاصیتش رو به یه پین دیگه بدیم؟
    حالا من الان توی این برنامه ای که دارم فقط میخوام همه pin هام ioباشن اینم برنامه
    ببین مهندس . اون جدولی که دیدی تو ستون اول نوشته Main Function که کاملا واضحه ... یعنی بطورپیش فرض بعد ریست پین ها تو این حالت قرار دارند که یا بصورت نام پین نوشته ( مثل PC11 ) که تو حالت GPIO قرار دارند و یا پین در حالت دیباگ ( مثل JTDI ) و یا پین های اسیلاتور و کریستال (مثل OSC32_IN ) . این از این .....

    تو ستون دوم و سوم اگه بالاشون رو نگاه کنی نوشته برای هر دو .. جزو Alternate function هستند . یعنی مثلا اگه رو پین PA9 ( که در حالت عادی GPIO هست ) واحد USART1 رو فعال کنیم ، حالت این پین میره رو USART1_TX .. یا اگه ،Timer1 رو فعال کنیم ، این پین میتونه TIM1_CH2 بشه ( کانال 2 تایمر 1 ) ..
    ولی تعدادی انتخاب برای ما گذاشته که برای چند GPIO - پین یا Alternate Function رو بتونیم جاشو عوض کنیم . برای سری های بالاتر این میکرو مثل سری Conectivity Line این انتخاب ها خیلی بیشتره و شما میتونید مثلا برای واحد سریال 3-4 تا پین مختلف رو انتخاب کنید ... پس اینم مفهوم Remap ..

    حالا اگه تو همون ستون اول نگاه کنی پین های A13-A14-A15-B3-B4 بطور پیش فرض تو مد دیباگ هستند و پین های D0-D1 هم برای اسیلاتور LSE هستند . حالا شما میری و تو همون فایل gpio.h که گفتم اون لیست ریمپ ها رو نگاه میکنی و با چند تا انتخابی که داری اون قابلیت رو فعال یا غیر فعال میکنی . معنی و مفهوم اونها هم کاملا معلومه و گفتم مقابلشون نوشته شده ... فقط حواست باشه ( تو تمامی کتابخانه های CMSIS ) ممکنه کلی توابع یا پارامتر نوشته شده باشه که برای میکروی شما نباشه . اینا کلی برای تمام خانواده نوشته شده .

    مثلا اینجا که نوشته GPIO_Remap_SWJ_NoJTRST و جلوش نوشته
    Full SWJ Enabled (JTAG-DP + SW-DP) but without JTRST
    و شما با نوشتن ENABLE در واقع میگویید که عبارت فوق رخ بده یعنی تمام امکانات SWJ فعال بشه اما بدون پین JTRST ... و اگه می خواهید به شکل اول برگرده همین عبارت رو DISABLE کنید تا خنثی بشه ..

    یا مثلا برای ریمپ کردن واحد CAN ( چون پین های CAN و USB بطور پیش فرض روی هم قرار گرفتند ) از این دستور باید استفاده کرد تا اونا رو رو B8 و B9 ریمپ کنیم :

    [PHP]GPIO_PinRemapConfig(GPIO_Remap1_CAN1,ENABLE);[/PHP]
    تو فایل هدر اگه نگاه کنید برای CAN نوشته :
    GPIO_Remap1_CAN1 ----> CAN1 Alternate Function mapping
    که تو دیتاشیت نوشته Remap1 برای واحد CAN روی پین های B8 و B9 منتقل میشه ..

    یا حق

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


  8. #25
    کاربر علاقه مند
    تاریخ عضویت
    Oct 2009
    نام
    کاظم
    نوشته ها
    33
    تشکر
    11
    تشکر شده 7 بار در 6 پست

    پیش فرض

    مهندس پس با این تفاصیر باید برنامه زیر pb3رو ببره روی حالت ioدیگه !
    ولی تو برنامه جواب نمیده
    امکان ش هست تابع مشکل داشته باشه؟(از همین سایت دانلود کردم)
    تصاوير کوچک فايل پيوست تصاوير کوچک فايل پيوست برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: Untitled.png
مشاهده: 33
حجم: 62.1 کیلو بایت  
    ویرایش توسط kazem67sh : 03-12-2012 در ساعت 21:21

  9. #26
    کاربر علاقه مند
    تاریخ عضویت
    Oct 2009
    نام
    کاظم
    نوشته ها
    33
    تشکر
    11
    تشکر شده 7 بار در 6 پست

    پیش فرض

    دوستان من کلی توی سایت های دیگه (st) گشتم ومورد رو پیدا کردم میزارم بقیه هم خواستن ببینن
    با تشکر از همه دوستان که وقت گذاشتن
    مشکل خط زیر بود که توی برنامه اضافه نشده بود
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE);


  10. کاربران : 2 تشکر کرده اند از شما kazem67sh برای ارسال این پست سودمند:


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

    پیش فرض

    این تاپیک الان به چشمم خورد . من فکر کردم مشکل شما حل شده بود !!
    عجب !!!!!!!! پس فعال کردن کلاک پورت یادت رفته بود . در مورد اون جداولی که قبلا بحثش رو کردم حواست باشه هر وقت بغیر از حالت عادی یعنی main function از حالت های alternate function استفاده کردی باید کلاک واحد AFIO رو هر فعال کنی که تو خطی که نوشتی هم این وجود داره ...

  12. #28
    کاربر فعال n340 آواتار ها
    تاریخ عضویت
    Aug 2008
    نام
    0511
    نوشته ها
    101
    تشکر
    9
    تشکر شده 11 بار در 9 پست

    پیش فرض

    من بلاخره با این روش تونستن پروگرم کنم
    اما باز بعد از پروگرم میکرو عکس العملی نشون نمیده
    برنامه ساده چشمک زدن پورت b هست
    که در اموزش ها ضمیمه شده
    ویرایش توسط n340 : 28-03-2013 در ساعت 21:46

  13. #29
    مدیرکل انجمنها Doloop آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    حسين
    نوشته ها
    1,964
    تشکر
    3,312
    تشکر شده 3,086 بار در 1,371 پست

    پیش فرض

    اگر نیاز به راهنمائی دارید فایل پروژه رو قرار بدید
    *** اللّهم عجّل لولیک الفرج ***

  14. #30
    کاربر فعال n340 آواتار ها
    تاریخ عضویت
    Aug 2008
    نام
    0511
    نوشته ها
    101
    تشکر
    9
    تشکر شده 11 بار در 9 پست

  15. #31
    مدیرکل انجمنها Doloop آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    حسين
    نوشته ها
    1,964
    تشکر
    3,312
    تشکر شده 3,086 بار در 1,371 پست

    پیش فرض

    سلام

    مهندس اون فایل رو بیخیال شو

    لایبرریش قدیمی بود دردسر زیاد داشت

    بیا اینو تست هم کردم توی سیمولاتور درسته ؟

    پورت B چشمک زنه

    راستش خودمم یه مشکلی داشتم موقع انجام این اون مشکل نبود تا حدودی گرفتم ایرادم کجاست

    سبب خیر بودی

    موفق باشی ...
    فايل هاي پيوست شده فايل هاي پيوست شده
    • نوع فایل: rar GPIO.rar (120.8 کیلو بایت, 67 نمايش)
    *** اللّهم عجّل لولیک الفرج ***

  16. کاربران : 2 تشکر کرده اند از شما Doloop برای ارسال این پست سودمند:


  17. #32
    کاربر فعال n340 آواتار ها
    تاریخ عضویت
    Aug 2008
    نام
    0511
    نوشته ها
    101
    تشکر
    9
    تشکر شده 11 بار در 9 پست

    پیش فرض

    مهندس من تازه st رو شروع کردم
    هیچی بلد نیستم
    Build target 'GPIO'
    compiling main.c...
    C:\Keil\ARM\Inc\ST\STM32F10x\stm32f10x.h(96): error: #35: #error directive: "Please select first the target STM32F10x device used in your application (in stm32f10x.h file)"
    compiling system_stm32f10x.c...
    C:\Keil\ARM\Inc\ST\STM32F10x\stm32f10x.h(96): error: #35: #error directive: "Please select first the target STM32F10x device used in your application (in stm32f10x.h file)"
    Target not created
    این ارور میده موقع کامپایل

  18. #33
    مدیرکل انجمنها Doloop آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    حسين
    نوشته ها
    1,964
    تشکر
    3,312
    تشکر شده 3,086 بار در 1,371 پست

    پیش فرض

    سلام

    درسته این پیغام میگه شما سری میکرو بر حسب حافظه فلشش رو توی هدر stm32f10x.h انتخاب نکردی
    این قسمت جدیدا به طور پیشفرض غیر فعاله و با درست کردنش دیگه توی پروژه های بعدی با RBT6 مشکلی نخواهد بود
    من هدر ویرایش شده رو برات کپی کردم ... توی فایل های پروژه هست اما چون از لایبرری کیل استفاده میکنه شما باید یکبار اون رو تغیر بدی ...

    توی تصویر زیر همه چیز مشخصه :

    برو توی هدر stm32f10x.h و خط 68 رو مطابق شکل کامنتش رو حذف کن ( /* */ )
    دقت کن خط 68 من و شما یکی باشه که قاعدتا هم همینطور باید باشه
    تصاوير کوچک فايل پيوست تصاوير کوچک فايل پيوست برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: stm32f10x.png
مشاهده: 34
حجم: 38.0 کیلو بایت  
    *** اللّهم عجّل لولیک الفرج ***

  19. #34
    کاربر فعال n340 آواتار ها
    تاریخ عضویت
    Aug 2008
    نام
    0511
    نوشته ها
    101
    تشکر
    9
    تشکر شده 11 بار در 9 پست

    پیش فرض

    دوست عزیز بازم همون ارور
    در خط 49 همچین عبارتی وجود داشت
    فکر کنم چون ورژن keil منو شما متغییر هست و با توجه به استفاده از هیدر keil این ارور پیش امده
    ورژن keil شما چنده؟

  20. #35
    مدیرکل انجمنها Doloop آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    حسين
    نوشته ها
    1,964
    تشکر
    3,312
    تشکر شده 3,086 بار در 1,371 پست

    پیش فرض

    من از 4.70a استفاده میکنم

    یعنی هنوز درست نشده ؟!!!

    خوب این ارور برای همون قسمته که با حذف کامنت مورد نظر درست میشه

    روی ارور دابل کلیک کن تا بری به محل خطای مورد نظر بعد از اونجا یه عکس قرار بده
    یه عکس هم از همون خط 49 قرار بده
    *** اللّهم عجّل لولیک الفرج ***

  21. #36
    کاربر فعال n340 آواتار ها
    تاریخ عضویت
    Aug 2008
    نام
    0511
    نوشته ها
    101
    تشکر
    9
    تشکر شده 11 بار در 9 پست

    پیش فرض

    پروگرم شد ولی باز هم میکرو استارت نشد
    احتمالا اسیب دیده
    چون موقع لحیم پایه 1 رو مثل (از روی متن رو ای سی) Avr گزاشتم و اشتباه بود
    امکانش هست؟

  22. #37
    مدیرکل انجمنها Doloop آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    حسين
    نوشته ها
    1,964
    تشکر
    3,312
    تشکر شده 3,086 بار در 1,371 پست

    پیش فرض

    ممکنه ...!!!

    میکروت الان داغ نمیکنه ..؟؟
    *** اللّهم عجّل لولیک الفرج ***

  23. #38
    مدير بخش STM32 sadmonew آواتار ها
    تاریخ عضویت
    Jun 2011
    نام
    صادق محمدي
    نوشته ها
    2,002
    تشکر
    6,283
    تشکر شده 3,115 بار در 1,408 پست

    پیش فرض

    نقل قول نوشته اصلی توسط n340 نمایش پست ها
    پروگرم شد ولی باز هم میکرو استارت نشد
    احتمالا اسیب دیده
    چون موقع لحیم پایه 1 رو مثل (از روی متن رو ای سی) avr گزاشتم و اشتباه بود
    امکانش هست؟
    سلام مهندس
    ببینید مقاومت بین پایه های vcc و gnd چند اهمه؟
    _____________________________________
    _____________________________________

  24. #39
    کاربر فعال n340 آواتار ها
    تاریخ عضویت
    Aug 2008
    نام
    0511
    نوشته ها
    101
    تشکر
    9
    تشکر شده 11 بار در 9 پست

    پیش فرض

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

  25. #40
    کاربر فعال n340 آواتار ها
    تاریخ عضویت
    Aug 2008
    نام
    0511
    نوشته ها
    101
    تشکر
    9
    تشکر شده 11 بار در 9 پست

    پیش فرض

    نکته جالب اینه که 3.3 رو به gnd اتصال میدیم میکرو راهندازی میشه
    vss-avss به gnd
    vdd-avdd-bat به 3.3
    وصل شده
    boot0
    boot1
    ازاد است و 3.3 ولت از سره رگولاتور گرفته شده
    ویرایش توسط n340 : 24-04-2013 در ساعت 20:22

صفحه 2 از 3 نخستنخست 123 آخرینآخرین

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

  1. راهنمایی پروگرام بردمینی stm32f103
    توسط MMBMMB20 در انجمن پروگرامرهای AVR.PIC.8051.XMEGA.ARM
    پاسخ: 15
    آخرين نوشته: 22-09-2013, 13:47
  2. میکروهای arm stm32f103
    توسط hello در انجمن گفت و گوي آزاد
    پاسخ: 1
    آخرين نوشته: 18-06-2013, 15:58
  3. دانلود cmsis برای stm32f103
    توسط meysam.z در انجمن stm32
    پاسخ: 1
    آخرين نوشته: 14-05-2013, 21:01
  4. usart stm32f103
    توسط lpln852 در انجمن stm32
    پاسخ: 6
    آخرين نوشته: 19-04-2013, 15:35
  5. خواندن از پین های stm32f103
    توسط kazem67sh در انجمن stm32
    پاسخ: 2
    آخرين نوشته: 08-11-2012, 20:54

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

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