Forwarded from armeducation (Mahdi Zarkoob)
@armeducation
در حالت معمولی با قرار دادن دیتا در پایه های a تا g و dat و فعال کردن سگمنت مربوطه، نمایش در سون سگمنت انجام می شود. ولی می توان با تغییر الگوریتم کار، به شکل دیگری عمل کرد.
در نظر بگیرید برای نمایش 8 یا 9 یا .. تعداد بیشتری از سگمنت ها در سون سگمنت روشن شود. طبیعتا جریان کشی بیشتر خواهد شد. می توان در هر بار فقط یک سگمنت را روشن کرد و این کار به صورت چرخشی ادامه پیدا کند. مثلا می خواهید عدد 2 را نشان دهید. ابتدا فعال کردن شماره سون سگمنت1 -> a روشن و بعد a خاموش ، بعد b روشن و بعد b خاموش ، d روشن و بعد d خاموش ، e روشن و بعد e خاموش، g روشن و بعد g خاموش. بعد از این سراغ شماره بعدی سون سگمنت و عددی که قرار هست روی آن نمایش داده شود به همین شکل .....
فکر می کنید چه موقع نیاز به تغییر الگوریتم برنامه نویسی به منظور کاهش جریان کشی خواهید شد!؟
@armeducation
در حالت معمولی با قرار دادن دیتا در پایه های a تا g و dat و فعال کردن سگمنت مربوطه، نمایش در سون سگمنت انجام می شود. ولی می توان با تغییر الگوریتم کار، به شکل دیگری عمل کرد.
در نظر بگیرید برای نمایش 8 یا 9 یا .. تعداد بیشتری از سگمنت ها در سون سگمنت روشن شود. طبیعتا جریان کشی بیشتر خواهد شد. می توان در هر بار فقط یک سگمنت را روشن کرد و این کار به صورت چرخشی ادامه پیدا کند. مثلا می خواهید عدد 2 را نشان دهید. ابتدا فعال کردن شماره سون سگمنت1 -> a روشن و بعد a خاموش ، بعد b روشن و بعد b خاموش ، d روشن و بعد d خاموش ، e روشن و بعد e خاموش، g روشن و بعد g خاموش. بعد از این سراغ شماره بعدی سون سگمنت و عددی که قرار هست روی آن نمایش داده شود به همین شکل .....
فکر می کنید چه موقع نیاز به تغییر الگوریتم برنامه نویسی به منظور کاهش جریان کشی خواهید شد!؟
@armeducation
نمایش یک عدد در سون سگمنت :
در صورتی که پایه های متصل شده پشت سر هم باشد با ارسال عدد بدست آمده نمایش انجام می شود.
آند مشترک یا کاتد مشترک
@armeducation
در صورتی که پایه های متصل شده پشت سر هم باشد با ارسال عدد بدست آمده نمایش انجام می شود.
آند مشترک یا کاتد مشترک
@armeducation
armeducation
دوره آموزش میکروکنترلر ARM : STM32F103 (سطح مقدماتی متوسط) کاملا عملی ⏱ مدت 32 ساعت 🕔 زمان : 5 شنبه ها ساعت 9 الی 13 ▶️ شروع دوره : 5 شنبه 5 مهر ماه 97 (شرط حد نصاب) 5️⃣1️⃣ ظرفیت : 15 نفر 🔴 ظرفیت باقی مانده : 7 نفر 💲 شهریه : 300 هزار تومان، با تخفیف 285…
ظرفیت این دوره stm32 تکمیل است
درصورتی که قصد شرکت در سایر کلاس میکروکنترلرهای arm را دارید را دارید :
-میکرو
-حضوری یا ...
-ساعات آزاد
سطح مهارت C
-شهر
مشخص نمایید.
@mzarkoob
با سپاس
@armeducation
درصورتی که قصد شرکت در سایر کلاس میکروکنترلرهای arm را دارید را دارید :
-میکرو
-حضوری یا ...
-ساعات آزاد
سطح مهارت C
-شهر
مشخص نمایید.
@mzarkoob
با سپاس
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
راه اندازی سون سگمنت از صفر
- روشن کردن تک تک سگمنت ها
قرار دادن مقادیر :
0x01,0x02,0x04,0x08
0x10,0x20,0x40,0x80
@armeducation
- روشن کردن تک تک سگمنت ها
قرار دادن مقادیر :
0x01,0x02,0x04,0x08
0x10,0x20,0x40,0x80
@armeducation
نکته برنامه نویسی : تفاوت ~ و !
به صورت عملی می توان نتیجه را مشاهده کرد.
گاهی همین نکات کوچک و دانستن تفاوت ها راهگشاست.
@armeducation
به صورت عملی می توان نتیجه را مشاهده کرد.
گاهی همین نکات کوچک و دانستن تفاوت ها راهگشاست.
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
هر بار نمایش روی یک سون سگمنت
به نظر شما اگر سرعت چرخش این نمایش را زیاد کنیم به چه شکل خواهد شد؟
@armeducation
به نظر شما اگر سرعت چرخش این نمایش را زیاد کنیم به چه شکل خواهد شد؟
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
نمایش روی چند 7seg و تغییر سرعت نمایش با تغییر پتانسیومتر
نتیجه در سرعت بالا : مشاهده همزمان عدد 1234
اگر در میکرو اجرای چند کار پشت سر هم (مالتی تسک) انجام شود همزمان دیده نمی شود؟
@armeducation
نتیجه در سرعت بالا : مشاهده همزمان عدد 1234
اگر در میکرو اجرای چند کار پشت سر هم (مالتی تسک) انجام شود همزمان دیده نمی شود؟
@armeducation
Forwarded from armeducation (Mahdi Zarkoob)
کانال کاملا تخصصی میکروکنترلرهای ARM
شما معرف کانال به سایر دوستان خود باشید.
👇👇👇👇👇👇
@armeducation
با سپاس
@armeducation
شما معرف کانال به سایر دوستان خود باشید.
👇👇👇👇👇👇
@armeducation
با سپاس
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
مشاهده اجرای عملی دریافت دیتا از USART و انتقال به رم به با DMA
متوقف نماندن برنامه در موقع دریافت دیتا با استفاده از ویژگی DMA و عدم وقفه های متوالی سریال
تکرار دریافت تعداد مشخص شده
@armeducation
متوقف نماندن برنامه در موقع دریافت دیتا با استفاده از ویژگی DMA و عدم وقفه های متوالی سریال
تکرار دریافت تعداد مشخص شده
@armeducation
مشاهده اجرای عملی دریافت دیتا از USART و انتقال به رم به با DMA
فیلم کیفیت بالا :
https://www.aparat.com/v/lDG3g
متوقف نماندن برنامه در موقع دریافت دیتا و عدم وقفه های متوالی سریال با استفاده از ویژگی DMA
تکرار دریافت تعداد مشخص شده
@armeducation
فیلم کیفیت بالا :
https://www.aparat.com/v/lDG3g
متوقف نماندن برنامه در موقع دریافت دیتا و عدم وقفه های متوالی سریال با استفاده از ویژگی DMA
تکرار دریافت تعداد مشخص شده
@armeducation
آپارات - سرویس اشتراک ویدیو
دریافت دیتا از USART و انتقال به رم به با DMA
مشاهده اجرای عملی دریافت دیتا از USART و انتقال به رم به با DMA
متوقف نماندن برنامه در موقع دریافت دیتا با استفاده از ویژگی DMA و عدم وقفه های متوالی سریال
تکرار دریافت تعداد مشخص شده
@armeducation
متوقف نماندن برنامه در موقع دریافت دیتا با استفاده از ویژگی DMA و عدم وقفه های متوالی سریال
تکرار دریافت تعداد مشخص شده
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
نمایش اولیه عکس 24 بیت BMP در میکروکنترلر LPC1788 از روی SD کارت با توابع RL کیل جهت تست سرعت
در هر بار خواندن، 3 بایت از SD کارت
@armeducation
در هر بار خواندن، 3 بایت از SD کارت
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
نمایش عکس 24 بیت BMP در میکروکنترلر LPC1788 از روی SD کارت با توابع RL کیل جهت تست سرعت
اصلاح برنامه به صورت :
در هر بار خواندن، 800*3 بایت از SD کارت
@armeducation
اصلاح برنامه به صورت :
در هر بار خواندن، 800*3 بایت از SD کارت
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
مقایسه نتیجه دو برنامه به صورت همزمان
سمت چپ در هر بار خواندن، 3 بایت
سمت راست در هر بار خواندن، 2400 بایت از SD کارت
@armeducation
سمت چپ در هر بار خواندن، 3 بایت
سمت راست در هر بار خواندن، 2400 بایت از SD کارت
@armeducation
Forwarded from armeducation (Mahdi Zarkoob)
@armeducation
انجام یک کار بزرگ با تقسیم آن به قسمت های کوچک قابل انجام تر است.
قبلا در پست های گذشته ذکر شد که ممکن است افرادی نتوانند پریفرال ها و قسمت های مختلف را با هم ترکیب کنند که منجر به انجام کاری شود.
به عنوان مثال کوچک، قسمتی جزیی از یک کار نمایش عکس روی TFT است. عکس ها در SD یا USB Flash است و سرعت نمایش مهم است. مراحل کار:
- خواندن یک فایل از SD کارت
- نحوه دیکد کردن یک عکس( عکس با فرمت BMP ساده تر و فرمت های دیگری مثل JPG مشکل تر)
- کار با TFT LCD و نحوه عملکرد آن
حال از ترکیب این که چند مرحله یک نمایش عکس ایجاد می شود. در صورت نمایش صحیح با این مسئله مواجه می شوید که چگونه سرعت نمایش را بالا برد!؟ به سراغ بهینه کردین برنامه ها می روید. سعی در استفاده از حداکثر توان CPU خواهید کرد. راه حل های مختلفی را امتحان می کنید . مانند ریختن در یک فضایی و سپس قرار دادن در ال سی دی که نخواهید مستقیما از SD کارت نمایش انجام شود. در صورت مطلوب نبودن ممکن است دنبال یک میکروی قوی تر باشید. اکنون باید برنامه های قبلا نوشته شده را به میکرو جدید منتقل کنید و .....
← چقدر مدت زمان صرف شده تا یک قسمت کوچک به نحو مطلوب انجام شود؟
سایر قسمت ها باقی مانده است! ممکن است همزمان لازم باشد از چند پریفرال استفاده شود. آیا کتابخانه های مورد استفاده این اجازه را می دهد؟ یا خود میکرو چنین امکانی دارد؟
حجمی از دیتا مرتب بایستی منتقل شود و نباید زمان CPU میکرو صرف آن شود چون از انجام سایر کارها باز می مانند. چندین کار بایستی با تقسیم زمان بین آنها انجام شود ....
در اینجا مشخص است که بین راه اندازی اولیه یک یا چند پریفرال تا پیاده سازی یک کار، تفاوت بسیار است.
@armeducation
انجام یک کار بزرگ با تقسیم آن به قسمت های کوچک قابل انجام تر است.
قبلا در پست های گذشته ذکر شد که ممکن است افرادی نتوانند پریفرال ها و قسمت های مختلف را با هم ترکیب کنند که منجر به انجام کاری شود.
به عنوان مثال کوچک، قسمتی جزیی از یک کار نمایش عکس روی TFT است. عکس ها در SD یا USB Flash است و سرعت نمایش مهم است. مراحل کار:
- خواندن یک فایل از SD کارت
- نحوه دیکد کردن یک عکس( عکس با فرمت BMP ساده تر و فرمت های دیگری مثل JPG مشکل تر)
- کار با TFT LCD و نحوه عملکرد آن
حال از ترکیب این که چند مرحله یک نمایش عکس ایجاد می شود. در صورت نمایش صحیح با این مسئله مواجه می شوید که چگونه سرعت نمایش را بالا برد!؟ به سراغ بهینه کردین برنامه ها می روید. سعی در استفاده از حداکثر توان CPU خواهید کرد. راه حل های مختلفی را امتحان می کنید . مانند ریختن در یک فضایی و سپس قرار دادن در ال سی دی که نخواهید مستقیما از SD کارت نمایش انجام شود. در صورت مطلوب نبودن ممکن است دنبال یک میکروی قوی تر باشید. اکنون باید برنامه های قبلا نوشته شده را به میکرو جدید منتقل کنید و .....
← چقدر مدت زمان صرف شده تا یک قسمت کوچک به نحو مطلوب انجام شود؟
سایر قسمت ها باقی مانده است! ممکن است همزمان لازم باشد از چند پریفرال استفاده شود. آیا کتابخانه های مورد استفاده این اجازه را می دهد؟ یا خود میکرو چنین امکانی دارد؟
حجمی از دیتا مرتب بایستی منتقل شود و نباید زمان CPU میکرو صرف آن شود چون از انجام سایر کارها باز می مانند. چندین کار بایستی با تقسیم زمان بین آنها انجام شود ....
در اینجا مشخص است که بین راه اندازی اولیه یک یا چند پریفرال تا پیاده سازی یک کار، تفاوت بسیار است.
@armeducation
انتگرال بگیر !
در نظر شما وقتی برای کار به جایی مراجعه می کنید این است که همه تواناییتان را شرح دهید. حال در نظر بگیرید به همین دلیل که شما توانایی زیادی دارید ردتان کنند!
آن وقت باید بشید مثل این حکایت :
روزگاری یک ليسانسه که ریاضیش خوب بوده و البته پارتی نداشته، هر چقدر دنبال کار می گرده بهش کار نمیدادند. بعد از کلی تلاش، متوجه میشه شهرداری تعدادی رفتگر بی سواد استخدام می کنه!!
میره شهرداری خودش رو معرفی می کنه و مشغول به کار میشه...!
بعد از دو سه ماه میگن همه باید در کلاسهای نهضت شرکت کنید! این بنده خدا هم شرکت می کنه!!
یه روز معلم محترم در کلاس چهارم، ایشون رو می بره پای تخته تا مساحت یک شکلی رو حساب کنه! تو این فکر بوده که انتگرال بگیره یا نه که می بینه همه دارن داد می زنن:
انتگرال بگیر...!!! 😁
—————————-
البته ایشون نمی دونسته اگه فیلم از وضعیت کاری خودش بذاره در نت شاید از ریاست جمهوری هم بهش زنگ بزنند 😉
در نظر شما وقتی برای کار به جایی مراجعه می کنید این است که همه تواناییتان را شرح دهید. حال در نظر بگیرید به همین دلیل که شما توانایی زیادی دارید ردتان کنند!
آن وقت باید بشید مثل این حکایت :
روزگاری یک ليسانسه که ریاضیش خوب بوده و البته پارتی نداشته، هر چقدر دنبال کار می گرده بهش کار نمیدادند. بعد از کلی تلاش، متوجه میشه شهرداری تعدادی رفتگر بی سواد استخدام می کنه!!
میره شهرداری خودش رو معرفی می کنه و مشغول به کار میشه...!
بعد از دو سه ماه میگن همه باید در کلاسهای نهضت شرکت کنید! این بنده خدا هم شرکت می کنه!!
یه روز معلم محترم در کلاس چهارم، ایشون رو می بره پای تخته تا مساحت یک شکلی رو حساب کنه! تو این فکر بوده که انتگرال بگیره یا نه که می بینه همه دارن داد می زنن:
انتگرال بگیر...!!! 😁
—————————-
البته ایشون نمی دونسته اگه فیلم از وضعیت کاری خودش بذاره در نت شاید از ریاست جمهوری هم بهش زنگ بزنند 😉
Forwarded from armeducation (Mahdi Zarkoob)
آموزش مقدماتی میکروکنترلر LPC1788:
https://goo.gl/l4MmGP
تاپیک در فروم :
https://goo.gl/JEo7f9
آموزش پیشرفته میکروکنترلر LPC1788:
https://goo.gl/kKt72J
تاپیک:
https://goo.gl/qccMOi
@armeducation
https://goo.gl/l4MmGP
تاپیک در فروم :
https://goo.gl/JEo7f9
آموزش پیشرفته میکروکنترلر LPC1788:
https://goo.gl/kKt72J
تاپیک:
https://goo.gl/qccMOi
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
نمایش اولیه عکس 24 بیت BMP در میکروکنترلر LPC1788 از روی SD کارت با توابع ChaN جهت تست سرعت
در هر بار خواندن، 3 بایت از SD کارت
سرعت مافوق تصور!
@armeducation
در هر بار خواندن، 3 بایت از SD کارت
سرعت مافوق تصور!
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
نمایش اولیه عکس 24 بیت BMP در LPC1788 از روی SD کارت، توابع ChaN
در هر بار خواندن، 800*3 بایت از SD
به نظر شما چرا سرعت نمایش با این توابع پایین شده است و برای بهبود کاری می توان کرد؟
@armeducation
در هر بار خواندن، 800*3 بایت از SD
به نظر شما چرا سرعت نمایش با این توابع پایین شده است و برای بهبود کاری می توان کرد؟
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
تست اولیه رفرش صفحه در TFT LCD 7 اینچ با LPC1788
GLCD_Clear
نحوه نمایش :
https://t.me/armeducation/87
تفاوت تابع ارسال :
https://t.me/armeducation/90
سرعت رفرش : حدود 170 میلی ثانیه
@armeducation
GLCD_Clear
نحوه نمایش :
https://t.me/armeducation/87
تفاوت تابع ارسال :
https://t.me/armeducation/90
سرعت رفرش : حدود 170 میلی ثانیه
@armeducation
armeducation
نمایش اولیه عکس 24 بیت BMP در LPC1788 از روی SD کارت، توابع ChaN در هر بار خواندن، 800*3 بایت از SD به نظر شما چرا سرعت نمایش با این توابع پایین شده است و برای بهبود کاری می توان کرد؟ @armeducation
بعد از نمایش اولیه عکس از SD کارت با توابع چان (ChaN) در میکروکنترلر LPC1788 و مقایسه با نمایش عکس از SD کارت با توابع RL کیل سوالی که ایجاد می شود این است که چرا سرعت توابع متن باز چان کمتر است؟ آیا با دستکاری در گزینه های آن و بهینه سازی می توان به سرعت بالاتری دست پیدا کرد؟ (اگر کسی این کار را کرده است اطلاع دهد.) این موضوع از آن جهت برای شما مهم خواهد شد که سرعت نمایش مهم شود.
شاید اولین چیزی که به ذهن برسد این است که توابع پایه چان در این مثال توابع CMSIS را فرا می خواند . توابع CMSIS نیز از رجیسترها استفاده می کنند. بنابراین ما برای تست این موضوع، همین مثال را با میکروکنترلر LPC1768 انجام می دهیم. زیرا سمپل موجود از توابع CMSIS در توابع چان استفاده نکرده است. هر چند LPC1768 نه SDIO دارد نه درایور داخلی LCD .
اگر سرعت کم باشد در STM32F103VE نیز سرعت نمایش عکس از SD کارت با توابع چان نیز کمتر از RL کیل خواهد بود. اگر راهی برای بهینه سازی این توابع نباشد در این قسمت استفاده از STM32CubeMX نیز جالب نخواهد بود. زیرا STM32CubeMX نیز بعد از تنظیمات در SDIO کدهای توابع چان را در پروژه کیل ایجاد خواهد کرد.
@armeducation
شاید اولین چیزی که به ذهن برسد این است که توابع پایه چان در این مثال توابع CMSIS را فرا می خواند . توابع CMSIS نیز از رجیسترها استفاده می کنند. بنابراین ما برای تست این موضوع، همین مثال را با میکروکنترلر LPC1768 انجام می دهیم. زیرا سمپل موجود از توابع CMSIS در توابع چان استفاده نکرده است. هر چند LPC1768 نه SDIO دارد نه درایور داخلی LCD .
اگر سرعت کم باشد در STM32F103VE نیز سرعت نمایش عکس از SD کارت با توابع چان نیز کمتر از RL کیل خواهد بود. اگر راهی برای بهینه سازی این توابع نباشد در این قسمت استفاده از STM32CubeMX نیز جالب نخواهد بود. زیرا STM32CubeMX نیز بعد از تنظیمات در SDIO کدهای توابع چان را در پروژه کیل ایجاد خواهد کرد.
@armeducation
This media is not supported in your browser
VIEW IN TELEGRAM
نمایش اولیه عکس 24 بیت BMP در LPC1768 از روی SD کارت، توابع ChaN
در هر بار خواندن، 800*3 بایت از SD
مقایسه با :
https://t.me/armeducation/168
سرعت کمتر ازRL کیل
چرا عکس قرینه و معکوسه؟
@armeducation
در هر بار خواندن، 800*3 بایت از SD
مقایسه با :
https://t.me/armeducation/168
سرعت کمتر ازRL کیل
چرا عکس قرینه و معکوسه؟
@armeducation