ዝርዝር ሁኔታ:

መቃኛ: 9 ደረጃዎች
መቃኛ: 9 ደረጃዎች

ቪዲዮ: መቃኛ: 9 ደረጃዎች

ቪዲዮ: መቃኛ: 9 ደረጃዎች
ቪዲዮ: ምርጥ ፀባዮችን በቀላሉ መልመድ 8 መንገዶች 2024, ሀምሌ
Anonim
Image
Image
የመሣሪያዎች ዝርዝር (የቦርዱን ፎቶ እና የኬቨን ኮምፓስን ያንሱ)
የመሣሪያዎች ዝርዝር (የቦርዱን ፎቶ እና የኬቨን ኮምፓስን ያንሱ)

ይህ ፕሮጀክት ቪቫዶን እና ባለ 7 ክፍል ማሳያ በመጠቀም የጊታር ማስተካከያ ለማድረግ የተነደፈ ነው። መቃኛው የግቤት ድምፅን ድግግሞሽ አንዴ ካገኘ ፣ አስተካካዩ ያንን እሴት ለትክክለኛ ማስታወሻዎች መደበኛ ድግግሞሽ በመባል ለሚታወቁት ትክክለኛ ድግግሞሾች ከከባድ ኮድ የተደረደሩ እሴቶች ዝርዝር ጋር ያወዳድራል። ከዚያ መቃኛው እርስዎ ከሚፈልጉት ማስታወሻ ምን ያህል ቅርብ ወይም ሩቅ እንደሆነ ያሳያል። የሚገርመው የድምፅ ሞገድ የብዙ የ sinusoidal ሞገድ ቅርጾችን ከእውነተኛ እና ምናባዊ ክፍሎች ጋር በማጣመር ነው። ከማያውቋቸው ጋር ለመስራት አስቸጋሪ ቢመስልም ፣ አሁንም በእውነተኛ እና ምናባዊ እሴቶች ማዕበልን መተንተን የምንችልባቸው ጥቂት መንገዶች አሉ።

ማሳያ ፦

ደረጃ 1 - የመሣሪያዎች ዝርዝር (የቦርዱን ፎቶ እና የኬቨን ኮምፕን ያንሱ)

በመጀመሪያ እኛ የ Basys 3 ሰሌዳ እና የሚከተሉትን ፕሮግራሞች የሚደግፍ ኮምፒተር እንፈልጋለን። ጋራጅ ባንድ/ድፍረቱ ወይም ሌላ DAW - በማይክሮፎን ለመቅዳት እና ዋቭፊሎችን ወደ ውጭ መላክ።

ፓይዘን - ለናሙና እና ለፋፍሎች ፒላብን እና ሳይኪን መጠቀም ይችላል

ቪቫዶ - ከ Basys 3 ሰሌዳ ጋር ለመገናኘት እና ውጤቱን በምስል ለማየት

ደረጃ 2 አጠቃላይ እይታ

አጠቃላይ እይታ
አጠቃላይ እይታ

መቃኛ በጥቂት አስፈላጊ ክፍሎች የተሠራ ነው -ማይክሮፎን ፣ ናሙና ፣ ኤፍኤፍቲ (ፈጣን ፎሪየር ትራንስፎርሜሽን) ፣ ማነጻጸሪያ ፣ ዲኮደር እና ማሳያ። የማይክሮፎኑ ዓላማ የግብዓት ሞገድ ቅርፅን ለመያዝ ነው። ናሙናው የማይክሮፎኑን የውጤት ምልክት ይቀበላል እና ምልክቱን ወደ ድግግሞሽ መጠን ወደ ውፅዓት ለመለወጥ ኤፍኤፍቲውን ይጠቀማል። ከዚያ የኤፍኤፍቲውን ውፅዓት በመጠቀም እና ከፍተኛውን መጠን እና ከእሱ ጋር የተዛመደውን ድግግሞሽ በ 2 የተከፈለ ፣ ከማዕበል ቅርፅ ጋር የተዛመደ ድግግሞሽ ሊገኝ ይችላል። ያ እሴት ከዚያ ወደ ማነፃፀሪያው ውስጥ ሊገባ ይችላል። ከዚያ ለሁሉም ማስታወሻዎች ፍጹም እርከኖች የድግግሞሽ እሴቶችን አስቀድሞ ካዘጋጀው ከማየት ጠረጴዛ ጋር ይነፃፀራል። ማነፃፀሪያው ለተፈለገው ማስታወሻ ግቤት ተሰጥቶታል ፣ ከዚያ ተፈላጊውን ማስታወሻ ከተገቢው ሠንጠረዥ ትክክለኛ ድግግሞሽ ጋር ማዛመድ ይችላል። ከዚያ ማነፃፀሪያው በጣም ቅርብ በሆነ ድግግሞሽ ወደ ከፍተኛው ድግግሞሽ ማስታወሻውን ይመርጣል። ማነፃፀሪያው ሁለቱን እሴቶች ያወዳድራል እና የድግግሞሽ እሴቱን ወደሚፈለገው እና ከዚያ ያንን ምልክት ወደ ምልክት ውስጥ ያስቀምጣል። ማነፃፀሪያው ያንን ምልክት ወደ ዲኮደር ይልካል ፣ ዲኮደርው የማስታወሻውን ትክክለኛነት ለማሳየት የ 7 ክፍል ማሳያ አኖዶቹን ግብዓቶች ይመርጣል።

ደረጃ 3: Wav ፋይል

Wav ፋይል
Wav ፋይል

በዚህ ደረጃ ፣ እኛ የቃጫ ድምጽ ዋቭ ፋይል እንወስዳለን እና የዚያውን ድግግሞሽ ድግግሞሽ ለማውጣት እንሞክራለን።

በመጀመሪያ የማስታወሻ wav ፋይል ያስፈልግዎታል። በዚህ ምሳሌ ውስጥ የ 44.1kHz ናሙና መጠን ያለው 16 ቢት ስቴሪዮ ዋቭ ፋይል እንጠቀማለን። ይህ እንደ ጋራጅ ባንድ በ DAW ውስጥ ሊፈጠር ወይም ሊወርድ ይችላል። ለዚህ ምሳሌ ፣ በእኛ ጋራጅ ባንድ ላይ የተፈጠረ የ A4 440Hz ሲን ሞገድ እዚህ ማውረድ ይችላል።

ደረጃ 4- Python- የ Pylab እና Scipy አጠቃቀም

Python- የ Pylab እና Scipy አጠቃቀም
Python- የ Pylab እና Scipy አጠቃቀም

“ፈጣን የፎሪየር ትራንስፎርሜሽን” ለማድረግ የ Python ቤተ -መጽሐፍትን ተጠቀምን። የመስመር ላይ መርጃ በፒላብ እና በሳይሲ ውስጥ ምን እንደሚመስል እንድንመስል እና እንድናይ አስችሎናል።

1. ፓይላብን ወይም ሳይኪን ካልጫኑ ይህንን ማድረግ ያስፈልግዎታል። ወይም ፣ ፒቻርም በጣም ጥሩ ባህሪ አለው ፣ ፒላብን ወይም ሳይኪን ለማስመጣት ሲሞክር ፣ ቤተ -መጽሐፍቱን ገና እንዳልጫኑ የሚነግርዎት የግርጌ መስመር አለ። ከዚያ ቀዩን መብራት አምፖሉን በመጫን በቀጥታ ሊጭኗቸው ይችላሉ (ጠቋሚዎን ከጭቃው መስመር በታች ሲያስቀምጡት ይታያል)።

2. የ scipy.io.wavfile.read ተግባርን በመጠቀም ፣ ከናሙና ዋቭ ፋይል መረጃን ያንብቡ እና ያውጡ። በ pylab.fft ውሂቡን ያሂዱ ፣ ለኃይሉ የመጠን ዝርዝር ይመልስልዎታል።

3. ከዚያ ከዝርዝሩ የሚወጣውን የኃይል ከፍተኛውን ያግኙ። ከፍተኛው ኃይል የሚከሰትበትን የዝርዝር መረጃ ጠቋሚውን ይፈልጉ ምክንያቱም ከዚያ ኃይል ጋር ምን ድግግሞሽ እንደሚገናኝ ፈጣኑ መንገድ። በመጨረሻም ከፍተኛውን ድግግሞሽ ይመልሱ። በኋላ ላይ የሁለትዮሽ ድግግሞሽ ምልክት ወደ ቪኤችዲኤል ኮድ ማስገባት ስለምንፈልግ ተንሳፋፊ ውስጥ ያለውን ድግግሞሽ ወደ ሁለትዮሽ መለወጥ እና መመለስ እንችላለን።

ደረጃ 5-Python-Sampling እና FFT (ኮድ እና ውጤቱን አሳይ)

በዚህ ደረጃ ፣ ሙሉ ክሬዲቶች ለናሙና እና ኤፍኤፍቲ ከዚህ በታች ወዳለው አገናኝ ይሄዳሉ።

samcarcagno.altervista.org/blog/basic-sound… የእኛ ኮድ

Pylab እና scipy ከተጫኑ በኋላ የ wav ፋይሎች ወደ ሀገር ውስጥ ገብተው ማንበብ ይችላሉ።

ከ pylab ማስመጣት*ከ scipy.io ማስመጣት wavfile

sampFreq, snd = wavfile.read ('440_sine.wav')

ከዚያ snd.shape የናሙና ነጥቦችን እና የሰርጦችን ብዛት ይወክላል። በእኛ ሁኔታ ፣ የናሙና ነጥቦቹ Wavfile ምን ያህል እንደሆነ እና የሰርጦች # 2 ስቴሪዮ ስለሆነ ይወሰናል።

ከዚያ snd = snd / (2. ** 15) …… xlabel ('ጊዜ (ms)')

የጊዜ ምልክትን ወደ ድርድር ያደራጃል።

ከዚያ ኤፍኤፍቲ ድግግሞሽ እና መጠን (ኃይል) ውስጥ ድርድርን ይፈጥራል

ከዚያ በተወሰነ ጊዜ ውስጥ ከፍተኛውን መጠን ይከርክሙት እና ከእሱ ጋር የተዛመደው ድግግሞሽ ተገኝቷል። ያ ድግግሞሽ/2 የ ‹vvfile› ን አቀማመጥ ይወክላል።

ከዚያ እኛ የራሳችንን ኮድ በመጠቀም ፣ ድግግሞሹን የሚወክለው ኢንቲጀር ወደ 12 ቢት ሁለትዮሽ ቁጥር ተለውጦ በዚያ ቁጥር የጽሑፍ ፋይል ተፈጥሯል።

ደረጃ 6 - ቪቫዶ (ማነጻጸሪያ)

ቪቫዶ (ማነጻጸሪያ)
ቪቫዶ (ማነጻጸሪያ)

በዚህ የሂደቱ ክፍል ውስጥ ሁለት የግብዓት ድግግሞሾችን ለማነፃፀር ማነፃፀሪያ ያስፈልገናል።

1. የግቤት (ተቀባዩ) ድግግሞሽ ከፍ ያለ ፣ ዝቅ ያለ ወይም በ 2 Hz ህዳግ ክልል በተገለጸው ማስታወሻ ውስጥ ለማነጻጸር ንፅፅር ፈጠረ። (የተለመደው የጊታር ማስተካከያ ከ e2 እስከ g5 ፣ 82 Hz እስከ 784 Hz)።

2. የ 2 Hz ህዳግ ስንፈጥር ፣ “000000000010” ወደ ተቀባዩ ድግግሞሽ ለመጨመር RCA ን እንጠቀማለን ፣ እና ለተጠቃሚ ግብዓት አሁንም በጣም ዝቅተኛ የሆነበትን ቦታ እንፈትሻለን። እንደዚያ ከሆነ ነጠላ ቢት ምልክት “ከፍተኛ” <= ‘0’ ፣ “ዝቅተኛ” <= ‘1’። ከዚያ “000000000010” ን በተጠቃሚው ግብዓት ላይ እንጨምረዋለን የተቀባዩ ግብዓት ከዚያ የበለጠ መሆኑን ይመልከቱ። እንደዚያ ከሆነ “ከፍተኛ” <= ‘1’ ፣ “ዝቅተኛ” <= ‘0’። ሁለቱም ጉዳዩ ‹0› አይመለስም።

3. የሞጁሉ ቀጣዩ ክፍል የተቀባዩ ማስታወሻ ምን እንደሆነ ለመናገር የተወሰነ የ 4-ቢት ውሂብ ስለሚያስፈልገው ፣ 2 ንፅፅር ውጤቶችን (ዝቅተኛ እና ከፍተኛ) መመለስ ብቻ ሳይሆን ፣ የኮድ ተባባሪውን ወደ ማስታወሻው መመለስ አለብን ፣ የትኛው ድግግሞሽ። እባክዎን ከዚህ በታች ያለውን ሰንጠረዥ ይመልከቱ -

ሲ | 0011

ሲ# | 1011

መ | 0100 እ.ኤ.አ.

መ# | 1100

ኢ | 0101 እ.ኤ.አ.

ረ | 0110

ኤፍ# | 1110 እ.ኤ.አ.

ጂ | 0111 እ.ኤ.አ.

ግ# | 1111 እ.ኤ.አ.

ሀ | 0001

ሀ# | 1001 እ.ኤ.አ.

ለ | 0010

መግለጫዎችን በማስታወሻነት ለመመደብ እና ለሰባቱ ክፍል ዲኮደር የሚያስፈልገውን ለማስገባት ብዙ ከሆነ።

ደረጃ 7 - የ BASYS 3 ቦርድ ስዕሎች

የመሠረት ሥዕሎች 3 ቦርድ
የመሠረት ሥዕሎች 3 ቦርድ

ደረጃ 8 - ቪቫዶ (7 ባለብዙ ዲኮደር ከብዙ ማባዛት ጋር)

ቪቫዶ (7 ባለብዙ ዲኮደር ከብዙ ማባዛት ጋር)
ቪቫዶ (7 ባለብዙ ዲኮደር ከብዙ ማባዛት ጋር)

ሁሉም ነገር ማሳያ ይፈልጋል። የንድፍ ዋጋን የሚወስን አስፈላጊ ነገር ነው። ስለዚህ ፣ በሰባት ክፍሎች ዲኮደር በመጠቀም ማሳያ መፍጠር አለብን ፣ ይህም በቢ ቦርድ ላይ ማስተካከያ (ዲዛይን) የማድረግ ችሎታችንን ለማሳየት ያስችለናል። እንዲሁም ፣ በመፈተሽ እና በማረም ይረዳናል።

SSEG ፣ AN እና Fiz_Hz ን በማውጣት ላይ ባለ ሰባት ክፍል ዲኮደር ማስታወሻ ፣ ዝቅተኛ ፣ ከፍተኛ እና CLK የተሰኙ ግብዓቶችን ይ containsል። ንድፉን ለመረዳት እኛን ለማገዝ ከላይ የማገጃ ዲያግራም ስዕል አለ።

ሁለት የተለያዩ ዝቅተኛ እና ከፍተኛ ግብዓቶች የመኖራቸው ዓላማ የድምፅ (ሞገድ) ድግግሞሽ ከፍ ያለ ወይም ዝቅተኛ ከሆነ ተጠቃሚው ለማወዳደር ከሚፈልገው የግብዓት ድግግሞሽ (Fix_Hz) በላይ የማነፃፀሪያውን ዲዛይነር ነፃነት ለመስጠት ነው። በተጨማሪም ፣ የውጤቱ SSEG የሰባቱን ክፍሎች ማሳያ እና ቀጥሎ ያለውን ነጥብ ይወክላል ፣ ኤኤን ደግሞ የሰባቱ ክፍሎች የሚታዩበትን አንዶዎችን ይወክላል።

በዚህ ሰባት ክፍሎች ዲኮደር ውስጥ ሰዓቱ (CLK) በሁለት ወይም ከዚያ በላይ በሆኑ የተለያዩ አኖዶች ላይ ሁለት የተለያዩ እሴቶችን በማሳየት ረገድ ትልቅ ሚና ይጫወታል። ቦርዱ ሁለት የተለያዩ እሴቶችን በአንድ ጊዜ እንድናሳይ ስለማይፈቅድ ፣ ዓይኖቻችን ሊይዙት ወደማይችሉት በፍጥነት ወደ ሌላ እሴት በመቀየር ዋጋን አንድ በአንድ ለማሳየት ብዙ ማባዣን መጠቀም አለብን። የ CLK ግቤት ወደ ጨዋታ የሚመጣው እዚህ ነው።

ለተጨማሪ መረጃ እባክዎን የምንጭ ኮዱን ይመልከቱ።

ደረጃ 9 - ቪቫዶ (የተዋሃዱ አካላት)

በእያንዳንዱ ሞጁሎች (የፓይዘን መቀበያ ፣ ማነፃፀሪያ ፣ ሰባት ክፍል ዲኮደር ፣ ወዘተ) ከተጠናቀቁ በኋላ ትልቁን ሞጁል በመጠቀም አንድ ላይ እናደርጋለን። ልክ እንደ “በላይ እይታ” ክፍል ስር ያለው ሥዕል እንደሚታየው እያንዳንዱን ምልክት በዚህ መሠረት እናገናኛለን። ለማጣቀሻ ፣ እባክዎን የምንጭ ኮዳችንን “SW_Hz.vhd” ይመልከቱ።

አመሰግናለሁ. እርስዎ እንደሚደሰቱ ተስፋ ያድርጉ።

የሚመከር: