Se afișează postările cu eticheta microchip. Afișați toate postările
Se afișează postările cu eticheta microchip. Afișați toate postările

vineri, iunie 19, 2015

Controlul turatiei unui motor in functie de luminozitate folosind o fotodioda si un microcontroller

         Acesta este un proiect realizat in anul IV de facultate (2013) la cererea unor colegi mai neinitiati in ale electronicii.
         Desi pe piata au aparut de ceva timp module de senzori (shield), am preferat la acel moment sa  construiesc unul propriu: preiau tensiunea captata de o fotodioda expusa luminii ambientale si o amplific cu un AO cu amplificare foarte mare (100.000).
Senzor de lumina
Senzor de luminozitate + comanda motor
         Semnalul analogic furnizat de senzor este apoi citit cu un microcontroller (PIC de la Microchip, evident https://s.yimg.com/pu/emoticon/v2/4.gif), scara de masurare fiind 0-5V folosind un ADC pe 10biti (1024 de valori intermediare intre 0-5V).
         Pentru a controla turatia motorului am folosit un semnal PWM (Pulse Width Modulation) pe 10biti generat de microcontroller. Semnalul intra in baza unui tranzistor care are drept sarcina in emitor un motor de curent continuu cu perii (brushed DC motor).
Programare PIC16f887
PIC16F887 - conexiuni
          Iesirea senzorului se conecteaza la unul din pinii GPIO analogici (RA2 de ex) iar semnalul PWM se obtine din pinul RC1 (CCP2).
          Atat semnalul analogic captat de microcontroller, cat si semnalul PWM generat sunt pe 10biti, astfel ca factorul de umplere al semnalului PWM este chiar valoarea numerica pe 10biti a semnalului analogic.

          Programul a fost scris in mikroC for PIC si este extrem de simplu. Practic se foloseste o variabila pe 10 biti in care stocam tensiunea citita de la senzor si setam factorul de umplere al semnalului PWM cu acea valoare.
          Pentru scrierea programului in microcontroller am folosit un PICkit2 (Microchip).
          Rezultat:
         
            Este un proiect simplu dar din care am invatat cateva lucruri la vremea respectiva. Acesta era si motivul pentru care ma ofeream sa ajut colegii cu diverse proiecte, partea financiara fiind doar un detaliu minor https://s.yimg.com/pu/emoticon/v2/4.gif. Cel mai important pentru mine era sa capat experienta si dexteritate.

luni, septembrie 15, 2014

Conectarea unui microcontroler la o tastatura si un ecran LCD

Salut,

In acest articol voi prezenta cum putem citi o tasta apasata a unei tastaturi si afisarea acesteia pe un ecran.
Am scris programul in mikroC PRO for PIC pentru microcontrollerul PIC16F887 care foloseste oscilatorul intern de 8MHz.

1. Tastatura
Tastatura este practic o matrice compusa din M linii x N coloane. La intersectia unei linii cu o coloana se afla un intrerupator care odata apasat face contact intre linia si coloana respectiva.


joi, mai 09, 2013

Conectarea PICkit2 la un microcontroler PIC oarecare


In articolul precedent scriam despre programarea unui microcontroler PIC conectat la o placa de dezvoltare care are deja conexiunile realizate pentru conectarea PICkit2 printr-un soclu ICSP (In-Circuit Serial Programming).

Totusi, nu vom lucra mereu doar cu placi de dezvoltare in care microcontrolerele sunt de tip SMD si lipite pe placa, fara posibilitatea inlocuirii.

Asadar, avem un programator PICkit2 si un microcontroler oarecare. Se pune problema conexiunilor dintre cele doua dispozitive.

miercuri, mai 08, 2013

Cum programam un microcontroler PIC

microcontroler PIC
Microcontrolerele PIC de la Microchip® sunt poate cele mai utilizate microcontrolere de pe piata. Conform Wikipedia, din 2011 compania vinde anual 1 miliard de procesoare. Asadar, daca doriti sa programati un microcontroler, cele de la Microchip sunt o alegere foarte buna.

Pentru a programa un microcontroler aveti nevoie de minim 3 lucruri:
Recomandabil este sa achizitionati un programator impreuna cu o placa de dezvoltare. Eu am achizitionat acum 2 ani pachetul DV164121 care contine programatorul PICkit2 si o mini-placa de dezvoltare cu PIC16F887.

Este important ca sa va realizati propriile programe! Desi puteti lua cu usurinta programe de pe net gata compilate, eu va recomand sa invatati sa programati microcontrolerele folosind un mediu de dezvoltare precum MPLAB de la Microchip sau de la terte parti: mikroC/mikroPascal sau CCS PIC Compiler.