Სარჩევი:

ელექტრონიკის ცოდნა Lvl 2: 5 ნაბიჯი
ელექტრონიკის ცოდნა Lvl 2: 5 ნაბიჯი

ვიდეო: ელექტრონიკის ცოდნა Lvl 2: 5 ნაბიჯი

ვიდეო: ელექტრონიკის ცოდნა Lvl 2: 5 ნაბიჯი
ვიდეო: ეკჰარტ ტოლე - "აწმყოს ძალა" - აუდიო წიგნი - Audible Read Along 2024, ნოემბერი
Anonim
ელექტრონიკის ცოდნა Lvl 2
ელექტრონიკის ცოდნა Lvl 2
ელექტრონიკის ცოდნა Lvl 2
ელექტრონიკის ცოდნა Lvl 2

ეს იქნება სწრაფი გაკვეთილი, რომელიც დაგეხმარებათ დაასრულოთ მე -2 დონის ელექტრონიკის ცოდნა. თქვენ არ გჭირდებათ ამის გაკეთება ზუსტად ისე, როგორც არის! თქვენ შეგიძლიათ შეცვალოთ ნაწილები/კომპონენტები, როგორც გსურთ, მაგრამ პასუხისმგებელი იქნებით კოდის შეცვლაზე, რომ ის იმუშაოს. მე დავამატებ კომენტარს კოდზე, რათა ავხსნა რას აკეთებს თითოეული ნაწილი.

ბოლო არის მიკროკომპიუტერი. ჩვენ ვიყენებთ არდუინო ნანოს. ეს შეიძლება შეიცვალოს Arduino Uno– ით ან სხვა მიკროკონტროლით. ოპერაციები შეიძლება განსხვავებული იყოს და თქვენ პასუხისმგებელი იქნებით სხვა კომპიუტერის მუშაობაზე.

წინამორბედი ზოლი მოთავსებულია ვერცხლისფერ ჩანთაში, MHD- ის უჯრის ზედა ნაწილში. მიკროფონი ასევე ჩანთაში არის LED- ებით. დასრულების შემდეგ გთხოვთ დააბრუნოთ ისინი აქ!

მარაგები

  1. მიკროკომპიუტერი

    არდუინო ნანო

  2. მავთულები

    1. 7x F2F კაბელები

      1. 2x შავი
      2. 2x წითელი
      3. 3x სხვადასხვა ფერის
  3. LED ზოლები

    ისევ ჩვენ გვაქვს მხოლოდ ერთი. ეს იქნება მიკროფონით

  4. მიკროფონი

    ჩვენ გვაქვს მხოლოდ ერთი, ასე რომ მიამაგრეთ იგი ბოლოს! ეს იქნება პერსონალის უჯრაში

ნაბიჯი 1: მიკროკომპიუტერი

მიკროკომპიუტერი
მიკროკომპიუტერი

დასაწყებად ჩვენ უნდა ვიყოთ კომფორტულად არდუინო ნანოს ნაწილებით. როგორც სურათზე ჩანს, კონტროლერის ორი ძირითადი მხარეა. ერთადერთი ნაწილები, რომლებიც ჩვენ გვაწუხებს, არის შემდეგი:

  • +5V
  • GND
  • GND
  • 3V3 (ეს ასევე შეიძლება გამოჩნდეს როგორც 3.3V, მაგრამ ნიშნავს იგივე)
  • D2
  • D3
  • D4
  • მინი USB (ბოლოს ვერცხლის შტეფსელი)

ნაბიჯი 2: LED ზოლები

LED ზოლები
LED ზოლები
LED ზოლები
LED ზოლები
LED ზოლები
LED ზოლები
LED ზოლები
LED ზოლები

დაიწყეთ led ზოლის დასასრულის მიღებით. მას უნდა ჰქონდეს შავი შტეფსელი (მასში 4 მავთული შედის) და შემდეგ ორი მაწანწალა მავთული (1x ყვითელი, 1x წითელი). ჩვენ მხოლოდ შავი დანამატი გვაინტერესებს. ორიენტაცია გაუკეთეთ ისე, რომ იყოს ამ რიგიდან მარცხნიდან მარჯვნივ: წითელი, ლურჯი, მწვანე, ყვითელი. ეს ფერები შეესაბამება VCC, D0, C0, GND. მავთულის მდედრობითი მხარის გამოყენებით შავი მავთული გადაიტანეთ GND– ზე, წითელი VCC– ზე და განსხვავებული ფერები შუა ორზე.

** მავთულის დამაგრებისას დარწმუნდით, რომ ვერცხლისფერი ჩანართი ზემოთაა! ეს დაეხმარება მათ ქინძისთავებზე გადაადგილებაში. (ჩანს პირველ სურათზე)

შემდეგ ჩვენ ავიღებთ მეორე ქალის მხარეს და დავამაგრებთ მას ნანოს. მიამაგრეთ GND მავთული LED ზოლიდან GND D2– ის გვერდით. შემდეგ აიღეთ VCC მავთული და მიამაგრეთ იგი +5V პინზე. მიამაგრეთ C0 და D0 პინი LED- დან D2 და D3 პინზე ნანოზე. დანამატის ადგილები ჩანს მესამე და მეოთხე სურათებში.

ნაბიჯი 3: მიამაგრეთ მიკროფონი

მიამაგრეთ მიკროფონი
მიამაგრეთ მიკროფონი
მიამაგრეთ მიკროფონი
მიამაგრეთ მიკროფონი
მიამაგრეთ მიკროფონი
მიამაგრეთ მიკროფონი

** ᲨᲔᲜᲘᲨᲕᲜᲐ **

მავთულები მწირი იყო სურათების გადაღებისას. მე შეძლებისდაგვარად განვაახლებ ამ სურათს, რათა ინსტრუქციები უკეთესად აისახოს. აქ მოცემულია მავთულის ფერები მიმართულებით და სურათებში არსებული ფერები:

  • წითელი -> ყავისფერი
  • შავი -> შავი
  • ფერადი -> ნაცრისფერი

მიკროფონი იქნება დამაგრებული იგივე როგორც LED ზოლი, მაგრამ მხოლოდ 1 მონაცემის პინით ორის ნაცვლად.

ამჯერად ჩვენ უნდა დავამატოთ VCC პინი მიკროფონიდან 3V3 პინზე ნანოზე წითელი მავთულის გამოყენებით. შემდეგ GND პინი მიკროფონზე GND ნანოზე შავი მავთულის გამოყენებით და ბოლოს OUT პინი მიკროფონზე D4 პინზე ნანოზე ფერადი მავთულით.

ნაბიჯი 4: Arduino IDE

3D პრინტერებთან უახლოესი კომპიუტერების გამოყენებით გახსენით Arduino IDE. ამ კომპიუტერებს აქვთ სპეციალური პროგრამული უზრუნველყოფა დაინსტალირებული ჩვენი LED ზოლის გასაკონტროლებლად. შემდეგ მიკრო USB გამოყენებით მიამაგრეთ ნანო კომპიუტერს.

  1. დააჭირეთ ინსტრუმენტებს ზედა ზოლში
  2. შემდეგ დაფის ქვეშ დააწკაპუნეთ არდუინო ნანოზე
  3. პროცესორის ქვეშ დააჭირეთ ATmega328P (ძველი ჩამტვირთავი)

    თუ ეს არ მუშაობს, აირჩიეთ ATmega328P

  4. დაბოლოს, პორტის ქვეშ, დააწკაპუნეთ ნაჩვენებ მხოლოდ ვარიანტს.

როდესაც ეს ყველაფერი არჩეულია, დააკოპირეთ და ჩასვით ეს კოდი ესკიზის ფანჯარაში (სადაც ნათქვამია void setup () და void loop ()). შემდეგ დააჭირეთ ისარს, რომელიც მიუთითებს მარჯვნივ (ის შეგიძლიათ იხილოთ მენიუს რედაქტირების ელემენტის ქვემოთ). ეს ატვირთავს კოდს თქვენს ნანოში.

#მოიცავს // განსაზღვრეთ რომელი D ქინძისთავები გამოიყენება. const uint8_t clockPin = 2; const uint8_t dataPin = 3; const uint8_t micPin = 4; // შექმენით ობიექტი LED ზოლზე დასაწერად. APA102 ledStrip; // დააყენეთ LED- ების რაოდენობა გასაკონტროლებლად. const uint16_t ledCount = 60; uint8_t leds; // აუდიო კონსტრი int sampleWindow = 50; // ნიმუშის ფანჯრის სიგანე mS- ში (50 mS = 20Hz) ხელმოუწერელი int ნიმუში; // შექმენით ბუფერი ფერების შესანახად (3 ბაიტი თითო ფერში). rgb_color ფერები [ledCount]; // დააყენეთ led- ების სიკაშკაშე (მაქსიმუმი 31 -ია, მაგრამ შეიძლება ბრმად იყოს ნათელი). const int სიკაშკაშე = 12; void setup () {Serial.begin (9600); } void loop () {equilizer (); ledStrip.write (ფერები, ledCount, სიკაშკაშე); } void equilizer () {unsigned long startMillis = millis (); // ნიმუშის ფანჯრის დაწყება ხელმოუწერელი int peakToPeak = 0; // პიკიდან პიკამდე დონის ხელმოუწერელი int signalMax = 0; ხელმოუწერელი int signalMin = 1024; uint8_t დრო = millis () >> 4; // მონაცემების შეგროვება 50 ms– ისთვის (millis () - startMillis <sampleWindow) {sample = analogRead (micPin); // გადაყარეთ ყალბი კითხვები თუ (ნიმუში signalMax) {signalMax = ნიმუში; // შეინახეთ მხოლოდ მაქსიმალური დონე} სხვაგან თუ (ნიმუში <signalMin) {signalMin = ნიმუში; // შეინახეთ მხოლოდ მინიმალური დონე}}} peakToPeak = signalMax - signalMin; // max - min = პიკი -პიკი ამპლიტუდის მემფრთი (ფერები, 0, ზომა (ფერები)); // ასუფთავებს ფერებს LED ზოლისგან leds = range (peakToPeak); // ზარების დიაპაზონი, რომ ნახოთ რამდენი LEDS უნდა აანთოს uint32_t stripColor = peakToPeak/1000 + peakToPeak%1000; for (uint16_t i = 0; i <= leds; i ++) {colors = hsvToRgb ((uint32_t) stripColor * 359 /256, 255, 255); // დაამატებს ფერებს ზოლში, ხოლო მხოლოდ აანთებს საჭირო ლიდერებს. }} rgb_color hsvToRgb (uint16_t h, uint8_t s, uint8_t v) {uint8_t f = (h % 60) * 255 /60; uint8_t p = (255 - s) * (uint16_t) v / 255; uint8_t q = (255 - f * (uint16_t) s / 255) * (uint16_t) v / 255; uint8_t t = (255 - (255 - f) * (uint16_t) s / 255) * (uint16_t) v / 255; uint8_t r = 0, g = 0, b = 0; გადართვა ((h / 60) % 6) {case 0: r = v; g = t; b = p; შესვენება; შემთხვევა 1: r = q; g = v; b = p; შესვენება; შემთხვევა 2: r = p; g = v; b = t; შესვენება; შემთხვევა 3: r = p; g = q; b = v; შესვენება; შემთხვევა 4: r = t; g = p; b = v; შესვენება; შემთხვევა 5: r = v; g = p; b = q; შესვენება; } დაბრუნება rgb_color (r, g, b); } uint8_t დიაპაზონი (uint8_t vol) {if (vol> 800) {დაბრუნება 60; } else if (ტომი> 700) {დაბრუნება 56; } else if (vol> 600) {დაბრუნება 52; } else if (ტომი> 500) {დაბრუნება 48; } else if (ტომი> 400) {დაბრუნება 44; } else if (ტომი> 358) {დაბრუნება 40; } else if (ტომი> 317) {დაბრუნება 36; } else if (ტომი> 276) {დაბრუნება 32; } else if (ტომი> 235) {დაბრუნება 28; } else if (ტომი> 194) {დაბრუნება 24; } else if (ტომი> 153) {დაბრუნება 20; } else if (ტომი> 112) {დაბრუნება 16; } else if (ტომი> 71) {დაბრუნება 12; } else if (ტომი> 30) {დაბრუნება 8; } else {დაბრუნება 4; }}

ნაბიჯი 5: დასრულების შემდეგ

Ყოჩაღ! გადაიღეთ სურათი, რომ ყველაფერი მუშაობს. თუ led ზოლი მთლიანად არ ანათებს, მიკროფონის უკანა ხრახნი მორგებულია. თქვენ შეგიძლიათ შეცვალოთ კოდი ამის გამოსასწორებლად (ითხოვეთ დახმარება, თუ გსურთ), მაგრამ ეს არ არის საჭირო. თუ გსურთ პროექტის შენარჩუნება, მიკროფონისა და led ზოლის ბმულები ნაჩვენებია ქვემოთ. ჩვენ გვჭირდება, რომ ისინი დარჩნენ კერაში, რათა სხვა პერსონალმაც დაასრულოს იგი.

ყველაფრის დაშლის წინ მიამაგრეთ ნანო კომპიუტერზე და მიყევით ამ ნაბიჯებს Arduino IDE– ში:

  • დააწკაპუნეთ ფაილზე
  • მაგალითები
  • ძირითადი
  • Თვალის დახამხამება
  • დასრულების შემდეგ დააჭირეთ ატვირთვის ღილაკს

ეს არის იმის უზრუნველსაყოფად, რომ ყველა აკეთებს მთელ პროცესს და არა მხოლოდ მავთულხლართებს. ახლა დაიშალე ყველაფერი და დააბრუნე იქ, სადაც იპოვე!

ბმულები:

მიკროფონი

LED- ები დაემატება მას შემდეგ რაც ლინკი მექნება

გირჩევთ: