swRTC

:frowning:

Versione 0.7 della libreria:

  • corretto il problema sugli Attinyx4: adesso funziona tutto correttamente
  • sistemato il problema di delay/millis sui core Tiny. Adesso la lib swRTC e le funzioni temporali di Arduino (delay/millis/delaymicroseconds) possono coesistere

Allegato alla libreria trovato un file denominato build_core_options.h che dovete sostituire a quello presente in /hardware/tiny/cores/tiny/ affinché la swRTC possa compilare correttamente sugli Attinyx4 e le funzioni temporali di Arduino possano continuare a funzionare su tutti i core Tiny.

RICHIESTA:
ho bisogno di feedback per i Tiny2313 e gli Atmega1280/2560.

swRTC-0_7.zip (8.89 KB)

peccato non ne abbia, altrimenti iniziavo a scalare i tuoi crediti di Test :slight_smile:

pero' appena riprendo in mano il mio progetto nixie prometto test sugli Atmega8A standalone con Optifix lasciato a bordo

ATmega 1280:
In file included from swRTCtest.cpp:1:
C:\Documents and Settings\Ratto\Desktop\ArduOpen_023BB3\ArduOpen_023BB3\libraries\swRTC/swRTC.h:19:2: error: #error Microcontroller not supported

Ora provo con l'ide ufficiale....

Uhm.. non vorrei fosse un errore sul riconoscimento dei micro. Ora controllo anch'io.

Stessa cosa.... con l'IDE ufficiale la 0022

C'era un file con un piccolo errore.
Usa il file allegato al posto di quello dell'archivio precedente.

swRTC.h (1.29 KB)

@ratto:
sì, ma poi? funziona tutto?

Ho un problema mi è andato in bomba l'IDE (Maledetta deframmentazione....) =(
Domani riscarico tutto l'IDE e riprovo....
mi da un errore assurdo.. non so che dire O.o

avrdude: Can't find programmer id "arduino"

Valid programmers are:
  dasa3    = serial port banging, reset=!dtr sck=rts mosi=txd miso=cts [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:776]
  dasa     = serial port banging, reset=rts sck=dtr mosi=txd miso=cts [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:763]
  siprog   = Lancos SI-Prog <http://www.lancos.com/siprogsch.html> [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:750]
  ponyser  = design ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:737]
  frank-stk200 = Frank STK200                   [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:702]
  blaster  = Altera ByteBlaster             [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:689]
  ere-isp-avr = ERE ISP-AVR <http://www.ere.co.th/download/sch050713.pdf> [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:679]
  atisp    = AT-ISP V1.1 programming cable for AVR-SDK1 from <http://micro-research.co.th/>  [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:669]
  dapa     = Direct AVR Parallel Access cable [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:658]
  xil      = Xilinx JTAG cable              [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:645]
  futurlec = Futurlec.com programming cable. [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:628]
  abcmini  = ABCmini Board, aka Dick Smith HOTCHIP [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:618]
  picoweb  = Picoweb Programming Cable, http://www.picoweb.net/ [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:608]
  sp12     = Steve Bolt's Programmer        [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:597]
  alf      = Nightshade ALF-PgmAVR, http://nightshade.homeip.net/ [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:581]
  bascom   = Bascom SAMPLE programming cable [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:571]
  dt006    = Dontronics DT006               [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:561]
  pony-stk200 = Pony Prog STK200               [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:549]
  stk200   = STK200                         [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:533]
  bsd      = Brian Dean's Programmer, http://www.bsdhome.com/avrdude/ [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:522]
  pavr     = Jason Kyle's pAVR Serial Programmer [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:514]
  dragon_dw = Atmel AVR Dragon in debugWire mode [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:507]
  dragon_hvsp = Atmel AVR Dragon in HVSP mode  [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:499]
  dragon_pp = Atmel AVR Dragon in PP mode    [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:491]
  dragon_isp = Atmel AVR Dragon in ISP mode   [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:483]
  dragon_jtag = Atmel AVR Dragon in JTAG mode  [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:475]
  jtag2dw  = Atmel JTAG ICE mkII in debugWire mode [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:467]
  jtag2isp = Atmel JTAG ICE mkII in ISP mode [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:459]
  jtag2    = Atmel JTAG ICE mkII            [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:451]
  jtag2fast = Atmel JTAG ICE mkII            [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:443]
  jtag2slow = Atmel JTAG ICE mkII            [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:435]
  jtagmkII = Atmel JTAG ICE mkII            [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:427]
  jtag1slow = Atmel JTAG ICE (mkI)           [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:420]
  jtag1    = Atmel JTAG ICE (mkI)           [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:412]
  jtagmkI  = Atmel JTAG ICE (mkI)           [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:404]
  avr911   = Atmel AppNote AVR911 AVROSP    [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:398]
  avr109   = Atmel AppNote AVR109 Boot Loader [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:392]
  butterfly = Atmel Butterfly Development Board [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:386]
  usbtiny  = USBtiny simple USB programmer  [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:380]
  usbasp   = USBasp, http://www.fischl.de/usbasp/ [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:374]
  avr910   = Atmel Low Cost Serial Programmer [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:368]
  stk500hvsp = Atmel STK500 V2 in high-voltage serial programming mode [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:362]
  stk500pp = Atmel STK500 V2 in parallel programming mode [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:356]
  stk500v2 = Atmel STK500 Version 2.x firmware [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:350]
  stk500v1 = Atmel STK500 Version 1.x firmware [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:344]
  stk500   = Atmel STK500                   [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:338]
  avrisp2  = Atmel AVR ISP mkII             [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:328]
  avrispmkII = Atmel AVR ISP mkII             [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:322]
  avrispv2 = Atmel AVR ISP V2               [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:316]
  avrisp   = Atmel AVR ISP                  [J:\arduino-0022\hardware/tools/avr/etc/avrdude.conf:310]

Edit ho trovato la vecchia 0021 e qui non da errori un attimo e provo....

swRTC FUNZIONA su Seeeduino Mega e quindi anche nell'arduino Mega 1280 del quale condivide il parte del bootloader
XD XD
Domani se riesco provo a tenerlo acceso per una decina di ore di seguito e vediamo se sballa o no.....

Se la scheda non ha un quarzo vero e proprio lo sbarellamento è garantito :wink:

Intendi il quarzo da 16Mhz del micro o quello da 32.786khz ? su che pin bisogna applicarlo ? :grin:

Lascia stare il quarzo da 32768. :wink:
Intendo un quarzo che si chiami quarzo, non un risonatore come quello dell'Arduino UNO.

Eh sul seeeduino cè un affare che potrebbe essere un quarzo smdo o anche un risuonatore non lo so non ne ho mai visti di simili :slight_smile:

Ma intendi quello che si vede in questa foto:
http://www.seeedstudio.com/depot/seeeduino-v221-atmega-328p-p-669.html
Quello è un cristallo, va bene. Oppure quel cosino SMD che ha la UNO? Quest'ultimo è un risonatore e non va bene.

No no è totalmente diverso... guarda qui....
http://www.seeedstudio.com/depot/seeeduino-mega-p-717.html?cPath=132_133

è quel cosino bianco davanti il micro anche se il mio cè l'ha da un altra parte :roll_eyes:

E' un cristallo SMD.
Quindi va bene.

domanda generica sul codice di un RTC sw o hw che sia

diciamo che predispongo 2 tastini low che mando high quando li premo, come si integra una funzione "aumenta di 1 secondo l'ora attuale" o "diminuisci di un secondo l'ora attuale" ?

altra domanda, gli oscillatori, quelli con 4 piedini, son + precisi dei quarzi? si potrebbero usare invece del quarzo da 16MHz?

reizel:
domanda generica sul codice di un RTC sw o hw che sia

diciamo che predispongo 2 tastini low che mando high quando li premo, come si integra una funzione "aumenta di 1 secondo l'ora attuale" o "diminuisci di un secondo l'ora attuale" ?

rtc.setTime(rtc.getHours(), rtc.getMinutes(), rtc.getSeconds() + 1);

ma ci potevi arrivare tranquillamente da solo

reizel:
altra domanda, gli oscillatori, quelli con 4 piedini, son + precisi dei quarzi? si potrebbero usare invece del quarzo da 16MHz?

no! i quarzi son più precisi, ma nulla ti vieta di usare gli oscillatori

da http://it.wikipedia.org/wiki/Oscillatore:

Oscillatori quarzati: quest'ultima categoria di oscillatori fa uso di un cristallo di quarzo piezoelettrico il cui comportamento viene portato ad essere assimilabile a quello di un circuito LC. Tali oscillatori hanno spiccate qualità di stabilità in frequenza e di stabilità alla temperatura date dalle ottime qualità di oscillatore meccanico proprie dei cristalli piezoelettrici di quarzo. Il più noto è l'oscillatore di Pierce.