Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16440
Don't know what I do
|
 |
« Reply #75 on: May 21, 2011, 01:22:27 am » |
Premetto che il Tiny Core non l'ho usato ma essendo il PinChangeInterrupt una lib va scompattata in /sketchbook/libraries così da essere disponible come #include nel modo classico.
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #76 on: May 21, 2011, 01:32:37 am » |
Scusa, lo so che passo per imbranato (e lo sono  ) ma non ho una cartella /sketchbook/libraries, bensì la sola libraries che contiene le varie librerie classiche "eeprom", "ethernet", "liquidcrystal", ecc., quindi devo metterla lì dentro? EDIT: naturalmente poi devo mettere il nome della libreria nel mio sketch: #include <PinChangeInterruptSimple.h>?
|
|
|
|
« Last Edit: May 21, 2011, 02:06:00 am by menniti »
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16440
Don't know what I do
|
 |
« Reply #77 on: May 21, 2011, 02:04:56 am » |
LA cartella /sketchbook/libraries normalmente NON esiste. Va creata e lì andrebbero messe le librerie di terzi per Arduino per non mescolarle a quelle di sistema fornite con l'IDE. In questo modo non sei costretto quando aggiorni l'IDE a rimettere tutte le librerie personali e così sai anche subito quali sono quelle ufficiali e quali no.
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #78 on: May 21, 2011, 02:10:41 am » |
Ora ho capito, perfetto, tra oggi e domani farò le prove e ti faccio sapere, naturalmente quando tutto funziona metterò ordine nelle varie informazioni, per i posteri.....  Grazie Leo, la tua signora è fortunata ad avere sposato un ragazzo paziente come te 
|
|
|
|
|
Logged
|
|
|
|
|
Rome (Italy)
Offline
Tesla Member
Karma: 74
Posts: 7348
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
|
 |
« Reply #79 on: May 21, 2011, 04:47:57 am » |
LA cartella /sketchbook/libraries normalmente NON esiste.
Giusto ma vale per Linux, con Windows la cosa funziona in modo simile, ma diverso al tempo stesso, la cartella sketchbook in realtà è: "..\Documenti\Arduino" Che è la cartella dove l'IDE mette gli sketch creati dall'utente, basta creare al su interno la cartella "libraries" e metterci dentro quelle aggiuntive, in questo modo con i cambi versione dell'IDE non è necessario ricordarsi di spostare lavori e librerie.
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16440
Don't know what I do
|
 |
« Reply #80 on: May 21, 2011, 04:49:31 am » |
Grazie Leo, la tua signora è fortunata ad avere sposato un ragazzo paziente come te  Peccato che lei non la pensi così 
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #81 on: May 21, 2011, 04:56:55 am » |
LA cartella /sketchbook/libraries normalmente NON esiste.
Giusto ma vale per Linux, con Windows la cosa funziona in modo simile, ma diverso al tempo stesso, la cartella sketchbook in realtà è: "..\Documenti\Arduino" Che è la cartella dove l'IDE mette gli sketch creati dall'utente, basta creare al su interno la cartella "libraries" e metterci dentro quelle aggiuntive, in questo modo con i cambi versione dell'IDE non è necessario ricordarsi di spostare lavori e librerie. In realtà io quel percorso l'ho cambiato, per mia comodità, e comunque devo metterla nella cartella dei miei sketch. OK, provo.
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16440
Don't know what I do
|
 |
« Reply #82 on: May 21, 2011, 05:02:36 am » |
comunque devo metterla nella cartella dei miei sketch.
Esatto, il succo è quello.
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #83 on: May 21, 2011, 05:06:03 am » |
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #84 on: May 21, 2011, 05:21:55 am » |
uhm, primo problemino: #include <PinChangeInterrupt.h> (con la board at85 arduino isp), mi dà errore
In file included from Sleep_Mode_Test_ATTINY.cpp:2: C:\percorso...\libraries\PinChangeInterrupt/PinChangeInterrupt.h:29:32: error: core_build_options.h: No such file or directory
Cosa cerca quest'altra libreria? Forse si trova nella tiny che però ho messo in hardware?
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16440
Don't know what I do
|
 |
« Reply #85 on: May 21, 2011, 05:29:09 am » |
Con il Tiny core devi compilare per le board specificate dal core e non quelle inserite dal mio file boards.txt... Questo perché PinChange si aggancia a librerie del Tiny core stesso.
|
|
|
|
« Last Edit: May 21, 2011, 05:30:42 am by leo72 »
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #86 on: May 21, 2011, 05:36:33 am » |
Agliah! e come faccio ad inviare lo sketch al chip se non uso la tua board?
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Italy
Offline
Brattain Member
Karma: 219
Posts: 16440
Don't know what I do
|
 |
« Reply #87 on: May 21, 2011, 05:45:06 am » |
Ma hai provat e non ti funziona? Perché vedo comunque che anche il file boards.txt presente in /hardware/tiny specifica arduino:arduinoisp come programmatore.
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #88 on: May 21, 2011, 05:56:31 am » |
Allora, se uso il boards.txt della tiny la compilazione va a buon fine ma poi non riesco ad inviare lo sketch; se invece uso il tuo file boards mi dà errore di compilazione, quindi mi conviene estrarre le righe di attyny85 & ISP e metterle nel boards originale, ma non è la stessa cosa, visto che devo comunque usare la tua per inviare lo sketch? 
|
|
|
|
|
Logged
|
|
|
|
|
Lamezia Terme
Offline
Shannon Member
Karma: 386
Posts: 10235
Le domande di chi vuol imparare rappresentano la sua sete di sapere
|
 |
« Reply #89 on: May 21, 2011, 07:46:06 am » |
Ho riunito i due gruppi cores, in boards.txt ho inserito le sole righe dell'attiny85 & ISP, la compilazione funziona, l'upload anche, ma il risultato non cambia. Provo a spiegare la semplice prova dare fare: #include <avr/sleep.h> // libreria standard (avrlib) per lo sleep #include <PinChangeInterrupt.h> /* Sleep test */ #define Sveglia 2 // pin 7 dell'attiny corrispondente a INT0 #define LED 4 // pin 3 dell'attiny85
void sbadiglio() // risveglio dallo sleep { // inserire eventuali azioni legate all'interrupt }
void setup() { pinMode(Sveglia, INPUT); //digitalWrite(Sveglia, HIGH); pinMode(LED, OUTPUT); //digitalWrite(Sveglia, 1); // pull up attiva sul pin 2 attachInterrupt(0, sbadiglio, HIGH); // interrupt 0 set_sleep_mode(SLEEP_MODE_PWR_DOWN); // setta registri per il modo sleep sleep_enable(); // abilita la sleep all'uso }
void A_nanna() // funzione attivazione sleep { attachInterrupt(0, sbadiglio, LOW); // riattiva l'interrupt ADCSRA &= ~(1 << ADEN); sleep_mode(); // mette in stato di sleep sleep_disable(); // disattiva la modalità sleep e riporta il micro a piena operatività detachInterrupt(0); // disattiva l'interrupt } void loop() { for(byte i=0;i<4;i++) { digitalWrite(LED, HIGH); delay(500); digitalWrite(LED, LOW); delay(500); } A_nanna(); // mette il micro in sleep } Per realizzarlo basta alimentare il chip e collegare una R+led sul pin 3 dell’attiny85 (che non è tra quelli interessati all’upload). Appena si alimenta (ma Arduino deve essere scollegato) il led fa 4 lampeggi e poi si spegne, segno che è in sleep; collegando per un attimo il pin 7 (INT0) del chip a GND il led riprende a lampeggiare (s’è svegliato) finché non si scollega. A me serve poter mettere (v. scritte in rosso) LOW invece di HIGH e CHANGE invece di LOW, in modo che il chip esca dallo sleep ANCHE se collego il 7 al +5, ma anche con questa libreria non cambia nulla, se cambio questi valori si spegne e non s’accende più fino al reset. Allora non capisco se la libreria serve ad altro o se bisogna metterci mano, ma che libreria sarebbe? naturalmente ho provato anche la versione "Simple".
|
|
|
|
|
Logged
|
|
|
|
|
|