Cov txheej txheem:

4 Kauj Ruam Digital Sequencer: 19 Kauj Ruam (nrog Duab)
4 Kauj Ruam Digital Sequencer: 19 Kauj Ruam (nrog Duab)

Video: 4 Kauj Ruam Digital Sequencer: 19 Kauj Ruam (nrog Duab)

Video: 4 Kauj Ruam Digital Sequencer: 19 Kauj Ruam (nrog Duab)
Video: Arab drift In Assetto Corsa VR - stunt sim racer girl 2024, Hlis ntuj nqeg
Anonim
4 Kauj Ruam Digital Sequencer
4 Kauj Ruam Digital Sequencer
4 Kauj Ruam Digital Sequencer
4 Kauj Ruam Digital Sequencer

CPE 133, Cal Poly San Luis Obispo

Tus Tsim Txoj Haujlwm: Jayson Johnston thiab Bjorn Nelson

Hauv kev lag luam suab paj nruag niaj hnub no, ib qho ntawm feem ntau siv "seev" yog cov khoom siv digital. Txhua hom suab paj nruag, los ntawm hip-hop mus rau pop thiab txawm tias lub tebchaws, siv digital synthesizer hauv lub studio los tsim cov neeg ntaus thiab suab lawv xav tau coj lawv cov nkauj mus rau lub neej. Hauv qhov kev qhia no, peb yuav tsim cov khoom sib txuas yooj yim heev nrog Basys 3 FPGA board.

Tus tsim hluav taws xob yuav tuaj yeem ua plaub daim ntawv xaiv hauv peb lub hlis ntawm tus naj npawb ntawm cov neeg ntaus ib feeb. Cov neeg siv yuav siv cov hloov pauv los teeb tsa txhua lub hlis cim rau lub suab paj nruag. Rau qhov haujlwm no peb tab tom siv 4-ntsis digital rau analog hloov pauv (DAC) txhawm rau coj cov zis los ntawm pawg thawj coj saib thiab hloov nws mus rau hauv cov teeb liab analog. Cov txiaj ntsig los ntawm DAC yuav muab pub rau tus hais lus hauv computer, tsim peb cov nkauj. Kaum rau kev sib cais sib txawv yog ua tau. Peb yuav txwv peb cov neeg tsim khoom siv rau ib qho octave ntawm 12 ntawv, uas poob nruab nrab ntawm C (261.6 Hz) thiab B4 (493.9 Hz). Tus neeg siv tseem yuav muaj txoj hauv kev xaiv muab ntau cov ntawv sau tseg rau tib lub sijhawm, ntxiv rau muab qhov so los ntawm kev ntaus lub luag haujlwm thaum tsis muaj lub suab nrov hloov pauv mus rau saum. Raws li txhua qhov ntawv tau xaiv thiab raug ua si, tsab ntawv ceeb toom tau qhia ntawm 7-ntu zaub. Peb tseem yuav siv peb lub nyees khawm ntawm lub rooj tsavxwm, ib qho rau ua si thiab tso suab paj nruag tseg, ib qho rau rov kho lub tshuab hluavtaws thiab muab tso rau hauv "xaiv" hom, thiab qhov thib peb rau muab txhua qhov kev ceeb toom lub suab thaum xaiv hom.

Thaum tus neeg siv txaus siab rau lawv xaiv cov ntawv, thiab tom qab nias lub pob ua si, tus sib txuas ua ke yuav ua si txhua qhov kev ceeb toom ua ntu zus mus txog thaum tus neeg siv nias lub ncua lossis xaiv.

Nov yog cov npe khoom siv xav tau:

  • Vivado (lossis ib qho chaw ua haujlwm VHDL)
  • Basys 3 lossis pawg FPGA zoo sib xws
  • Digital rau analog hloov pauv (min. 4-khoom)
  • Hais lus nrog lub mloog pob ntseg
  • Hlau ua

Kauj Ruam 1: Tus Neeg Ua Haujlwm ntawm Digital Sequencer

Tus neeg siv ua haujlwm ntawm Digital Sequencer
Tus neeg siv ua haujlwm ntawm Digital Sequencer

Cov kauj ruam hauv qab no yog txhawm rau ua haujlwm digital sequencer. Cov lej ua ntu zus txhawb nqa kev ua si ntawm 12 qhov sib txawv (C, Db, D, Eb, E, F, Gb, G, Ab, A, Bb, B), uas yog los ntawm 261.6 Hz txog 493.9 Hz.

1. Nias lub khawm sab laug kom muab lub rooj tsavxwm xaiv. Thaum nyob hauv hom no, sab laug 4 qhov hloov pauv (hloov pauv 13 txog 16) yuav txhua tus siv los khaws tus nqi sib txawv.

2. Txhawm rau xaiv, tig ib qho ntawm cov laug qhib rau, thiab tom qab ntawd siv txoj cai 4 qhov hloov pauv (hloov 1 mus rau 4) los xaiv lub suab uas xav tau. Lub suab cuam tshuam nrog kev sib xyaw tshwj xeeb ntawm txoj cai hloov pauv yuav raug qhia ntawm xya ntu ntu, thiab cov zaub yuav hloov kho mus rau qhov tshiab cuam tshuam thaum twg txoj cai hloov pauv tau hloov mus rau kev sib xyaw tshiab. Ib qho so tuaj yeem muab tau los ntawm kev tsis txhob muab lub suab rau ib qho ntawm cov hloov pauv sab laug, lossis los ntawm kev muab lub suab pom zoo li 0 ntawm cov zaub rau sau ntawv. Thaum pom lub suab xav tau thiab pom ntawm lub vijtsam, nias lub pob hauv qab kom muab lub suab tshwj xeeb ntawd rau daim ntawv.

3. Rov ua cov kauj ruam 2 rau peb cov ntawv sau tseg, los ntawm kev tig rov qab ntawm txhua qhov kev hloov pauv sab laug ntawm ib tus zuj zus, xaiv lub suab sib luag nrog txoj cai hloov pauv, thiab nias lub pob hauv qab kom muab lub suab rau daim ntawv. Ntau cov ntawv tuaj yeem muab tso rau tib lub suab los ntawm kev hloov ntau dua ib qho ntawm cov laug hloov mus rau tib lub sijhawm.

4. Tam sim no tias txhua qhov ntawm cov lus ceeb toom tau muab tso rau, cov lej digital tau npaj ua si. Txhawm rau sau cov lus ntawm tus hais lus, tsuas yog nyem lub pob ua si/ncua sijhawm kom pib ua suab paj nruag. Qhov kev txiav txim ntawm qhov rov ua si tsom iav cuam tshuam nrog cov hloov pauv sab laug, ntawm sab laug mus rau sab xis. Cov ntawv yuav raug ntaus ntawm cov lej ntaus ib feeb, hauv qhov kev txiav txim 1, 2, 3, 4, 1, 2…. Cov zaub yuav qhia cov ntawv uas tam sim no ua si raws li cov neeg hais lus ua suab paj nruag. Txhawm rau ncua lub suab paj nruag rov ua dua, tsuas yog nyem lub pob kom raug, thiab tom qab ntawd lub suab paj nruag yuav tsum nres ua si thiab lub cim ncua yuav tshwm ntawm lub vijtsam. Nias lub khawm raug dua yuav rov pib ua haujlwm.

Kauj Ruam 2: Cov Lus Qhia Paub

Paub meej
Paub meej

Peb cov khoom siv hluavtaws ua rau siv ntau yam sib txawv ntawm cov khoom siv digital. Suav nrog yog lub xeev cov tshuab kawg, sau npe, ntau tus lej, sib faib moos thiab ntau dua. Txhawm rau tsim peb cov khoom sib txuas, peb siv 10 cov ntaub ntawv sib txawv. Ntau dua li ua txhua qhov qauv ua ib feem, peb tsoo cov ntaub ntawv modular los ntawm kev ua haujlwm. Feem ntau cov qauv, vim li ntawd, muaj ntau dua ib qho. Nco tseg cov duab saum toj no qhia txhua block uas txuas ua ke hauv peb cov qauv tsim.

Peb yuav tham txog txhua tus qauv los ntawm kev piav qhia cov tswv yim thiab cov txiaj ntsig, rhuav nws cov khoom, thiab piav qhia nws lub hom phiaj hauv kev tsim qauv tag nrho. ZIP cov ntaub ntawv suav nrog hauv qab ntawm cov lus qhia, uas muaj txhua VHDL cov ntaub ntawv siv hauv txoj haujlwm.

Cov tswv yim

  • Clk (teeb liab moos ib txwm)
  • PP (ua si/ncua)
  • Sel (muab cov tshuaj sib xyaw rau hauv xaiv hom)
  • Muab (muab ib kauj ruam rau lub suab)
  • Kauj ruam (cov ntawv sau cia)
  • Freq (cov keyboards tsim lub suab uas xav tau)

Cov zis

  • Anode (7-ntu anodes)
  • Cathode (7-ntu cathodes)
  • DAC (4-ntsis tsav DAC)

Kauj Ruam 3: Cov Lus Qhia Paub

Paub meej
Paub meej

Kauj ruam 4: 7-ntu Clock Divider

7-ntu Clock Divider
7-ntu Clock Divider

Peb cov khoom siv hluav taws xob ua rau siv peb lub moos faib, txhua qhov tsim tawm cov cim uas ua haujlwm sib txawv hauv peb txoj haujlwm. Lub moos sib faib siv lub cim cim ib txwm thiab tsim cov cim hloov pauv uas muaj qhov zaus uas tsawg dua li lub teeb liab qub. Lub moos ib txwm ntawm Basys 3 yog 100 MHz. Qhov no yog qhov zaus uas peb lub sijhawm faib faib siv. Yog tias koj tab tom siv FPGA pawg thawj coj sib txawv nrog lub moos sib txawv hauv ib lub sijhawm, koj yuav tau hloov kho txoj cai.

7-ntu ntu faib ua lub teeb liab uas tsav cov ntaub ntawv seg_display. Peb yuav piav qhia yuav ua li cas cov ntaub ntawv no ua haujlwm ntau ntxiv thaum peb mus rau nws ntu. Qhov tseem ceeb, lub moos faib ua lub teeb 240 Hz uas yuav siv los hloov ntawm anodes thiab cathodes ntawm cov zaub. Lub teeb liab yog 240 Hz vim qhov zaus uas tib neeg lub qhov muag tsis tuaj yeem lees paub tias tsis muaj lub teeb yog 60 Hz. Peb siv ob tus lej, yog li ob npaug ntawm qhov zaus no, txhua tus lej yuav oscillate ntawm 60 Hz. Tom qab ntawd peb ob npaug nws tau txais 240 Hz vim tias lub kaw lus tsuas yog hloov pauv thaum lub teeb liab mus siab, tsis yog thaum nws qis.

Txhawm rau ua tiav qhov no, tus faib faib siv tus neeg ib txwm 100 MHz teeb liab thiab suav txog txhua qhov nce ntawm ntug. Thaum lub txee nce mus txog 416667, cov zis yuav tawm ntawm qis mus rau siab, lossis hloov pauv.

Cov tswv yim

Clk (teeb liab moos ib txwm)

Cov zis

Clk_7seg (rau seg_display)

Cheebtsam

  • D sau npe
  • MUX
  • Inverter
  • Adder

Kauj Ruam 5: Beats Per Minute Clock Divider

Beats Per Minute Clock Divider
Beats Per Minute Clock Divider

BPM moos faib ua haujlwm zoo ib yam. Qhov kev faib tawm no tsim lub moos zaus uas ua rau hloov pauv ntawm plaub theem thaum tso suab nrov hauv lub xeev ua si. Peb txiav txim siab hloov pauv ntawm cov ntawv ntawm 100 BPM. Ntawm 100 BPM, txhua daim ntawv yuav ua si rau 3/5 ntawm ib pliag. Cov txiaj ntsig tshwm sim yuav muaj zaus ntawm 1.67 Hz.

Txhawm rau tsim lub teeb liab ntawm qhov zaus no, peb tau rov siv lub suav suav, tab sis lub sijhawm no suav yog 60 lab. Txhua lub sij hawm lub txee ntaus 60 lab, cov teeb liab tso tawm yuav hloov siab lossis qis.

Cov tswv yim

Clk (zaus moos zaus)

Cov zis

Clk_BPM (rau output_FSM)

Cheebtsam

  • D sau npe
  • MUX
  • Inverter
  • Adder

Kauj Ruam 6: Pitch Clock Divider

Pitch Clock Divider
Pitch Clock Divider

Cov Pitch Clock Divider yog qhov loj tshaj ntawm peb lub moos faib. Qhov kev faib tawm no nthuav tawm 12 lub cim sib txawv sib xws rau 12 qhov sib txawv sau cia uas peb cov sib txuas ua ke tuaj yeem ua si. Siv kev paub pib ntawm suab paj nruag txoj kev xav, peb txiav txim siab tias me ntsis lossis tsheb npav tuaj yeem hloov pauv ntawm tus nqi uas sib raug rau cov suab paj nruas zaus. Txhawm rau pom cov zaus uas peb siv, saib ntawm no. Peb siv plaub lub octave ntawm cov suab.

Tib qho kev suav suav tau siv ntawm no. Txog cov txiaj ntsig tshwj xeeb peb suav rau, saib cov ntawv sau npe Clk_div_pitches.

Cov tswv yim

Clk (zaus moos zaus)

Cov zis

C, Db, D, Eb, E, F, Gb, G, Ab, A, Bb, B (rau output_select)

Cheebtsam

  • D sau npe
  • MUX
  • Inverter
  • Adder

Kauj Ruam 7: Ua Si/Ncua/Xaiv Lub Xeev Tshuab

Ua Si/Ncua/Xaiv Lub Xeev Tshuab
Ua Si/Ncua/Xaiv Lub Xeev Tshuab

Hauv peb qhov haujlwm muaj ob lub xeev cov tshuab kawg (FSM). FSM yog cov cuab yeej siv logic uas tuaj yeem muaj nyob hauv ib lub xeev nkaus xwb ntawm cov xeev uas muaj qhov txwv. Siv FSM, kev siv hluav taws xob digital tuaj yeem txav mus rau lub xeev tshiab raws li kev sib xyaw ua ke. Siv cov tswv yim nkag siab, lub xeev ntawm FSM yuav hloov pauv thaum muaj qhov nce ntawm lub moos. Los ntawm lub xeev thiab cov tswv yim nkag mus rau hauv Circuit Court, koj tuaj yeem tsim cov tswv yim tawm tswv yim uas muab cov txiaj ntsig uas tsuas yog muaj yog tias FSM nyob hauv qee lub xeev.

Lub tshuab PPS lub xeev yog thawj FSM hauv peb qhov Circuit. Muaj peb lub xeev hauv FSM no; Ua si, ncua, thiab xaiv hom. Txhawm rau txav los ntawm cov xeev sib txawv, peb tau siv PP thiab Xaiv khawm. Saib lub xeev daim duab saum toj no kom pom tias kev hloov pauv ntawm cov xeev tshwm sim li cas. Peb tau ua qhov kev hloov pauv FSM ntawm qhov nce ntawm cov neeg ib txwm 100 MHz moos, yog li nws yuav tsis yooj yim sua kom lub tshuab tsis hloov pauv thaum ib qho ntawm cov nyees khawm raug nias, txawm tias siv sijhawm luv heev. Lub xeev tam sim no (P_state) tsuas yog tso tawm los ntawm cov qauv no.

Cov tswv yim

  • Clk (zaus moos zaus)
  • Sel (khawm sab laug)
  • PP (txoj cai khawm)

Cov zis

P_state (lub xeev tam sim no, rau output_FSM, nco_ assign, seg_dsiplay, zaum kawg_select)

Cheebtsam

  • MUX
  • D sau npe

Kauj Ruam 8: Ua Si/Ncua/Xaiv Lub Xeev Tshuab

Ua Si/Ncua/Xaiv Lub Xeev Tshuab
Ua Si/Ncua/Xaiv Lub Xeev Tshuab

Kauj Ruam 9: Tso Tawm FSM

Tso zis FSM
Tso zis FSM

Nov yog qhov thib ob FSM tau hais hauv ntu dhau los. Qhov FSM no ua haujlwm sib txawv dua li lwm qhov, tab sis lub hauv paus rau qhov no yog qhov tseem ceeb ib yam.

Cov zis FSM tsuas yog ua haujlwm yog tias lub xeev tam sim no los ntawm thawj FSM yog "01" (lub xeev ua si). Qhov tseem ceeb, qhov no yog qhov ua tau zoo rau tus qauv. Yog tias lub xeev yog "01", ces FSM yuav hloov pauv ntawm cov xeev ntawm ntug kev nce ntawm BPM moos teeb liab. Peb ua qhov no vim tias output_FSM yog tswj hwm tus lej binary rau lub suab xaiv tau xa mus rau output_select thiab seg_display modules. FSM muaj 16-ntsis cov tswv yim los ntawm cov ntawv sau ua qauv, uas yuav suav nrog tom ntej. Hauv "00" lub xeev rau qhov output_FSM, tus qauv yuav tso tawm "xxxx" rau thawj daim ntawv ceeb toom. Tom qab ntawd hauv "01", nws yuav tso tawm "yyyy" rau daim ntawv thib ob thiab ntxiv rau txhua daim ntawv ua ntej yuav rov qab mus rau thawj daim ntawv. Saib lub xeev daim duab saum toj no.

Qhov FSM no txawv ntawm thawj qhov vim tias tsis muaj lub tswv yim logic los tswj kev hloov pauv ntawm cov xeev. Hloov chaw, FSM tsuas yog ua haujlwm thaum lub xeev los ntawm thawj FSM yog "01", thiab tom qab ntawd FSM no yuav hloov pauv ntawm cov xeev tsuas yog nyob ntawm ntug kev nce ntawm lub moos teeb liab. Lwm qhov sib txawv yog tias cov qauv no muaj cov laj thawj tsim tawm, txhais tau tias nws tsis tso tawm lub xeev tam sim no, nws tso tawm tus lej binary rau lub suab ntawm lub xeev ntawd.

Cov tswv yim

  • Clk_BPM (BPM moos teeb liab los ntawm lub moos faib)
  • FSM1_state (PS los ntawm PPS FSM)
  • Suab_in (suab los ntawm note_ assignments)

Cov zis

Suab_out (ib lub suab ntawm ib lub sijhawm, rau output_select thiab seg_display)

Cheebtsam

  • MUX
  • D sau npe

Kauj Ruam 10: Tso Tawm FSM

Tso zis FSM
Tso zis FSM

Kauj Ruam 11: Nco Ntsoov

Nco Ntsoov
Nco Ntsoov

Cov ntawv ceeb toom muab lub luag haujlwm yog lub luag haujlwm tiag tiag muab lub suab rau cov ntawv sau cia, lossis qib. Qhov module no yog qhov yooj yim heev. Nws xub txheeb xyuas yog tias lub Circuit Court nyob hauv lub xeev "xaiv" thiab yog tias cov kauj ruam hloov (sab laug deb) yog siab. Yog tias qhov no muaj tseeb thiab nias lub pob ua haujlwm, qhov tso tawm ntawm tus qauv yuav sib npaug rau tus lej binary sawv cev los ntawm qhov hloov pauv zaus (sab xis).

Thaum xub thawj, peb tau sim ua tus qauv uas yuav txuag tau ib qho ntawm lub suab hais tawm suab mus rau qhov tso tawm, tab sis peb tau ntsib teeb meem nrog cov zis hloov pauv kom ua raws cov lus qhia hauv lub moos. Nov yog tib qho qauv siv ntau dua ib zaug hauv qhov tsim qauv zaum kawg. Txhua kauj ruam muaj cov ntawv sau ua haujlwm cuam tshuam nrog nws, thiab vim li ntawd, txhua qhov piv txwv ntawm tus qauv tau txais ib qho me me ntawm Cov npav npav.

Cov tswv yim

  • P_state (lub xeev tam sim no los ntawm PPS FSM)
  • Sel (khawm sab laug)
  • Hloov (ib kauj ruam hloov)
  • Freq (txoj cai nyob deb rau lub suab)
  • Muab (khawm hauv qab, muab ntawv ceeb toom)

Cov zis

Suab (binary tooj, rau output_FSM)

Cheebtsam

  • MUX
  • D resgister

Kauj Ruam 12: Xaiv Qhov Xaiv

Xaiv cov zis
Xaiv cov zis

Xaiv cov zis yog lub luag haujlwm rau kev suav tus lej binary rau lub suab thiab txuas qhov ntawd rau nws lub moos teeb tsa. Txawm hais tias nws loj npaum li cas, qhov no kuj tseem yog qhov qauv yooj yim. Output_select yog qhov tseem ceeb ntawm kev txiav txim siab binary, txiav txim siab tus lej binary rau lub suab mus rau lub cim tshwj xeeb moos. Tiag tiag muab qhov tso tawm rau lub moos zaus ua haujlwm tau zoo dua ntawm no piv rau daim ntawv teev npe teev tseg, vim tias txhua qhov qauv no yuav tsum tau ua yog MUX lub moos teeb liab nrog tus lej binary sawv cev rau kev tswj hwm.

Peb thov txim rau txoj kev coj txawv txawv, Vivado tau teeb tsa lub suab cim ua tus cim rau clk_div_pitches cov ntaub ntawv, tab sis rau cov ntawv no nws tau teeb tsa lawv los ntawm kev nce tus lej binary, ua rau cov lus sib dhos sib txawv. Tseem nco ntsoov tias yog tus lej binary los ntawm output_FSM yog "0000" lossis ib yam dab tsi ntau dua "1100", tom qab ntawd MUX xa los ntawm lub tiaj '0' teeb liab.

Tswv yim

  • Suab (los ntawm output_FSM);
  • C, Db, D, Eb, E, F, Gb, G, Ab, A, Bb, B (lub suab qhia lub moos)

Tso zis

Tone (ib qho me me uas haum rau lub moos xaiv teeb liab, rau square_wave)

Cheebtsam

MUX

Kauj Ruam 13: Square Wave Gen

Square Wave Gen Cov
Square Wave Gen Cov

Module square_wave yog lub tshuab hluav taws xob rau cov xwm txheej yoj uas tawm los ntawm pawg thawj coj mus rau DAC. Siv lub suab cim los ntawm cov ntaub ntawv dhau los, qhov square_wave no hloov pauv 4 tus lej ntawm "0000" thiab "1111" ntawm qhov nce ntawm ntug ntawm Tone. Tone yog lub suab nrov tshwj xeeb, yog li ntawd square_wave ua rau nthwv dej uas muaj qhov sib txawv sib txawv thaum output_FSM hloov mus rau lwm lub xeev. Qhov 4-ntsis tso tawm los ntawm tus qauv no mus rau tus lej fin_sel, qhov twg logic hais qhia seb lub npav no yuav raug tso tawm raws lub xeev los ntawm PPS FSM.

Lwm txoj hauv kev rau lub tshuab hluav taws xob plaub fab xwm txheej no yog tsim hluav taws xob sine. Thaum qhov no feem ntau yuav tsim lub suab lus kawg zoo dua, nws yog qhov nyuaj dua rau siv, yog li peb tau xaiv tsuas yog tsim kom muaj ib puag ncig yoj.

Cov tswv yim

Tone (oscillating me ntsis los ntawm output_select)

Cov zis

DAC_input (oscillating 4-ntsis npav uas hloov pauv ntawm tib lub suab nrov)

Cheebtsam

  • Inverter
  • D sau npe

Kauj Ruam 14: 7-ntu Zaub

7-ntu Zaub
7-ntu Zaub

Seg_display module tswj hwm 7-ntu tso saib ntawm peb lub hauv paus pawg thawj coj. Tsis pub dhau tus qauv, ob txheej txheem tshwm sim. Thawj txheej txheem txiav txim siab Freq thaum nyob hauv "xaiv" xeev lossis Suab thaum nyob hauv "ua si" hom. Hauv "ncua" hom, tus qauv txiav txim siab los qhia lub cim ncua. Saib ntawm VHDL tus lej, koj tuaj yeem pom tias lub binary decoder tiag tiag txiav txim siab cov tswv yim rau hauv ob lub cim sib txawv, cathode1 thiab cathode2. Cathode1 sawv cev rau tsab ntawv coj mus rau lub suab kom pom, thiab cathode2 sawv cev rau lub cim tiaj (b) yog tias muaj. Qhov laj thawj rau qhov no cuam tshuam nrog txheej txheem thib ob ua los ntawm seg_display module.

Ntawm lub rooj tsav xwm basys3, ntu ntu muaj ntau cov cathodes. Thaum lub anodes tswj uas tus lej tau qhib, cov cathodes tswj uas ntu nyob ntawm. Txij li cov zaub muaj ntau cathodes, uas txhais tau tias koj tsuas tuaj yeem tso saib ib pawg ntawm ntu ib zaug. Qhov ntawd ua rau muaj teeb meem rau txoj haujlwm no vim tias peb xav tso ib tsab ntawv ntawm thawj tus lej thiab cim cim, yog tias tsim nyog, tib lub sijhawm. Tam sim no nco qab lub 7seg moos teeb liab? Txhawm rau hla qhov teeb meem no, peb hloov pauv anodes thiab cathodes rov qab los ntawm 7seg moos teeb liab. Vim tias lub moos teeb liab yog 240 Hz thiab peb siv ob tus lej, txhua tus lej yuav oscillate ntawm 60 Hz. Rau tib neeg lub qhov muag, nws yuav zoo li cov lej tsis yog oscillating txhua.

Tsis tas li nco ntsoov tias basys3 pawg thawj coj saib siv qhov tsis zoo. Qhov no txhais tau tias yog anode lossis cathode tau teeb tsa rau '0', tus lej lossis ntu yuav nyob, thiab rov ua dua.

Cov tswv yim

  • Suab (binary naj npawb rau kev ceeb toom, siv hauv kev ua si hauv xeev)
  • Freq (zaus hloov pauv, siv thaum nyob hauv lub xeev xaiv)
  • P_state (lub xeev tam sim no los ntawm PPS FSM)
  • Clk_240Hz (lub moos teeb liab los ntawm Clk_div_7seg, ob npaug 120 vim tias peb tsuas yog siv lub ntug nce)

Cov zis

  • Cathode (tsheb npav uas tswj ntu ntawm cov zaub, tso tawm zaum kawg)
  • Anode (tsheb npav uas tswj tus lej ntawm cov zaub, tso tawm zaum kawg)

Cheebtsam

  • Latch
  • MUX
  • D sau npe

Kauj Ruam 15: Xaiv Qhov Kawg

Xaiv Kawg
Xaiv Kawg

Xaiv zaum kawg yog qhov kawg module siv hauv txoj haujlwm no. Lwm qhov qauv yooj yim, cov qauv no tswj hwm qhov tso tawm zaum kawg uas yuav mus rau DAC. Thaum nyob hauv "xaiv" lossis "ncua" lub xeev, tus qauv yuav tso tawm qhov qub "0000" kom tsis muaj suab paj nruag yuav raug ntaus los ntawm tus hais lus. Hauv lub xeev "ua si", tus qauv yuav tso tawm 4-khoom raws li tau txiav txim los ntawm square_wave.

Cov tswv yim

  • P_state (lub xeev tam sim no los ntawm PPS FSM)
  • DAC_input (oscillating 4-khoom los ntawm square_wave)

Cov zis

DAC (sib npaug DAC_input hauv lub xeev ua si, tso tawm zaum kawg)

Cheebtsam

MUX

Kauj Ruam 16: Cov Khoom Siv Sab Nraud: DAC

Cov Khoom Siv Sab Nraud: DAC
Cov Khoom Siv Sab Nraud: DAC

Ib qho digital rau analog hloov pauv (DAC) siv lub teeb liab tsis sib xws thiab hloov nws mus rau lub teeb liab txuas ntxiv. Peb DAC muaj plaub qhov me me thiab tau tsim los ntawm cov lus sib txuas ua ke. Los ntawm kev siv qhov sib piv ntawm cov neeg tawm tsam hauv cov khoom siv thiab cov lus tawm tswv yim, peb muaj peev xwm los tsim cov kab ke uas tawm ntawm 16 qib sib txawv tsim los ntawm "suav" ntawm txhua ceg. Bit0, cov ceg ntoo saum toj kawg nkaus, nqa qhov hnyav tsawg tshaj plaws thiab pab txhawb lub peev xwm me tshaj plaws thaum siab vim tias cov ceg ntoo siab dua. Qhov hnyav nce ntxiv thaum koj nqes ceg. Yog tias koj tau suav hauv binary nce thiab tom qab ntawd rov qab siv cov khoom siv me ntsis, cov hluav taws xob tso tawm yuav zoo li cov kauj ruam ntse sine yoj. Cov tswv yim rau DAC tau txuas nrog ib qho ntawm PMODs ntawm pawg thawj coj saib kom hloov pauv 4-ntsis teeb liab.

DAC tau xub tsim ua ke rau chav Kawm Hluav Taws Xob thiab tau tsim thiab muag los ntawm peb, tsis yog yuav los ntawm lub khw. Saum toj no yog daim duab ntawm cov ntaub ntawv tsim los tsim cov ntawv luam tawm Circuit board.

Kauj Ruam 17: Cov Khoom Siv Sab Nraud: Hais Lus

Cov Khoom Siv Sab Nraud: Hais Lus
Cov Khoom Siv Sab Nraud: Hais Lus

Rau qhov haujlwm no, koj yuav tsis xav yuav ib khub zoo nkauj ntawm tus hais lus. Raws li koj tuaj yeem qhia, lub suab zoo nkauj yooj yim. Peb tau mus thiab yuav $ 8 teeb tsa lub khoos phis tawj hais lus los ntawm Best Buy. Txhua yam nrog lub mloog pob ntseg ua haujlwm zoo. Monotone ua haujlwm zoo ib yam. Koj tuaj yeem siv lub mloog pob ntseg, tab sis koj tuaj yeem tshuab lawv tawm!

Txhawm rau txuas cov zis ntawm DAC rau cov neeg hais lus, peb tau siv cov hlua txuas txuas thiab tom qab ntawd tuav cov kab hluav taws xob tso rau qhov kawg ntawm lub mloog pob ntseg thiab lub xov tooj rau hauv av rau hauv paus. Peb tau sim siv daim kab xev hluav taws xob los tuav cov hlua nyob hauv qhov chaw, tab sis nws ua rau muaj kev cuam tshuam ntau. Sim ua daim kab xev sib txawv tuaj yeem daws qhov teeb meem no.

Rau peb cov neeg hais lus, peb tig lawv mus rau qhov chaw siab tshaj thiab tau txais lub suab nrov nrov.

Thiab qhov ntawd yog cov kauj ruam kawg rau kev tsim cov lej digital los ntawm FPGA pawg thawj coj! Mus rau ob ntu tom ntej txhawm rau rub tawm tag nrho peb cov VHDL code thiab pom cov ntu ua ntu zus.

Kauj Ruam 18: Video Demo

Cov vis dis aus no qhia txog qhov kawg ntawm txoj haujlwm ua haujlwm, suav nrog cov txheej txheem muab cov hloov pauv mus rau 4 qhov sib txawv, thiab cov neeg hais lus ua si cov ntawv tshwj xeeb.

Kauj Ruam 19: VHDL Code

Nov yog cov cai rau tag nrho txoj haujlwm, suav nrog kev txwv thiab sim cov ntaub ntawv siv thaum tsim cov ntu. Nco ntsoov tias cov ntaub ntawv tsim tsis tau siv hais li ntawd hauv cov vaj tsev.

Pom zoo: