Мазмұны:

Қозғалыс сенсорлы жарық диоды: 8 қадам
Қозғалыс сенсорлы жарық диоды: 8 қадам

Бейне: Қозғалыс сенсорлы жарық диоды: 8 қадам

Бейне: Қозғалыс сенсорлы жарық диоды: 8 қадам
Бейне: Диодтың RGB LED таспасы BIOM + ақ түсті жарықдиодты Премиум шолу және байланыс 2024, Шілде
Anonim
Image
Image

Фон:

Сіз сабаққа немесе жұмысқа барар алдында немесе ұйықтар алдында жарықты өшіруді ұмытып кетесіз бе? Сіз пайдаланбайтын кезде шамдар жанып тұрған сағаттар шынымен шығын мен энергия шығынын қосуы мүмкін. Мысалы, solarcity.com сайтының хабарлауынша, бір апта бойы шамдарды түні бойы өшіру электрлік шотқа 25 доллар қосуы мүмкін! Біздің CPE133 жобасы үшін біз адамдарға үйлерінде энергияны үнемдеуге және шамдарын тиімді пайдалануға көмектесу үшін қозғалыс сенсоры жарығын жасаймыз.

Біздің жүйе іс жүзінде:

Іс жүзінде шамдар сенсор бөлмедегі қозғалысты анықтағанда ғана қосылады. Содан кейін шамдар шамамен 30 минут шамасында жанып тұрады, содан кейін автоматты түрде өшеді. Айталық, сіз жай ғана өтіп бара жатырсыз немесе белгіленген уақыт аяқталмай тұрып бөлмеден ерте кеткіңіз келді делік. Бұл жағдайда біз шамдарды қолмен қосуға немесе өшіруге болатын түйме орнаттық. Есіңізде болсын, шамдар қолмен немесе автоматты түрде қосылған кезде де (шамдар қолмен өшірілмесе) 30 минут бойы жанып тұрады.

Борттағы модельдеу:

Таймер жұмыс істейтінін білу үшін таймерді 1 минутқа ауыстырдық.

Материалдар:

  • 1 Basys тақтасы (оны Digilent -тен табуға болады)
  • 1 PIR қозғалыс сенсоры (сіз оны Amazon -дан таба аласыз)
  • 1 нан тақтасы мен жинақ (біз оны Amazon -дан қолдануды ұсынамыз)
  • Жоғарыдағы жинақтан

    • 1 жарық диоды
    • Әйелден еркекке арналған 3 кабель
    • Еркек пен еркекке арналған 6 кабель

1 -қадам: таймер

Жарық диоды 1 минутқа қосылып тұруы үшін алдымен таймер құру керек. Basys 3 тақтасының ішкі жиілігі 100 МГц, сондықтан 100 миллион цикл 1 секундқа тең. Содан кейін бұл «t_cnt» үшін максималды сан ретінде әрекет ететін айнымалы ретінде пайдаланылады. T_cnt 1 -ге артады, себебі Basys 3 тақтасы циклды аяқтайды. 100 миллиондық белгіге жеткенде ол қалпына келтіріледі, ал басқа «сек» айнымалысы 1 -ге артады. Бұл «сек» айнымалысы өткен секундтар санын көрсетеді және бұл айнымалы 60 -қа тең болған кезде толық минут өтті.

Төмендегі кодты Таймер деп аталатын vhdl бастапқы файлына көшіріңіз.

COUNT_8B нысаны

порт (RESET: std_logic ішінде;

CLK: std_logic ішінде; T: out std_logic: = '0');

соңы COUNT_8B;

COUNT_8B архитектурасының my_count

тұрақты max_count: бүтін сан: = (100000000); -сигнал t_cnt: std_logic_vector (0 төмен қарай 7): = «00000000»; сигнал t_cnt: бүтін сан: = (0); процесті бастау (CLK, RESET, t_cnt) айнымалы сек: бүтін сан: = 0; if if (көтерілу_шеті (CLK)), онда егер (RESET = '1'), онда t_cnt <= (0); - анық elsif (t_cnt = max_count) онда- max_count 100 миллион, бұл 1 секундқа тең t_cnt <= (0); - Ішкі сағатты 0 сек қалпына келтіреді: = сек + 1; - Біздің «баяу сағатты» 1-ге арттырады, егер (сек = 60), онда- 60 секундқа жеткенде, ол максималды уақытқа жетті сек: = 0; - «баяу сағатты» 0 T <= '1' қалпына келтіреді; егер аяқталса; басқа t_cnt <= t_cnt + 1; - ішкі сағатты арттырады T <= '0'; егер аяқталса; егер аяқталса; процесті аяқтау; my_count аяқтау;

2 -қадам: түймелерді оңтайландыру

ЖАРЫҚ ДИОДТЫ ИНДИКАТОР
ЖАРЫҚ ДИОДТЫ ИНДИКАТОР

Basys тақталарындағы жиілік соншалықты жоғары (шамамен 100 МГц), егер сіз Basys тақтасына қысқа уақытты бассаңыз, оны 100 000 рет басасыз. Бұл жарықтың қосылу және өшіру күйі арасында тез жыпылықтауына әкеледі. Біз жыпылықтауды азайту үшін күй диаграммасын құру арқылы түймені оңтайландыруға тырыстық.

D-flip-flops әр күйді ұстайды, содан кейін біз процесс мәлімдемесінде күйдің ауысуын көрсетеміз.

Төмендегі кодты Button деп аталатын vhdl бастапқы файлына көшіріңіз.

IEEE кітапханасы; IEEE. STD_LOGIC_1164. ALL пайдаланыңыз;

нысан түймесі

Порт (btn: STD_LOGIC; clk: STD_LOGIC; E: STD_LOGIC); аяқтау түймесі;

архитектура - батырманың мінез -құлқы

state_type түрі (PRESSED, NP); сигнал PS, NS: state_type: = NP;

баста

seq_proc: процесс (NS, clk) басталады, егер (жоғарылау_шеті (clk)), онда PS <= NS; егер аяқталса; seq_proc процесін аяқтау;

ns_proc: процесс (btn, PS)

PS жағдайын бастау - бұл NP => if (btn = '1') кезде NS <= PRESSED; E <= '1'; басқа NS <= NP; E егер (btn = '0') онда NS <= NP; E <= '0'; else NS <= БАСЫЛҒАН; E <= '0'; егер аяқталса; соңғы жағдай; ns_proc процесін аяқтау;

мінез -құлықты тоқтату;

3 -қадам: жарық диоды

Жарық диодында екі күй бар: OFF (немесе IDLE) және ON. Жоғарыда айтылғандай, штаттар флип-флопта сақталады. Егер сенсор қозғалысты анықтаса (S = 1) немесе түйме басылғанда (E = 1), шам жанады. Егер таймер 1 минутқа (T = 1) жетсе немесе түйме басылған кезде (E = 1) жарық диоды автоматты түрде өшеді.

Төмендегі кодты LED деп аталатын vhdl бастапқы файлына көшіріңіз.

motion_sensored_light нысаны - бұл порт (S: STD_LOGIC -те; - sesnor; JA10 порты/G3 E: STD_LOGIC; - қолмен жұмыс істеу үшін сыртқы түйме; орталық түйме T: STD_LOGIC -те; - таймер максималды уақытқа жеткенде; таймердің жарық диодынан: шығу STD_LOGIC; - жарық TRST: өшіру STD_LOGIC; - таймер clk: STD_LOGIC ішіне қалпына келтіреді); - қозғалыстың_сенсорлы_жарық күйін аяқтайтын флип-флоп үшін clk;

сәулет Қимылдың мінезі - сенсорлы_жарық

state_type түрі - (ST0, ST1); --ST0 = IDLE, ST1 = LED жоғары

сигнал PS, NS: state_type: = ST0; - ҚАЗІРГІ МЕМЛЕКЕТ пен КЕЛЕСІ МЕМЛЕКЕТ ST0 IDLE-де басталады

баста

- флип-флоптың технологиялық блогы- seq_proc сағатының көтерілу жиегіндегі күйді жаңартады: процесс (NS, clk) басталады- d (егер көтерілу_шеті (clk)) PS <= NS күйлерін сақтайтын d flip flop; егер аяқталса; seq_proc процесін аяқтау;

ns_proc: процесс (S, E, T, PS)

PS жағдайын бастау ST0 => LED <= '0' болғанда; - бос күйдегі шығулар TRST <= '1'; егер (S = '0' НЕ Е = '1') онда - st0 -дан st1 -ге өтуге кіріс NS <= ST1; else NS LED <= '1'; - TRST күйіндегі нәтижелер <= '0'; егер (E = '1' НЕМЕСЕ Т = '1') онда - st1 -ден st0 -ге көшуге NS <= ST0; басқа NS <= ST1; егер аяқталса; соңғы жағдай; ns_proc процесін аяқтау;

мінез -құлықты тоқтату;

4 -қадам: Жоғарғы файл

Енді біз барлық басқа файлдарды бір картаның портына түсіреміз.

Төмендегі кодты Top_File деп аталатын vhdl бастапқы файлына көшіріңіз.

IEEE кітапханасы; IEEE. STD_LOGIC_1164. ALL пайдаланыңыз;

Top_File нысаны

Порт (S: STD_LOGIC: = '1'; - sesnor; порт JA10/Pin G3 btn: STD_LOGIC: = '0'; - қолмен жұмыс істеуге арналған сыртқы түйме; жарықдиодты орталық түйме: өшіру STD_LOGIC; - жарық сықылды: STD_LOGIC); - Top_File күйін аяқтайтын флип-флоп үшін clk;

архитектура Top_File мінез -құлқы

COUNT_8B компоненті

порт (RESET: std_logic: = '0'; CLK: std_logic; T: out std_logic: = '0'); соңғы компонент; motion_sensored_light компоненті - бұл порт (S: STD_LOGIC -те; - sesnor; JA10 порты/G3 E: STD_LOGIC -те; - қолмен жұмыс істеу үшін сыртқы түйме; T түймесі: STD_LOGIC -те; - таймер максималды уақытқа жеткенде; Таймердің жарық диодынан: шығу STD_LOGIC; - жарық TRST: өшіру STD_LOGIC; - таймер clk: STD_LOGIC ішіне қалпына келтіреді); - күйлердің соңғы компонентін ұстайтын флип-флопқа арналған clk; компонент түймесі - бұл Порт (btn: STD_LOGIC; clk: STD_LOGIC; E: шығу STD_LOGIC); соңғы компонент; t_reached_c сигналы: std_logic; - сигнал r_time_c: std_logic; - сигнал button_c: std_logic;

баста

таймер: COUNT_8B порт картасы (RESET => r_time_c, CLK => CLK, T => t_reached_c); motion_sensor: motion_sensored_light порт картасы (S => S, E => button_c, T => t_reached_c, LED => LED, TRST => r_time_c, clk => clk); button_controller: түйме порт картасы (btn => btn, clk => clk, E => button_c); мінез -құлықты тоқтату;

5 -қадам: шектеулер файлы

Енді біз кіріс пен шығыс тақтада қай жерде болатынын анықтауымыз керек.

Төмендегі кодты шектеулер деп аталатын vhdl шектеулер файлына көшіріңіз.

## Бұл файл Basys3 rev B тақтасы үшін жалпы.xdc болып табылады ## Оны жобада қолдану үшін: ## - пайдаланылған түйреуіштерге сәйкес келетін жолдарға түсініктеме бермеу ## - пайдаланылған порттардың атын өзгерту (әр жолда, get_ports кейін) жобадағы сигнал атауларының жоғарғы деңгейіне дейін

## Сағат сигналы

set_property PACKAGE_PIN W5 [get_ports clk] set_property IOSTANDARD LVCMOS33 [get_ports clk] create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports clk] ## Ауыстырғыштар #set_property PACKAGE_PIN {17] set_property IOSTANDARD LVCMOS33 [get_ports {sw [0]}] #set_property PACKAGE_PIN V16 [get_ports {sw [1]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [1]}] #set_property PACKAGE_PIN W16 [2] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [2]}] #set_property PACKAGE_PIN W17 [get_ports {sw [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [3]}] #set_property PACKAGE_PIN {sw15 [4]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [4]}] #set_property PACKAGE_PIN V15 [get_ports {sw [5]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [5]}] #set_property PACKAGE_PIN [6]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [6]}] #set_property PACKAGE_PIN W13 [get_ports {sw [7]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [7]}] #set_property PACKAGE_PIN V2 [get_ports {sw [8]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [8]}] #set_property PACKAGE_PIN T3 [get_ports {sw [9]}] #ST_ARD LVCMOS33 [get_ports {sw [9]}] #set_property PACKAGE_PIN T2 [get_ports {sw [10]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [10]}] #set_property PACKAGE_PIN R3 [get_ports {sw] [11]} set_property IOSTANDARD LVCMOS33 [get_ports {sw [11]}] #set_property PACKAGE_PIN W2 [get_ports {sw [12]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [12]}] #set_property PACKAGE_PIN U1 [get_ports] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [13]}] #set_property PACKAGE_PIN T1 [get_ports {sw [14]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [14]}] #set_property PACKAGE_PIN {sw2 [15]}] #set_property IOSTANDARD LVCMOS33 [get_ports {sw [15]}]

## светодиодтар

#set_property PACKAGE_PIN U16 [get_ports {led [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [0]}] #set_property PACKAGE_PIN E19 [get_ports {led [1]}] #set_property IOSTANDARD LVCMOS {1] }] #set_property PACKAGE_PIN U19 [get_ports {led [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [2]}] #set_property PACKAGE_PIN V19 [get_ports {led [3]}] #set_property IOOSANDARD [L_CM] 3]}] #set_property PACKAGE_PIN W18 [get_ports {led [4]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [4]}] #set_property PACKAGE_PIN U15 [get_ports {led [5]}] #set_property IMOS33_OM led [5]}] #set_property PACKAGE_PIN U14 [get_ports {led [6]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [6]}] #set_property PACKAGE_PIN V14 [get_ports {led [7]}] #set_proper IOMARD get_ports {led [7]}] #set_property PACKAGE_PIN V13 [get_ports {led [8]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [8]}] #set_property PACKAGE_PIN V3 [get_ports {led [9]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [9]}] #set_property PACKAGE_PIN W3 [get_ports {led [10]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [10]}] #set_property PACKAGE_PIN [11]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [11]}] #set_property PACKAGE_PIN P3 [get_ports {led [12]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [12]}] #set_property PACKAG {led [13]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [13]}] #set_property PACKAGE_PIN P1 [get_ports {led [14]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [14]}] #set_properPAC1 [get_ports {led [15]}] #set_property IOSTANDARD LVCMOS33 [get_ports {led [15]}] ## 7 сегменттің дисплейі #set_property PACKAGE_PIN W7 [get_ports {seg [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {seg [0]}] #set_property PACKAGE_PIN W6 [get_ports {seg [1]}] #set_property IOSTANDARD LVCMOS33 [get_ports {seg [1]}] #set_property PACKAGE_PIN U8 [get_ports {seg [2]}] #set_property IOSTA NDARD LVCMOS33 [get_ports {seg [2]}] #set_property PACKAGE_PIN V8 [get_ports {seg [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {seg [3]}] #set_property PACKAGE_PIN U5 [4_ports] #set_property IOSTANDARD LVCMOS33 [get_ports {seg [4]}] #set_property PACKAGE_PIN V5 [get_ports {seg [5]}] #set_property IOSTANDARD LVCMOS33 [get_ports {seg [5]}] #set_property PAC7_PIN [PACKAGE_PIN] }] #set_property IOSTANDARD LVCMOS33 [get_ports {seg [6]}]

#set_property PACKAGE_PIN V7 [get_ports dp]

#set_property IOSTANDARD LVCMOS33 [get_ports dp]

#set_property PACKAGE_PIN U2 [get_ports {a [0]}]

#set_property IOSTANDARD LVCMOS33 [get_ports {a [0]}] #set_property PACKAGE_PIN U4 [get_ports {a [1]}] #set_property IOSTANDARD LVCMOS33 [get_ports {a [1]}] #set_property PACKAGE_PIN {4 [get_ports] }] #set_property IOSTANDARD LVCMOS33 [get_ports {a [2]}] #set_property PACKAGE_PIN W4 [get_ports {a [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {a [3]}]

## Түймелер

set_property PACKAGE_PIN U18 [get_ports BTN] set_property IOSTANDARD LVCMOS33 [get_ports BTN] #set_property PACKAGE_PIN T18 [get_ports btnU] #set_property IOSTANDARD LVCMOS33 [get_ports btnU] #set_property PACKAGE_PIN w19 [get_ports btnL] #set_property IOSTANDARD LVCMOS33 [get_ports btnL] #set_property PACKAGE_PIN T17 [get_ports btnR] #set_property IOSTANDARD LVCMOS33 [get_ports btnR] #set_property PACKAGE_PIN U17 [get_ports btnD] #set_property IOSTANDARD LVCMOS33 [get_ports btnD]

## Pmod тақырыбы JA

## Sch name = JA1 #set_property PACKAGE_PIN J1 [get_ports {JA [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JA [0]}] ## Sch name = JA2 #set_property PACKAGE_PIN L2 [get_ports {JA [1] #set_property IOSTANDARD LVCMOS33 [get_ports {JA [1]}] ## Sch name = JA3 #set_property PACKAGE_PIN J2 [get_ports {JA [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JA [2]}] ## = JA4 #set_property PACKAGE_PIN G2 [get_ports {JA [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JA [3]}] ## Sch name = JA7 #set_property PACKAGE_PIN H1 [get_ports {JA [4]} Iset # # LVCMOS33 [get_ports {JA [4]}] ## Sch name = JA8 set_property PACKAGE_PIN K2 [get_ports LED] set_property IOSTANDARD LVCMOS33 [get_ports LED] ## Sch name = JA9 #set_property PACKAGE_PIN H2 [get_ports] J # set_property IOSTANDARD LVCMOS33 [get_ports {JA [6]}] ## Sch name = JA10 set_property PACKAGE_PIN G3 [get_ports S] set_property IOSTANDARD LVCMOS33 [get_ports S]

## Pmod тақырыбы JB

## Sch name = JB1 #set_property PACKAGE_PIN A14 [get_ports {JB [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JB [0]}] ## Sch name = JB2 #set_property PACKAGE_PIN A16 [get_ports {JB [1] #set_property IOSTANDARD LVCMOS33 [get_ports {JB [1]}] ## Sch name = JB3 #set_property PACKAGE_PIN B15 [get_ports {JB [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JB [2]}] ## = JB4 #set_property PACKAGE_PIN B16 [get_ports {JB [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JB [3]}] ## Sch name = JB7 #set_property PACKAGE_PIN A15 [get_ports {JB [4]}] #set LVCMOS33 [get_ports {JB [4]}] ## Sch name = JB8 #set_property PACKAGE_PIN A17 [get_ports {JB [5]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JB [5]}] ## Sch name = JB9 #set_property PACKAGE_PIN C15 [get_ports {JB [6]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JB [6]}] ## Sch name = JB10 #set_property PACKAGE_PIN C16 [get_ports {JB [7]}] #set_property IOOSANDARD JB [7]}]

## Pmod Header JC

## Sch name = JC1 #set_property PACKAGE_PIN K17 [get_ports {JC [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JC [0]}] ## Sch name = JC2 #set_property PACKAGE_PIN M18 [get_ports {JC [1] #set_property IOSTANDARD LVCMOS33 [get_ports {JC [1]}] ## Sch name = JC3 #set_property PACKAGE_PIN N17 [get_ports {JC [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JC [2]}] ## = JC4 #set_property PACKAGE_PIN P18 [get_ports {JC [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JC [3]}] ## Sch name = JC7 #set_property PACKAGE_PIN L17 [get_ports {JC [4]}] #set LVCMOS33 [get_ports {JC [4]}] ## Sch name = JC8 #set_property PACKAGE_PIN M19 [get_ports {JC [5]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JC [5]}] ## Sch name = JC9 #set_property PACKAGE_PIN P17 [get_ports {JC [6]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JC [6]}] ## Sch name = JC10 #set_property PACKAGE_PIN R18 [get_ports {JC [7]}] #set_property IOOSANDARD JC [7]}]

## Pmod тақырыбы JXADC

## Sch name = XA1_P #set_property PACKAGE_PIN J3 [get_ports {JXADC [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC [0]}] ## Sch name = XA2_P #set_property PACKAGE_PIN L3 [get_port] #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC [1]}] ## Sch name = XA3_P #set_property PACKAGE_PIN M2 [get_ports {JXADC [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports] {JXADC #атауы] = XA4_P #set_property PACKAGE_PIN N2 [get_ports {JXADC [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC [3]}] ## Sch name = XA1_N #set_property PACKAGE_PIN K3] [set_port] LVCMOS33 [get_ports {JXADC [4]}] ## Sch name = XA2_N #set_property PACKAGE_PIN M3 [get_ports {JXADC [5]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC [5]}] #_N #set_X_A_ PACKAGE_PIN M1 [get_ports {JXADC [6]}] #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC [6]}] ## Sch name = XA4_N #set_property PACKAGE_PIN N1 [get_ports {JXADC [7]} LVOSTM) [get_ports {JXADC [7]}]

## VGA қосқышы

#set_property PACKAGE_PIN G19 [get_ports {vgaRed [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed [0]}] #set_property PACKAGE_PIN H19 [get_ports {vgaRed [1]}] #OST_progreported }] #set_property PACKAGE_PIN J19 [get_ports {vgaRed [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed [2]}] #set_property PACKAGE_PIN N19 [get_ports {vgaRed [3]} VOST {v_R_Sport] 3]}] #set_property PACKAGE_PIN N18 [get_ports {vgaBlue [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue [0]}] #set_property PACKAGE_PIN L18 [get_ports {vgaBlueSP_Pro_Plose_Pro_Cl_Co_R_R_R_V_r_V] үшін #1]} vgaBlue [1]}] #set_property PACKAGE_PIN K18 [get_ports {vgaBlue [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue [2]}] #set_property PACKAGE_PIN J18 [get_OS_problemi {3) get_ports {vgaBlue [3]}] #set_property PACKAGE_PIN J17 [get_ports {vgaGreen [0]}] #set_property IOSTANDARD LVCMOS33 [get_p orts {vgaGreen [0]}] #set_property PACKAGE_PIN H17 [get_ports {vgaGreen [1]}] #set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen [1]}] #set_property PACKAGE_PIN G17 [get_pro_per] LVCMOS33 [get_ports {vgaGreen [2]}] #set_property PACKAGE_PIN D17 [get_ports {vgaGreen [3]}] #set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen [3]}] #set_property PACKAGE_PIN HP_PIN_PIN_19 Hsync] #set_property PACKAGE_PIN R19 [get_ports Vsync] #set_property IOSTANDARD LVCMOS33 [get_ports Vsync]

## USB-RS232 интерфейсі

#set_property PACKAGE_PIN B18 [get_ports RsRx] #set_property IOSTANDARD LVCMOS33 [get_ports RsRx] #set_property PACKAGE_PIN A18 [get_ports RsTx] #set_property IOSTANDARD LVCMOSTx [алу_порттары

## USB HID (PS/2)

#set_property PACKAGE_PIN C17 [get_ports PS2Clk] #set_property IOSTANDARD LVCMOS33 [get_ports PS2Clk] #set_property PULLUP true [get_ports PS2Clk] #set_property PACKAGE_PIN B17 [get_ports PS2Data_SetData_Data_set]

## Төрт SPI флэш

## CCLK_0 7 сериялы құрылғыларға орналастырылмайтынын ескеріңіз. Сіз оған ## STARTUPE2 примитиві арқылы қол жеткізе аласыз. #set_property PACKAGE_PIN D18 [get_ports {QspiDB [0]}] #set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB [0]}] #set_property PACKAGE_PIN D19 [get_ports {QspiDB [1]} VSport] }] #set_property PACKAGE_PIN G18 [get_ports {QspiDB [2]}] #set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB [2]}] #set_property PACKAGE_PIN F18 [get_ports {QspiDB [3] LV_SM] 3]}] #set_property PACKAGE_PIN K19 [get_ports QspiCSn] #set_property IOSTANDARD LVCMOS33 [get_ports QspiCSn]

6 -қадам: PIR қозғалыс сенсорын қосу

PIR қозғалыс сенсорын қосу
PIR қозғалыс сенсорын қосу
PIR қозғалыс сенсорын қосу
PIR қозғалыс сенсорын қосу

PIR қозғалыс сенсорында үш түйреуіш бар: сәйкесінше қуат, gnd және дабыл (бірінші суретті қараңыз). Бұл нұсқаулықта ұсынылған қозғалыс сенсоры тікелей тақтаға қосыла алады. Бірақ біз қолданған сенсор үшін сымдарды кесіп алып тастау керек еді, содан кейін олардың ұштарын шіріп кетпес үшін дәнекерлеуге тура келді. Нан тақтайшасына еркек пен әйелдің қосқыш сымын қуат пен жерге түйреуішпен тізбектей салыңыз, содан кейін дабылдың түйреуіші бар ерлер мен еркектерге қосқыш сымын қосыңыз (екінші суретті қараңыз).

7 -қадам: Басқару тақтасындағы жарықдиодты қосу

Нан тақтасындағы жарықдиодты қосу
Нан тақтасындағы жарықдиодты қосу
Нан тақтасындағы жарықдиодты қосу
Нан тақтасындағы жарықдиодты қосу

Жарық диодты тақтаға қосыңыз. Жарық диодының қысқа сымымен тізбектей қара еркек пен еркекке арналған кабельді салыңыз. Содан кейін жарықдиодты ұзын сыммен әр түрлі түсті ерлер мен еркектерге қосқыш кабельді қосыңыз.

8 -қадам: Басқару тақтасының қосылымдары

Басқару тақтасының қосылымдары
Басқару тақтасының қосылымдары

PIR қозғалыс сенсорының аналық ұштарын базалық тақтадағы 5 вольтты кернеу көзіне қосыңыз. Содан кейін жарық диодты еркек сымды бүйірлік порттың жерге жалғаңыз, содан кейін PIR қозғалыс сенсорының дабылын, сосын жарықдиодты кіріс сымын қосыңыз (суретте көрсетілгендей).

Ұсынылған: