sabato 26 luglio 2014

Tipologie File System

ext2 Il classico filesystem nativo di Linux,
ext3 Aggiunge il journaling a ext2. Compatibile all’indietro. Il filesystem predefinito per molte distro attuali.
 ext4 La nuova generazione degli ext. Più scalabile, più affi dabile, basato su extent map.
 reiser Filesystem con journaling che archivia non solo i nomi dei fi le, ma anche i dati in un albero bilanciato.
proc Un filesystem virtuale specifi co di Linux, fornisce l’accesso ai dati interni del kernel.
JFS Il fi lesystem con journaling ideato da IBM.
cramfs Un semplice fi lesystem compresso per embedded system basati su ROM.
ISO9660 Il formato di filesystem usato sui CD, a volte chiamato High Sierra.
UDF Il filesystem usato sui DVD.
VFAT Il filesystem usato da Windows 95, Windows 98 e Windows NT 4.
OS/2 HPFS Il filesystem usato dal concorrente di Windows creato da IBM, noto anche come Warp.
NTFS Filesystem usato da Windows NT, 2000, XP, ecc.
 System V Il filesystem originale di System V, usato da un certo numero dei sistemi UNIX più vecchi.
UFS Il filesystem usato da BSD e derivati, come SunOS e OpenBSD.
XFS Un filesystem con journaling dalle alte prestazioni, nato sulla piattaforma SGI IRIX.
GFS Un filesystem clustered che    permette a più computer di condividere   un dispositivo a blocchi (ad esempio con iSCSI).
 NFS Il protocollo nativo di UNIX e Linux per condividere fi le in rete.
CIFS Il cosiddetto Common Internet File
System (il successore di SMB di Microsoft).
NCP Netware Core Protocol, il protocollo di Novell basato su
IPX è usato per accedere ai fi le server Netware.

Questa pagina è sotto licenza Creative Common BY-SA
 This page is under Creative Common BY-SA

Progetto gEDEA

Il progetto gEDA è una suite di strumenti per l’automazione della progettazione elettronica.
Questi strumenti vengono utilizzati per la progettazione di circuiti elettrici, schemi, simulazione, prototipazione e produzione.
Attualmente, il progetto gEDA offre una suite di applicazioni software mature e gratuite per la progettazione elettronica, inclusa la cattura schematica, gestione degli attributi, generazione della distinta base (BOM) , netlisting in oltre 20 formati di netlist, simulazione analogica e digitale e progettazione dei circuiti stampati (PCB ).
Il progetto gEDA è stato avviato per colmare la mancanza di strumenti gratuiti EDA per sistemi POSIX con lo scopo primario di promuovere l’hardware libero o hardware open source.
Lo sviluppo è soprattutto incentrato sulla piattaforma GNU / Linux . Veramente Bello.


LINK





UK Version

The gEDA project has produced and continues working on a full GPL'd suite and toolkit of Electronic Design Automation tools. These tools are used for electrical circuit design, schematic capture, simulation, prototyping, and production. Currently, the gEDA project offers a mature suite of free software applications for electronics design, including schematic capture, attribute management, bill of materials (BOM) generation, netlisting into over 20 netlist formats, analog and digital simulation, and printed circuit board (PCB) layout.
Very Nice

LINK


Questa pagina è sotto licenza Creative Common BY-SA
 This page is under Creative Common BY-SA

martedì 22 luglio 2014

Riduzione consumi di un Arduino uno R3


 
 Arduino di norma non ha un efficace gestione delle politiche di risparmio dei consumi , mentre altre  hanno un power managment che gestisce i consumi, disattivando tutto quello che non serve in arduino bisogna fare tutto a mano
Incominciamo a dire che i test sono fatti con arduino Uno R3, da data sheet abbiamo che i consumi sono di 50 mA 

Se si vuole fare le cose in maniera manuale  si puo' disabilitare
 
#include <avr/sleep.h>
void setup(){
  //abilito sleep mode
  sleep_enable();
  //scelgo la tipologia di sleep mode
  set_sleep_mode(SLEEP_MODE_PWR_DOWN);
  //disabilito tutte le periferiche
  ADCSRA = 0;  //disabilito ADC
  PRR = 0xff;  //disabilito tutte le periferiche 
  //mando giu' BOD:
  MCUCR = _BV (BODS) | _BV (BODSE);   
  MCUCR = _BV (BODS);        
  //mando in sleep mode la cpu
  sleep_cpu();
}
void loop(){
}
 
  
dove:






ADCSRA abilita o disabilita ADC 
 
la libreria di ARDUINO ha una variabile di nome PRR. Settando PRR a 1 accendo la 
periferica a 0 si spegne
    Bit 7 - PRTWI: Power Reduction TWI
    Bit 6 - PRTIM2: Power Reduction Timer/Counter2
    Bit 5 - PRTIM0: Power Reduction Timer/Counter0
    Bit 4 - Res: Reserved bit
    Bit 3 - PRTIM1: Power Reduction Timer/Counter1
    Bit 2 - PRSPI: Power Reduction Serial Peripheral Interface
    Bit 1 - PRUSART0: Power Reduction USART0
    Bit 0 - PRADC: Power Reduction ADC 

 al setup se vuoi disabilitae ADC, USART0, TWI, SPI devi settarli

ADCSRA = 0;
PRR = B10010111;

Il compito del Brown-out Detection (BOD) è quello di ripristinare il controller quando la tensione di alimentazione è troppo bassa per un funzionamento sicuro.
BOD può essere impostato su più livelli di tensione  o puo' essere spento. I livelli di BOD sono 4.3V, 2.7V e 1.8V. Lo standard è 2.7 V che è buono quando si dispone di alcuni dispositivi collegati 3.3V

 per disabilitare il BOD (Bisogna comunque disativare prima sempre ADC per poterlo disabilitare)

MCUCR = _BV (BODS) | _BV (BODSE);
MCUCR = _BV (BODS);

 poi ci sono le varie modalità di sleep mode le quali si differenziano da ltempo di risveglio del microconrollore e quandi della risposta che deve fornire l'intero sistema 

  Sleep modes  e Consumi:

  • SLEEP_MODE_IDLE: 15 mA
  • SLEEP_MODE_ADC: 6.5 mA
  • SLEEP_MODE_PWR_SAVE: 1.62 mA
  • SLEEP_MODE_EXT_STANDBY: 1.62 mA
  • SLEEP_MODE_STANDBY : 0.84 mA
  • SLEEP_MODE_PWR_DOWN : 0.36 mA


Se si vuole usare invece in un progetto dove non sivuole consumare troppa batteria e si vuole far risvegliare Arduino con un interrupt.

Questo è il link per poter testare il tutto, bisogna pero', con un cavo collegare il pin  D0 e il pin D2 cosi' l'evento verrà generato dall'invio di un dato dalla testiare sulla seriale



Questi sono i riferimenti che ho utilizzato per le prove:

link1 
link2
link3
link4
poi c'è questo forum link
importante esempio  link

esempio con libreria link

gestione interrupt link  oppure link



Questa pagina è sotto licenza Creative Common BY-SA
 This page is under Creative Common BY-SA