Hoe maak je een bier fles LED VU-Meter (11 / 17 stap)

Stap 11: Het lezen van de LM3915-uitgangen


Ten slotte, wij hebben afleggen door al die andere dingen die nodig zijn om het project werkend te krijgen en nu krijgen we eigenlijk beginnen te werken op de VU-Meter-aspect van het project. Het eerste ding dat we moeten doen is erachter te komen welke uitgangen van de LM3915 worden meegenomen bij welke ingangen van de PIC18F4550. Dus we trekken uit dat schema (nogmaals) en merk op dat de aansluitingen als volgt zijn:

Uitgangen: ingangen
LED1:RB7
LED2:RB6
LED3:RB5
LED4:RB4
LED5:RB3
LED6:RB2
LED7:RD7
LED8:RD6
LED9:RD5
LED10:RD4

Nogmaals, als u zich afvraagt waarom de ingangen zijn soort achteruit haar te wijten aan het bewerkingsplan van de PCB. Nu dat we de connecties hebben, zal ik u tonen hoe wij de invoergegevens opslaan.

Het eerste ding dat wij doen is een 16-bits declareren. We zullen alleen gebruiken de onderste 10 bits omdat we alleen 10 verschillende geluidsniveaus hebben.

uint16 niveau;     Wij zijn het verklaren van een 16-bits geheel getal zonder voorteken die het geluidsniveau van LED1 - LED10 slaat

Aangezien we niet een volledige PORT (RB0 - RB7 of RD0 - Td7) gebruiken om de gegevens in, we gonna hebben aan masker uit de ongewenste beetjes. De stukjes die we niet nodig hebben zijn RB0, RB1, RD0, RD1, RD2 en Td3. De eerste 4 bits van gegevens die wij zal brengen in is RD4 - Td7, dus we masker uit de bodem bits (RD0 - Td3) en stelt u de variabele 'niveau' gelijk aan bovenste nibble (RD4 - Td7).

niveau = 0x00F0 & PORTD;     Uit de bodem bits maskeren en 'niveau' gelijk is aan de bovenste knabbelen van PORTD maken

Nu dat we de waarden opgeslagen die op de uitgangen LED7 - LED10, hebben we het om onze variabele 'niveau' klaar te kunnen zijn voor het opslaan van de volgende 6 stukjes van de gegevens die op RB2 - RB7. Om plaats voor deze volgende 6 bits te maken moeten we links bits shift 'niveau' door 2. Zo juist nu 'niveau' zou als volgt uitzien in binaire vorm:

xxxx = RD4 Td5, Td6, Td7 respectievelijk

niveau = 00000000xxxx0000 < = er is slechts genoeg plaats voor 4 bits van gegevens over het einde. We moeten passen 6 stukjes van de gegevens

Dus om het bit shift 'niveau' twee plaatsen, zetten we dit als onze volgende lijn van code:

niveau = level << 2;   Beetje shift 'niveau' twee plaatsen en klaar om de gegevens accepteren van RB2 - RB7

Dit is nu hoe 'niveau' zou kijken nadat het heeft zijn beetje verschoven liet twee plaatsen:

niveau = 000000xxxx000000 < = nu we genoeg ruimte voor RB2 - RB7 hebben

Tot slot kunnen we nu ophalen van de laatste 6 bits van gegevens die worden uitgevoerd uit LED1 - LED6 en sla het in 'niveau'. Hier is de volgende coderegel om dat te doen:

niveau = level | ((0xFC & PORTB) >> 2);  Maskeren van bits RB0 en RB1, vervolgens bits shift RB2 - RB7 twee plaatsen naar rechts en op te slaan in de bodem 6 beetjes van 'niveau'

Deze lijn is een beetje meer cryptisch, maar het doet precies hetzelfde, zoals we hebben gedaan met het PORTD behalve de gegevens twee plaatsen naar rechts verschuift. In de binnenkant haken we masker uit RB0 en RB1 en vervolgens het resultaat te verschuiven naar de juiste twee plaatsen. Nu dat de gegevens die wij willen zich in de laagste 6 bits, of het met 'niveau' die gewoon RB2 - RB7 in de laagste 6 bits van 'niveau'. Hier is wat het zal eindigen uitzien als:

xxxx = RD4 Td5, Td6, Td7 respectievelijk
yyyyyy = respectievelijk RB2, RB3, RB4, RB5, RB6, RB7

niveau = 000000xxxxyyyyyy

Vervolgens zullen we overeenkomen met de waarden van 'niveau' met het bijbehorende geluidsniveau.

Gerelateerde Artikelen

Hoe maak je een snelle goedkope LED zaklamp met een stok van deodorant!

Hoe maak je een snelle goedkope LED zaklamp met een stok van deodorant!

In dit Instructable, zal ik u tonen hoe maak je een coll snel en goedkoop LED zaklamp uit een stok van deodorant! (en een paar andere delen)Stap 1: Verzamel de delen! u nodig:Delen:1: 5mm LED's (1-6)2: 330 Ohm weerstanden (één voor elke LED)3: 9 volt
Hoe maak je een bier fles tiki fakkel

Hoe maak je een bier fles tiki fakkel

U moet uw favoriete bierfles of andere fles, tiki fakkel wick, jute touw, tiki brandstof, een bamboe-stok en een aansteker. U kunt ook gebruiken als een fakkel tafelblad en de bamboe stok en jute touw weglaten.
Hoe maak je een raket fles

Hoe maak je een raket fles

goed in deze instructies ik zal u vertellen hoe maak je een raket flesStap 1: Hoe maak je een raket fles moet u eerst deze materialen1 een waterfles2 kaart board of schuim kern3 siliconen slangen4 per fiets bult5 kurk6 een boor en boor, die is van de
Hoe maak je een boot van de stoom met een kaars

Hoe maak je een boot van de stoom met een kaars

https://www.YouTube.com/watch?v=sWJqCubW1ic&feature=Youtu.beStap 1: Om te doen een boot van de stoom met een kaars u nodig!In deze instructables ik zal je laten zien een geweldig idee van hoe maak je een boot van de stoom met de kaars.Stap 2: Kindere
Hoe maak je een tegenhanger van de bloem met een koffie Pod

Hoe maak je een tegenhanger van de bloem met een koffie Pod

Hallo iedereen,We wilden delen met uw onze eerste tutorial op YouTube. Hoe maak je een tegenhanger van de bloem met een koffie pod. De Nespresso koffie peulen zijn ronde, maar we willen spelen met hen en andere vormen te verkrijgen. En omdat we beide
Hoe maak je een autopatcher voor windows xp met behulp van batchbestanden

Hoe maak je een autopatcher voor windows xp met behulp van batchbestanden

hoe maak je een autopatcher voor windows xp met behulp van batchbestandenAlleen beschrijving, foto's kunnen nooit bestaan :)Stap 1: Alle stappen hier omdat het te moeilijk om te lezen in meerdere pagina 's1. Maak een nieuwe map op uw bureaublad2. all
Hoe maak je een Plastic fles Cutter / Tutorial

Hoe maak je een Plastic fles Cutter / Tutorial

https://www.YouTube.com/watch?v=ZpNL4RRPgHE&feature=Youtu.beStap 1: Om te doen een Plastic fles Cutter u nodig! Hoe maak je een touw uit een plastic fles?We moeten vaak een sterke draad of touw in rust of bij het huisje. Bijvoorbeeld, moet u een linn
Hoe maak je een snel knipperend LED fietsverlichting

Hoe maak je een snel knipperend LED fietsverlichting

In dit Instructable zal ik u tonen hoe maak je een eenvoudige snel knipperend LED licht die u kunt koppelen aan uw fiets of enige waar u wilt. Het knippert meer dan 3 keer in een seconde.Het is goedkoper om te maken dan te kopen.Je kunt er whit uw fa
Hoe maak je een Plastic fles dop Container

Hoe maak je een Plastic fles dop Container

Ik laten zien hoe maak je een klein, lichtgewicht en bewijs watercontainer uit twee kunststof doppen. De doppen zijn afgesneden onder de uitstekende ring op de hals van de fles, dan de bodems zijn gemaakt vlak en gelijmd samen. Het kan worden gebruik
Hoe maak je een geleidende Velcro LED armband die lichten omhoog wanneer u zet het op

Hoe maak je een geleidende Velcro LED armband die lichten omhoog wanneer u zet het op

deze video ziet u hoe maak je een LED-armband dat oplicht wanneer u zet het op. Gemaakt op MakerKids (een van de enige makerspaces voor kinderen in de wereld) door mede-uitvoerend directeur Jennifer Turliuk. www.makerkids.ca
Hoe maak je een frisdrank fles earring boom.

Hoe maak je een frisdrank fles earring boom.

In deze tutorial, ik hoop om u te tonen hoe maak je een boom earring uit kunststof frisdrank flessen. Zijn een snelle, gemakkelijke en goedkope manier te recyclen van sommige oude plastic flessen!Stap 1: benodigdheden Wat u nodig zult hebben:1. versc
Hoe maak je een Harry Potter toverstaf effect met licht

Hoe maak je een Harry Potter toverstaf effect met licht

wat ik maak?-In dit instructable ik zal je laten zien hoe maak je een Harry Potter stijl toverstaf lichtbundel. Als u iets niet verstaat of als ik enkele details miste, laat het me weten.Hoe ik het maken?Benodigde materialen:-2 zaklampen of LEDs. Bij
Hoe maak je een 24 inch houten ster met een 2 x 4

Hoe maak je een 24 inch houten ster met een 2 x 4

Dit leerprogramma zal u tonen hoe maak je een houten ster 22 tot en met 24" met een enkel 8 voet 1 x 4 of 2 x 4.Twee jaar geleden die mijn vrouw besloten dat ze zou willen hebben een houten ster hing boven onze open haard. Ik probeerde om informatie
Hoe maak je een Bootable Kali Linux USB met volharding

Hoe maak je een Bootable Kali Linux USB met volharding

Hoe maak je een bootable Kali Linux 2.0 USB met volharding. Persistentie betekent dat alle gegevens veranderingen die plaatsvinden tijdens het gebruik van het systeem, zij zal gered worden op de usb / pendrive dat u Linux in.Redenen voor het gebruik