فهرست مطالب:
- مرحله 1: مواد
- مرحله 2: تنظیم ورودی ها و خروجی ها
- مرحله 3: ساخت ساعت
- مرحله چهارم: شمارش تا ده
- مرحله 5: نمایش اعداد
- مرحله 6: نحوه نمایش کرونومتر
- مرحله 7: همه چیز را با هم جمع کنید
- مرحله 8: محدودیت ها
- مرحله 9: آزمایش
تصویری: کرونومتر اولیه با استفاده از VHDL و Basys3 Board: 9 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:55
به نحوه آموزش ساخت کرنومتر با استفاده از برد اصلی VHDL و Basys 3 خوش آمدید. ما مشتاق هستیم که پروژه خود را با شما به اشتراک بگذاریم! این یک پروژه نهایی برای دوره CPE 133 (طراحی دیجیتال) در Cal Poly ، SLO در پاییز 2016 بود. پروژه ای که ساختیم یک کرونومتر ساده است که زمان شروع ، بازنشانی و مکث را دارد. سه دکمه را روی برد Basys3 به عنوان ورودی می گیرد و زمان روی صفحه چهار رقمی هفت قسمتی برد نمایش داده می شود. زمان سپری شده در یک ثانیه نمایش داده می شود: قالب ثانیه ثانیه. از ساعت سیستم برد به عنوان ورودی برای پیگیری زمان سپری شده استفاده می کند و زمان را به چهار رقم صفحه نمایش هفت قسمتی نشان می دهد.
مرحله 1: مواد
مواد مورد نیاز برای این پروژه:
- 1 رایانه با Vivado Design Suite WebPack نصب شده از Xilinx (نسخه 2016.2 را ترجیح دهید)
- 1 تخته Digilent Basys3 Xilinx Artix-7 FPGA
- 1 کابل پورت USB
مرحله 2: تنظیم ورودی ها و خروجی ها
شکل بالا یک نمودار بلوک سطح بالا از ماژول کرونومتر اصلی را نشان می دهد. کرونومتر ورودی های "CLK" (ساعت) ، "S1" (دکمه شروع) ، "S2" (دکمه مکث) و "RST" (تنظیم مجدد) را دارد و دارای خروجی 4 بیتی "آند" ، 7 بیتی است. خروجی "بخش" و خروجی تک بیتی "DP" (نقطه اعشار). وقتی ورودی "S1" زیاد است ، کرونومتر شروع به شمارش زمان می کند. هنگامی که "S2" کم است ، کرونومتر زمان را متوقف می کند. هنگامی که "RST" زیاد است ، کرونومتر متوقف می شود و زمان را مجددا تنظیم می کند. چهار زیر ماژول در مدار وجود دارد: تقسیم ساعت ، شمارنده رقم ، درایور صفحه نمایش هفت بخش و رمزگذار صفحه نمایش هفت بخش. ماژول اصلی کرونومتر تمام زیرمودولها را به هم و ورودی و خروجی را به هم متصل می کند.
مرحله 3: ساخت ساعت
ماژول تقسیم ساعت یک ساعت سیستم را می گیرد و از یک ورودی تقسیم کننده برای ایجاد یک ساعت با هیچ سرعتی بیشتر از ساعت سیستم استفاده نمی کند. کرونومتر از دو ماژول ساعت مختلف استفاده می کند ، یکی از آنها ساعت 500 هرتز و دیگری که ساعت 100 هرتز را ایجاد می کند. شماتیک تقسیم ساعت در شکل بالا نشان داده شده است. تقسیم ساعت یک ورودی تک بیتی "CLK" ، و یک ورودی 32 بیتی "تقسیم کننده" و خروجی تک بیتی "CLKOUT" را وارد می کند. "CLK" ساعت سیستم و "CLKOUT" ساعت حاصل است. این ماژول همچنین شامل یک گیت NOT می باشد که هنگامی که شمارنده به مقدار تقسیم کننده برسد ، سیگنال "CLKTOG" را تغییر می دهد.
مرحله چهارم: شمارش تا ده
شمارنده رقمی هر رقم را از 0 تا 10 می شمارد و یک ساعت دیگر ایجاد می کند تا رقم بعدی از کار بیفتد و هنگامی که شمارش به 10 برسد ، نوسان می کند. ماژول 3 ورودی تک بیتی "S" ، "RST" و "CLK" می گیرد. "و منجر به خروجی تک بیت" N "و خروجی 4 بیت" D "می شود. ورودی "S" در ورودی فعال است. وقتی "S" بالا است ساعت روشن می شود و وقتی "S" پایین است خاموش می شود. "RST" ورودی تنظیم مجدد است ، بنابراین زمانی که "RST" زیاد است ساعت بازنشانی می شود. "CLK" ورودی ساعت برای شمارنده رقم است. "N" خروجی ساعت است که به ساعت ورودی رقم بعدی تبدیل می شود. خروجی "D" مقدار دودویی رقمی را که شمارنده در آن قرار دارد نشان می دهد.
مرحله 5: نمایش اعداد
رمزگذار صفحه نمایش هفت قسمتی ، عدد باینری دریافت شده از ماژول درایور صفحه نمایش هفت قسمتی را رمزگذاری کرده و آن را به یک جریان بیتی تبدیل می کند که برای هر بخش از صفحه نمایش به عنوان مقادیر "1" یا "0" تفسیر می شود. شماره دودویی توسط ماژول به عنوان "رقم" ورودی 4 بیتی دریافت می شود و در نتیجه "بخش" خروجی 7 بیتی ایجاد می شود. این ماژول شامل یک بلوک فرایند واحد است که برای هر مقدار ورودی احتمالی از 0 تا 9. یک جریان 7 بیتی خاص را اختصاص می دهد. هر بیت در جریان های هفت بیتی یکی از هفت قسمت ارقام روی صفحه را نشان می دهد. ترتیب بخش ها در جریان "abcdefg" است و "0" بخش هایی را نشان می دهد که برای عدد داده شده روشن می شوند.
مرحله 6: نحوه نمایش کرونومتر
در ماژول درایور صفحه نمایش هفت قسمتی ، چهار ورودی 4 بیتی "D0" ، "D1" ، "D2" و "D3" وجود دارد که هر کدام نمایانگر چهار رقمی است که باید نمایش داده شود. ورودی "CLK" ورودی ساعت سیستم است. خروجی تک بیتی "DP" نشان دهنده نقطه اعشار در صفحه هفت قسمتی است. خروجی 4 بیتی "Anodes" تعیین می کند که کدام رقم در صفحه هفت قسمتی نمایش داده می شود و خروجی "بیت" 4 بیتی بستگی به وضعیت ورودی کنترل 2 بیتی "SEL" دارد. ماژول از 4 مالتی پلکسر برای ورودی کنترل "SEL" و سه خروجی استفاده می کند. "آند" ، "temp" و "DP".
مرحله 7: همه چیز را با هم جمع کنید
برای ایجاد دکمه های شروع و مکث ، از بلوک پردازشی "اگر" در حال اجرا شدن در ساعت 500Hz استفاده می شود. سپس با اعلام اجزای هر زیرمجموعه جداگانه و استفاده از سیگنالهای مختلف ، همه زیرمودولها را در ماژول اصلی کرونومتر به یکدیگر متصل کنید. زیرمجموعه های رقمی خروجی ساعت زیرمجموعه رقمی قبلی را دریافت می کنند و اولین مورد ساعت 100 هرتزی را می گیرد. خروجی های "D" زیرمجموعه های رقمی سپس به ورودی های "D" ماژول درایور صفحه نمایش هفت بخش تبدیل می شوند. و در نهایت خروجی "temp" ماژول درایور صفحه نمایش هفت بخش به ورودی "temp" ماژول رمزگذار هفت بخش تبدیل می شود.
مرحله 8: محدودیت ها
از 3 دکمه (W19 ، T17 و U18) برای ورودی های "RST" ، "S1" و "S2" استفاده کنید. W19 دکمه بازنشانی ، T17 دکمه شروع (S1) و U18 دکمه مکث (S2) است. با استفاده از پورت W5 یک محدودیت برای ورودی ساعت نیز لازم است. همچنین ، به یاد داشته باشید که این خط را به محدودیت ساعت اضافه کنید:
create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports {CLK}]
همچنین آندها و قطعات را به برد وصل کنید تا کرونومتر در صفحه هفت قسمتی همانطور که در فایل محدودیت ها مشاهده می شود نمایش داده شود.
مرحله 9: آزمایش
مطمئن شوید دستگاه شما با بازی با سه دکمه کار می کند: فشار دادن و نگه داشتن آنها به هر ترتیب ممکن برای پیدا کردن مشکلات احتمالی در کد.
توصیه شده:
کرونومتر آردوینو با استفاده از LCD I2C: 5 مرحله
کرونومتر آردوینو با استفاده از LCD I2C: در این پروژه به شما آموزش می دهم که از یک صفحه نمایش LCD و یک آردوینو به عنوان یک کرونومتر تعاملی استفاده کنید. وقتی پروژه شما با کد ارائه شده به پایان رسید ، باید مانند عکس بالا باشد. برای یادگیری اینکه از کجا شروع کنید به مرحله بعدی بروید
نحوه ایجاد کرونومتر با استفاده از آردوینو: 8 مرحله (همراه با تصاویر)
نحوه ایجاد کرونومتر با استفاده از آردوینو: این یک کراندومتر بسیار ساده آردوینو 16*2 ال سی دی است ……….. اگر این دستورالعمل را دوست دارید لطفا به کانال من مشترک شوید https://www.youtube.com /ZenoModiff
کرونومتر با استفاده از Pic18f4520 در پروتئوس با 7 بخش: 6 مرحله
کرونومتر با استفاده از Pic18f4520 در پروتئوس با 7 سگمنت: من به تازگی کار با کنترل کننده عکس را شروع کرده ام ، یکی از دوستانم از من خواست تا از آن کرنومتر بسازم. بنابراین من تصویر سخت افزاری برای به اشتراک گذاشتن ندارم ، من کد نوشتم و آن را در نرم افزار پروتئوس شبیه سازی کرده ام. در اینجا من طرح کلی را برای همان به اشتراک گذاشته ام. t
VHDL کرونومتر یک دقیقه ای: 5 مرحله
VHDL کرونومتر یک دقیقه ای: این آموزش نحوه ساخت کرونومتر یک دقیقه ای با استفاده از VHDL و برد Basys 3 است. چنین دستگاهی برای بازی هایی که هر بازیکن حداکثر یک دقیقه زمان برای انجام حرکت خود دارد ایده آل است. کرونومتر ثانیه و میلی ثانیه را با دقت نمایش می دهد
کرونومتر VHDL: 8 مرحله (همراه با تصاویر)
کرونومتر VHDL: این آموزش نحوه ایجاد کرونومتر با استفاده از VHDL و برد FPGA است ، مانند برد Basys3 Atrix-7. کرونومتر قادر است از 00.00 ثانیه تا 99.99 ثانیه شمارش کند. از دو دکمه استفاده می کند ، یکی برای دکمه شروع/توقف و دیگری برای