Torna indietro   Hardware Upgrade Forum > Software > Programmazione

OPPO Watch X2 Mini, lo smartwatch compatto a cui non manca nulla
OPPO Watch X2 Mini, lo smartwatch compatto a cui non manca nulla
OPPO Watch X2 Mini è uno smartwatch compatto capace di offrire un'esperienza completa di monitoraggio della salute e fitness con una cassa da 43 mm che può adattarsi a qualsiasi tipo di polso, dal più grande al - soprattutto - più piccolo. Con l'architettura dual-chip e un'autonomia che può coprire due giorni con tranquillità, rappresenta la soluzione ideale per chi cerca prestazioni premium in un formato ridotto.
Xiaomi 15T Pro, è lui il nuovo best buy? La recensione
Xiaomi 15T Pro, è lui il nuovo best buy? La recensione
Dopo il recente lancio della serie Xiaomi 15T di Monaco, vi parliamo oggi della versione più performante della nuova famiglia, ovvero Xiaomi 15 T Pro. Vi raccontiamo la nostra prova nel dettaglio, spiegando perché a questo prezzo e in questa fascia, questo smartphone ha davvero senso tenerlo in seria considerazione.
Acer TravelMate P6 14 AI: il Copilot+ PC sotto il chilo per il professionista in movimento
Acer TravelMate P6 14 AI: il Copilot+ PC sotto il chilo per il professionista in movimento
Acer ha ampliato la sua offerta professionale con il TravelMate P6 14 AI, un notebook ultraleggero e robusto pensato per chi lavora in mobilità. Certificato Copilot+ PC, combina design premium, autonomia elevata e piattaforma Intel Core Ultra Serie 2 con funzionalità AI, garantendo sicurezza, affidabilità e produttività per l'utenza business moderna.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-02-2015, 11:53   #1
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
Principiante - dubbio array e funzioni

Non sono sicura dell'esattezza del mio codice...

Ho creato un array di Pin :

Pin pinArray[13];
for (i = 0, i < 13, i++)
pinArray[i] = new Pin(1, 0);

La classe Pin ha una funzione chiamata run().

Ora il mio dubbio è questo, devo fare un run di tutti i pin e quindi ho scritto questo pezzo di codice:

for (i = 0, i < 13, i++){
pinArray[i]->run();
};

E' giusta come sintassi? Perchè questa forma con la freccetta l'ho trovata su un sito ma mi sembra strano che sia così

Scusate ma sono davvero nuova in queste cose e faccio fatica ad orientarmi
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2015, 14:28   #2
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
Pin *pinArray[13];
for (i = 0, i < 13, i++)
pinArray[i] = new Pin(1, 0);

Quindi così risolverei il problema?

Non sto provando codici a caso sto cercando di farlo funzionare
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2015, 14:35   #3
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
Ok grazie haha ma non è a caso volevo solo essere sicura che fosse giusto dato che mi dà qualche errore ma probabilmente allora sbaglio qualcos'altro
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 23-02-2015, 14:43   #4
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
il problema è che tutto questo gira su Arduino, quando avrò un problema specifico posterò volentieri Per ora sono ancora tante cose da sistemare.
Grazie mille ancora
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2015, 10:27   #5
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
Mi dà errore :'(

Il codice ora è questo :

Pin *pinArray[13];
for (i = 0, i < 13, i++)
pinArray[i] = new Pin(1, 0);

for (i = 0, i < 13, i++){
pinArray[i]->run();
};

Mi dà errore alla riga "pinArray[i] -> run(); con il seguente messaggio:

Sketch_Tesi:151: error: 'pinArray' was not declared in this scope
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2015, 10:31   #6
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
ah quindi secondo te devo creare l'array di pin nel loop?
Io l'ho creato nel setup...
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2015, 12:59   #7
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
Ti copio un pezzo che avevo scritto su un altro sito per farti capire piu o meno cosa sto facendo :
"Hello all, I'm working on a project for university, basically I'm trying to controll all the digital pins simoultaniously and in 3 possible different modes of working : mode1 simple on/off, mode2 PWM, mode3 sqware wave with 50%Duty-cicle and whatever frequency you like (from 1HZ to 31250Hz).
To implement the mode3 I changed the frequency of Timer0 to 31250 and use the interrupt routine that i get to generate a sqware wave of the frequenzy I need using a counter variable -> FreqCounterValue = 31250 / 2 * Frequency.

This is to give you the general idea of the project. "

Diciamo che questo è un pezzo di codice dove ci sono le parti problematiche ( ho tolto pezzi per semplicità XD)


Codice:
void setup() {

	//setup dei timer0,1,2 alla frequenza 31250Hz

	cli();  //stop interrupts

	//set timer0 interrupt a 31250Hz
	TCCR0A = 0;  // imposto il registro TCCR0A a 0
	TCCR0B = 0;  // uguale per il registro TCCR0B
	TCNT0 = 0;   // inizializzo il contatore a 0
	OCR0A = 8;   // (16*10^6) / (31250*64) -1    set compare match register
	TCCR0A |= (1 << WGM01);  //enable modalità CTC
	TCCR0B |= (1 << CS01) | (1 << CS00); // Set CS01 e CS00 bits per il prescaler a 64  (< 256)
	TIMSK0 |= (1 << OCIE0A);  //enable timer compare interrupt

sei();    //enable interrupts



	Pin *pinArray[13];    //creazione dell'array di pin con i valori di default 
	for (i = 0; i < 13; i++){
	pinArray[i] = new Pin(1, 0);

	}


	Serial.begin(9600);     // Default connection rate for my BT module
	Serial.println("Quale pin vuoi pilotare?");          
	
}


//interrupt routine here

ISR(Timer0_COMPA_vect){            

	for (i = 0; i<13; i++){
		pinArray[i]->runmode3();

	} 
}

void loop(){


	//run pin  con un for 
	for (i = 0; i < 13; i++){
		pinArray[i]->run();
	};

vediamo se ho capito quello che dici te:
Questo pezzo
Codice:
Pin *pinArray[13];    //creazione dell'array di pin con i valori di default 
	for (i = 0; i < 13; i++){
	pinArray[i] = new Pin(1, 0);

	}
vedo metterlo in una funzione che mi ritorni il valore del puntatore

Codice:
Pin *creaArray(qui cosa ci metto? XD)
{
       Pin *pinArray[13];    
	for (i = 0; i < 13; i++){
	pinArray[i] = new Pin(1, 0);
       return pinArray;
}
e poi nella funzione di interrupt routine e nel loop come faccio a passargli l'array?
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2015, 16:05   #8
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
a questo punto fare tutto (sia inizializzazione che dichiarazione) nello scope globale?
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2015, 08:14   #9
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
uffii non funziona... mi dà questo errore= "expected constructor, destructor, or type conversion before"

sono andata a guardare su dei forum a gente con questo problema e qualcuno ha risposto cosi : "You can't just declare stuff like that outside a function. You need to put it inside a function such as void loop(){}, or void setup(){};"

cosa posso fare?
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2015, 08:39   #10
Alarikka
Junior Member
 
Iscritto dal: Feb 2015
Messaggi: 10
no ok questo l'ho risolto , dovevo mettere fuori solo la dichiarazione e non anche l'inizializzazione!

niente piu errori!!! ora speriamo che faccia quello che deve XD

grazie mille per l'aiuto <3

Ultima modifica di Alarikka : 26-02-2015 alle 09:31.
Alarikka è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2015, 18:55   #11
lishi
Senior Member
 
L'Avatar di lishi
 
Iscritto dal: Sep 2006
Messaggi: 1539
-nit-
lishi è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


OPPO Watch X2 Mini, lo smartwatch compatto a cui non manca nulla OPPO Watch X2 Mini, lo smartwatch compatto a cui...
Xiaomi 15T Pro, è lui il nuovo best buy? La recensione Xiaomi 15T Pro, è lui il nuovo best buy? ...
Acer TravelMate P6 14 AI: il Copilot+ PC sotto il chilo per il professionista in movimento Acer TravelMate P6 14 AI: il Copilot+ PC sotto i...
ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondono completezza e duttilità ASUS NUC 15 Pro e NUC 15 Pro+, mini PC che fondo...
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Scarpe che vi faranno correre alla veloc...
MOVA Z60 Ultra Roller Complete: 200€ di ...
Xiaomi SU7 si sposta da sola? Non esatta...
Cheater bannati entro 30 minuti senza ne...
Record di auto elettriche a settembre an...
In Norvegia due nuovi record: auto elett...
Linux sempre più orfano di Intel:...
Tesla conferma il bonus su Model 3: con ...
Anche Huawei prepara il suo smartphone u...
Sondaggio Steam: AMD guadagna ancora ter...
Zeekr si espande in Europa: 001, X e 7X ...
Fino a 17 sterline a telefono: il risarc...
Nintendo Switch 2 sfrutta una variante p...
AMD e OpenAI stringono un accordo strate...
Nest Cam 2K 3a gen: la videocamera da in...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:48.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v