Sisukord:
- 1. samm: 1. samm: kuidas see toimib
- 2. samm: 2. samm: Basys 3 tahvli programmeerimine
- 3. samm: 3. samm: kuidas seda kasutada
Video: Integer_Matrix_Solver_UART_SERIAL_VHDL: 3 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:50
See juhendatav õpetus näitab teile, kuidas teha 2 x 2 maatriksi lahendajat nii UART jadaterminali mooduli kui ka maatriksilahendusmooduli abil. Kasutajal on võimalik sisestada 2 x 2 maatriks ja seejärel sülitab rakendatud disainilahendus lineaarsüsteemi.
Selle koodi kasutamiseks vajate:
- Digilent Basys 3 FPGA -plaat
- arvuti Xilinx Vivado tarkvaraga (Webpack Edition töötab). Selle mooduli puhul kasutasime versiooni 2017.2.
- mikro -USB -juhe (võimeline andmeedastuseks)
Autorid: Drew Miller, EE major, Cal Poly SLO, Sukhdeep Singh, EE major, Cal Poly SLO klass: digitaalne disain
- EE/CPE 133 Juhendaja: Joseph Callenes
Allikad:
- UART_TX, UART_RX saidilt:
- Lahkuge siit:
Funktsioon kahe allkirjastamata numbri jagamiseks:
1. samm: 1. samm: kuidas see toimib
Sisendid: kasutaja sisestab arvutiterminali lineaarse süsteemi ja seejärel teisendab UART -moodul need maatriksilahendusmooduli massiiviks, mida saab manipuleerida. UART -moodul liidestub kasutajaga ja võimaldab tal sisestada sobiva maatriksi ning juhendada neid andmete korrektseks sisestamiseks. Süsteemil on ka lähtestamise/lubamise lüliti, mis on kaardistatud Basys3 plaadi vasakpoolseima lüliti külge.
Väljundid: maatriksilahendaja tulemused viiakse läbi UART -mooduli liidese ja kuvatakse seejärel arvutiterminalis koos ekraanil loetletud lahendustega. Maatriksilahendaja väljastab allkirjastamata standardloogika vektoreid UART -moodulisse, mis teisendab need kasutajasõbralikumaks väljundiks, mida kasutaja hindab. Praegune maatriksilahendaja saab sisestada ainult numbreid kuni 15 ja väljundtulemus peab olema puhas täisarv või vastasel juhul ei suuda maatriksilahendaja programm väljastada õiget lahendust.
Ülataseme "jadakontrolli" moodul: kasutaja sisestab sellesse moodulisse soovitud lineaarse süsteemi läbi moodulite UART_TX ja UART_RX ning teisendab sisendid arvutiterminalist standardsete loogikavektorite massiiviks, mida töödeldakse maatriksi lahendaja mooduliga. Seejärel tagastab maatriksilahendusmoodul massiivi standardseid loogikavektoreid, mis seejärel kuvatakse ekraanil UART jadaliidese kaudu. Andmete edastamine ja vastuvõtmine UART -moodulite kaudu toimub selles moodulis väga pika FSM -i abil.
UART_TX moodul: kasutaja sisestab 8 -bitise standardloogikavektori ja saatmissignaali, et saata andmeid USB -liidese kaudu. Andmete saatmise ajal on TX_Active signaal kõrge. Pärast andmete saatmist hakkab TX_Done signaal pulseerima.
UART_RX moodul: kasutaja saab USB -liideselt korraga 8 bitti andmeid. RX_DV impulss näitab, et andmed on vastu võetud ja et RX_Byte vektorloogikat saab lugeda.
Maatriksilahendaja moodul: maatriksilahendaja saab maatriksit esindavalt UART -moodulilt arvestusliku massiivi. Seejärel teisendab maatriksilahendaja iga lineaarsüsteemi numbri täisarvudeks, et oleks lihtsam neid kasutada. Maatriksilahendusmooduli sees on mitu alammoodulit. Esimene alammoodul on pöördmaatriks_1, mis võtab maatriksi ja annab seejärel antud maatriksi pöördvõrde. Järgmine alammoodul on kordaja, mis korrutab totaalse maatriksi pöördmaatriksiga, kasutades standardseid maatriksioperatsioone. Lõpuks kaardistab põhimoodul need kokku, et saada üksainus vastus.
2. samm: 2. samm: Basys 3 tahvli programmeerimine
Kui olete allika lähtekoodi omandanud, laadige see liidese kasutamiseks üles bass 3 tahvlile.
reference.digilentinc.com/basys3/refmanual
3. samm: 3. samm: kuidas seda kasutada
Kasutage 9600 baudiga jadaliidest Basys3 UART -iga suhtlemiseks. Kasutasin ekraani linuxis järgmise käsuga:
ekraan /dev /ttyUSB1 9600
Selleks, et seda Linuxis teha, pidin lisama oma kasutaja gruppi "dialout". Windowsis peaks kitt töötama ja MacOSX -is peaks see olema sarnane protsess Linuxiga.
Vasakpoolseima lüliti pööramine sisselülitatud asendisse käivitab maatriksi lahendaja. Selle väljalülitamine lähtestab maatriksi lahendaja.
Soovitan:
Atari punkkonsool beebiga 8 sammu järjestus: 7 sammu (piltidega)
Atari punkkonsool koos beebi 8-astmelise sekveneerijaga: see vaheehitus on kõik-ühes Atari punk-konsool ja beebi 8-astmeline järjestus, mida saate freesida Bantam Tools töölaua PCB-freespingis. See koosneb kahest trükkplaadist: üks on kasutajaliidese (UI) plaat ja teine on utiliit
Akustiline levitatsioon Arduino Unoga samm-sammult (8 sammu): 8 sammu
Akustiline levitatsioon Arduino Uno abil samm-sammult (8 sammu): ultraheliheli muundurid L298N DC-naissoost adapteri toiteallikas isase alalisvoolupistikuga Arduino UNOBreadboard ja analoogpordid koodi teisendamiseks (C ++)
4G/5G HD -video otseülekanne DJI droonilt madala latentsusega [3 sammu]: 3 sammu
4G/5G HD-video otseülekanne DJI droonilt madala latentsusega [3 sammu]: Järgnev juhend aitab teil saada HD-kvaliteediga otseülekandeid peaaegu igalt DJI droonilt. FlytOSi mobiilirakenduse ja veebirakenduse FlytNow abil saate alustada drooni video voogesitust
Polt - DIY juhtmeta laadimise öökell (6 sammu): 6 sammu (piltidega)
Bolt - DIY juhtmeta laadimise öökell (6 sammu): Induktiivsed laadimised (tuntud ka kui juhtmeta laadimine või juhtmeta laadimine) on traadita jõuülekande tüüp. See kasutab kaasaskantavatele seadmetele elektrit pakkumiseks elektromagnetilist induktsiooni. Kõige tavalisem rakendus on Qi traadita laadimisst
4 sammu aku sisemise takistuse mõõtmiseks: 4 sammu
4 sammu aku sisemise takistuse mõõtmiseks: Siin on 4 lihtsat sammu, mis aitavad mõõta taigna sisemist takistust