Jump to content
ELFORUM - Forumul electronistilor

Cum conectez un difuzor de 8 ohmi pe o iesire a 16F628?


Guest adyp

Recommended Posts

Salut!Am cautat pe net si nu am gasit cum sa adaptez un difuzor de 8 ohmi la o iesire a picului din titlu, ca sa imi produca niste bipuri cand pun pe high iesirea respectiva. Are cineva vreo idee, pls? Eu ma gandeam ca trebuie pus un tranzistor ceva, cu o rezistenta in colector si cu emitorul pe plusul difuzorului... Dar nu stiu ce piese sa folosesc si nici daca e ok ideea mea.Aaaa-juuu-taaati un om sarman... :d Va multumesc frumos!Bafta! :wink:

Link to comment
  • Replies 13
  • Created
  • Last Reply

Top Posters In This Topic

adyp,Ai mai multe optiuni. Daca nu te deranjeaza ca se aude incet, conecteaza fo 250 ohmi in serie cu difuzorul si agatza-l direct de pin. Daca vrei putere mai mare si iti poti permite sa mai consumi niste pini, pune pini in paralel si redu rezistenta serie de atatea ori de cati pini pui in paralel. De ex, la 3 pini in paralel pui 250/3=83 de ohmi. Softul il scrii tu? Daca da, va trebui sa clampani toti pinii pe care i-ai pus in paralel.Daca softul e deja scris si nu stii sa-l modifici sau daca vrei cu tranzistor, comanzi baza din pinul picului cu o rez in serie, iar difuzorul il poti pune fie in emitor fie in colector. Tranzistorul tre' sa suporte curentul prin dif. Daca curentul e prea mare, mai pui o rezistenta in serie cu diful. Stii sa o calculezi? Se aplica legea lu' omu. Daca nu, intreaba.fingeru,Ce relevanta are in ce e scris softul la cum se conecteaza difuzorul?Cirip

Link to comment
Guest dlucian

Salut CiripNu a mers( eu trebuie sa ma ocup de implementarea proiectului din care face parte si difuzorul asta). Am incercat cu rezistenta de 250ohmi si nu merge. Ma gandesc ca poate o fi ceva de la program si nu imi dau seama list p=16f628 ; list directive to define processor #include ; processor specific variable definitions errorlevel -302 ; suppress message 302 from list file __CONFIG _CP_OFF & _WDT_OFF & _MCLRE_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT & _LVP_OFF ; '__CONFIG' directive is used to embed configuration word within .asm file.; The lables following the zdirective are located in the respective .inc file.; See data sheet for additional information on configuration word settings.senzor1 equ 0x30; macrouri utilebank1 macro bsf STATUS,RP0 endmbank0 macro bcf STATUS,RP0 endmxegaly macro registrux,x,registruy,y btfss registruy,y ;do if clear bcf registrux,x ;x=0 btfsc registruy,y ;do if set bsf registrux,x ;x=1 endm;********************************************************************** ORG 0x000 ; processor reset vector goto main ; go to beginning of program ORG 0x004 ; interrupt vector location goto intrerupere;-----------------------------------------------------------------------------------------------;INTRERUPEREAintrerupere bank0 comf PORTB,0 movwf senzor1 xegaly PORTB,3,senzor1,3 retfie;END OF INTRERUPERE;************************************************************************ ;**********************************************************************;MAINmain ;initializari bank1 movlw b'00000011' movwf TRISA ;setez portul a ca intrari movlw b'00000111' movwf TRISB ;setez portul b ca iesire bank0 movlw b'00000010' movwf CMCON ;setez comparatorul pe modul Vref intern movlw b'10100000' ;setez intreruperile movwf INTCON bank1 movlw b'10000001' ;prescaler la 4 movwf OPTION_REG bank0 movlw 0x00 movwf PORTBloop bsf PORTB,4 bsf PORTB,5 bsf PORTB,6 goto loop;END OF MAIN;**********************************************************************end

Link to comment

Nu am rabdare sa ma uit acum pe program, dar... Ai incercat sa simulezi programul? Daca pinul nu clampane, nu poti sa tragi concluzia ca "cu rez de 250 nu merge". De asemenea, verifica frecventa (indirect prin masurarea perioadei, tot in simulator). Daca oscileaza peste 15-20K, e normal sa nu auzi nimic si tragi concluzia ca nu merge.Cirip

Link to comment
Guest dlucian

Programul il simulasem si pinul clampanea dar abia cand mi-ai zis ca pot sa masor perioada in simulare mi-am dat seama ca in rutina de intrerupere nu dezactivam bitul T0IF(...asa cred ca ii zice) si de la frecventa mea de 1khz ajungea la vreo 60khz. In concluzie am optat pt varianta cu tranzistor si merge foarte bine.Multumesc pt ajutor.

Link to comment
Guest dlucian

Merge si direct din port. Singura problema e ca se aude prea incet si nu mai am alti pini pe care sa-i pot folosi ca sa-i mai dau ceva putere.Asa ca tranzistorul ramane solutia cea mai buna momentan.

Link to comment
Guest fingeru

Este in PORTEUS soft scris in C si merge de minune. De aia te-am intrebatNu stiu daca e si in aia trial, da in versiunea full este (e o sonerie cu 2 melodii si difuzorul legat direct pe PIC) si suna destul de bine... adica se aude (are doar 5V pe HIGH) :)

Link to comment
  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines