Nikelec.ir آموزش الکترونیک و کامپیوتر

section-icon

انجمن ها

در مورد هر چیزی که می خواهید صحبت کنید!

خوش آمدید به

usart

در حال نمایش 15 نوشته (از کل 18)
  • نویسنده
    نوشته‌ها
  • سلام مهندس جان
    چرا تو سری stm32f746 ما دو تا usart2 داریم
    چطوری میتونیم تنظیم کنیم
    سوال بعدی اینه که برای تنظیم baud rate سرعت کانال 52mhzهست چه عددی باید قرار داد تو رجیستر brr

    عذر خواهی میکنم 54mhzهست
    و یک سوال دیگه رجیستر brr در stm32f746 انگار قسمتی برای اعشار نداره منظورم اون 4 بیت اول هست چه باید کرد مهندس
    ورجیستر cr1 در usart هم 8بیت اضلفه داره که من متوجه نشدم چه کاری انجام میده به نام های [DEDT[4:0

    سلام وقتتون بخیر .
    DEDT مدت زمان فاصله بین فعال کردن پایه فعال سازی درایور در ارتباطی مثل RS485 و ارسال دیتا رو مشخص می کنه .
    در مورد تنظیم Baud Rate باید طبق فرمولی که آموزش میدم عمل کنید( شما فقط فرکانس گفتید باد ریت مورد نظر نگفتید که حساب کنیم ) ( البته در میکرو انتخابی شما همانطور که اشاره کردید قسمت اعشار ندارید ) و کافیه مثل آموزش به قسمت توضیح مربوط به تنظیم Baud Rate رفرنس منوال میکرو F746 مراجعه کنید که فرمول مورد نظر پیدا می کنید .
    (از صفحه 1039 تا 1041 منوال dm00124865 با مثال هاش بخونید در آخر همین صفحات هم بادریت های مختلف در جدول هم براتون لیست کرده اگر به مشکلی و یا سوالی برخورد کردید اینجا مطرح کنید .)

    USART2 هم داشت یادم میرفت . متوجه منظورتون نشدم که میگید دوتاهست .شما کجا میبینید دو مورد رو ؟ در تصویر زیر من یک مورد میبینم :
    (برای میکرو شما هم هست )

     

    ضمیمه ها:

    سلام مهندس ارادت ممنون از راهنماییتون
    خیلی واسم جالب بو تو تصویر یک usart 2 هست ولی جالبه تو دیتا شیت PA2 و PA3 یکجا تعریف شدن به عنوان TX RX و PD5 و PD6 دوباره به عنوان TX .و RX معرفی شدن جالب تر اینکه من تو MX CUBE هم چک کردم اونجا هم همین بود

    ضمیمه ها:

    مهندس جان من با 54MHZ , باود یت 9600 عدد
    15F9 رو بدست اوردم

    ضمیمه ها:

    مهندس جان من تصاویر کد ها و رجستر هارو براتون میفرستم

    ضمیمه ها:

    بله الان متوجه منظورتون از دوتا بودن شدم . این دوتا بودن usart نیست از طریق تعداد مختلفی از GPIO ها به یک پریفرال می تونید دسترسی داشته باشید ( اصولا ).

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

    در مورد Baud Rate هم اگر تقسیم کلاکی نزده باشید بله عدد همین مقدار باید وارد رجیستر کنید .

    ممنون از شما
    مهندس جان این برنامه من مشکلی داره به نظرتون نمتونم USART رو راه بندازم شکم به این برنامه هست چون رو پایه RX ماژولم هیچ اطلاعاتی نمیاد

    البته مهندس جان اون سطر اول اشتباها usar2 رو عدد ریخته بودم اصلاح کردم usart3 شده ولی باز کار نمیکنه خروجی c10 که پایه tx هست ثابت رو 3.3v هست چراغ ماژولم هم روشن نمیشه انگار هیچ اطلاعاتی نمیره

    مشکل حل شد مهندس این سری 7 ظاهرا یه بیت داره TXE تو رجیستر ISRکه قبل از ارسال دیتا باید یک بشه
    فقط مشکل دیگه این که من کارکتر A رو میفرستم اینور تو کامپیوتر یه چیز دیگه ارسال میشه میتونید کمکم کنید ممنون میشم

    ضمیمه ها:

    خب الحمدالله .

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

    در این باره که گفتید می تونید یک برنامه مطمئن ( که از صحت کارکردش مطمئن هستید ) روی میکرو بریزید و برنامه رو اجرا کنید و فرضا اگر برنامه با BaudRate 9600 نوشته شده تنظیمات سمت سیستم رو هم روی همین BaudRate قرار بدید با اینکار متوجه میشید مشکل از سمت فرستنده که میکرو باشه هست یا از سمت گیرنده ( اول باید این مشخص بشه ) ( شاید تنظمیات سیستم مشکل داشته باشه شاید تنظیمات میکرو )( من احتمالا فردا ظهر برسم رجیستراتون بررسی کنم که داخل عکس ها گذاشتید اگر به نتیجه نرسیدید تا اون زمان انشاءالله بهتون میگم سمت میکرو درست ست شده یا نه )

    سلام مهندس جان ارادت
    من با CUBEMXبرنامه رو اجرا کردم و مشکلی تو سخت افزار نداشتم
    حالا با CMSIS کد نوشتم ولی فکر کنم یجاهایی ایراد داره
    ممنون میشم کمکم کنید من HSI رو با 16MHZ روشن کردم که البته دیفالت هم روشن هست بهدش شروع کردم به تنظیمات PLL و روشن کردنش
    ابتدا HSIرو تقسیم بر 8 کردم بهدش در 96 ضرب کردم وبر 2 تقسیم کردم حاصل شد96MHZ برای CYCCLKو در اخر APB1رو بر دو تقسیم کردم که عدد48MHZرو تحویل بده ولی میکرو قفل میشه و کار نمیکنه ممنون میشم یه برسی بفرمایید مشکل کار کجا هست

    ن

    D

    ضمیمه ها:

2

صدا

17

پاسخ

برچسب ها

این موضوع هیچ برچسبی نداره

در حال نمایش 15 نوشته (از کل 18)
  • شما برای پاسخ به این موضوع باید وارد شوید.