Nota
Ciao, benvenuto nella SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Community su Facebook! Approfondisci le tue conoscenze su Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché unirti a noi?
Supporto esperto: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra comunità e del nostro team.
Impara e condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e anteprime esclusive.
Sconti speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni festive e concorsi: Partecipa a concorsi e promozioni durante le festività.
👉 Sei pronto a esplorare e creare con noi? Clicca su [Qui] e unisciti oggi stesso!
1.2.1 Cicalino Attivo
Introduzione
In questo progetto, impareremo come pilotare un cicalino attivo per farlo suonare utilizzando un transistor PNP.
Componenti Necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente comodo acquistare un kit completo, ecco il link:
Nome |
ARTICOLI IN QUESTO KIT |
LINK |
|---|---|---|
Kit Raphael |
337 |
Puoi anche acquistarli separatamente dai link qui sotto.
INTRODUZIONE AI COMPONENTI |
LINK PER L’ACQUISTO |
|---|---|
- |
|
Schema Elettrico
In questo esperimento, utilizziamo un cicalino attivo, un transistor PNP e una resistenza da 1k tra la base del transistor e il GPIO per proteggere il transistor. Quando il GPIO17 del Raspberry Pi viene programmato per fornire un livello basso (0V), il transistor si saturerà e condurrà corrente, facendo suonare il cicalino. Quando invece viene fornito un livello alto all’IO del Raspberry Pi, il transistor si interromperà e il cicalino smetterà di suonare.
Procedure Sperimentali
Passo 1: Costruisci il circuito. (Il cicalino attivo ha un adesivo bianco sulla superficie e un retro nero.)
Passo 2: Apri il file di codice.
cd ~/raphael-kit/python
Passo 3: Esegui.
sudo python3 1.2.1_ActiveBuzzer.py
Dopo l’esecuzione del codice, il cicalino emetterà un suono.
Codice
Nota
Puoi Modificare/Reimpostare/Copiare/Eseguire/Interrompere il codice qui sotto. Ma prima devi accedere al percorso del codice come raphael-kit/python. Dopo aver modificato il codice, puoi eseguirlo direttamente per vedere l’effetto.
import RPi.GPIO as GPIO
import time
# Imposta GPIO17 come pin del cicalino
BeepPin = 17
def setup():
GPIO.setmode(GPIO.BCM)
GPIO.setup(BeepPin, GPIO.OUT, initial=GPIO.HIGH)
def main():
while True:
# Cicalino acceso (Suono)
print ('Buzzer On')
GPIO.output(BeepPin, GPIO.LOW)
time.sleep(0.1)
# Cicalino spento
print ('Buzzer Off')
GPIO.output(BeepPin, GPIO.HIGH)
time.sleep(0.1)
def destroy():
# Spegni il cicalino
GPIO.output(BeepPin, GPIO.HIGH)
# Rilascia le risorse
GPIO.cleanup()
# Se esegui questo script direttamente, fai:
if __name__ == '__main__':
setup()
try:
main()
# Quando viene premuto 'Ctrl+C', il programma
# eseguirà destroy().
except KeyboardInterrupt:
destroy()
Spiegazione del Codice
GPIO.output(BeepPin, GPIO.LOW)
Imposta il pin del cicalino su livello basso per farlo suonare.
time.sleep(0.1)
Attendi per 0,1 secondi. Modifica la frequenza di commutazione cambiando questo parametro.
Nota
Non è la frequenza del suono. Il cicalino attivo non può modificare la frequenza del suono.
GPIO.output(BeepPin, GPIO.HIGH)
Spegni il cicalino.
Immagine del Fenomeno