This short program illustrates how to use the DS130x_I2C library. My objective is to share the same RTC with Microchip 18F MCU.
Dependencies: mbed DebugLibrary
NetServices/lwip/arch/sys_arch.cpp@0:f30e2135b0db, 2011-02-09 (annotated)
- Committer:
- Yann
- Date:
- Wed Feb 09 13:57:49 2011 +0000
- Revision:
- 0:f30e2135b0db
V0.0.0.1
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Yann | 0:f30e2135b0db | 1 | #include "sys_arch.h" |
Yann | 0:f30e2135b0db | 2 | #include "mbed.h" |
Yann | 0:f30e2135b0db | 3 | //DG 2010 |
Yann | 0:f30e2135b0db | 4 | |
Yann | 0:f30e2135b0db | 5 | #ifdef __cplusplus |
Yann | 0:f30e2135b0db | 6 | extern "C" { |
Yann | 0:f30e2135b0db | 7 | #endif |
Yann | 0:f30e2135b0db | 8 | |
Yann | 0:f30e2135b0db | 9 | #ifdef __COMPLEX_AND_BUGGUY_HANDLING__ |
Yann | 0:f30e2135b0db | 10 | static Timer* pTmr = NULL; |
Yann | 0:f30e2135b0db | 11 | |
Yann | 0:f30e2135b0db | 12 | void sys_init(void) |
Yann | 0:f30e2135b0db | 13 | { |
Yann | 0:f30e2135b0db | 14 | //Start Timer |
Yann | 0:f30e2135b0db | 15 | pTmr = new Timer(); |
Yann | 0:f30e2135b0db | 16 | pTmr->start(); |
Yann | 0:f30e2135b0db | 17 | } |
Yann | 0:f30e2135b0db | 18 | |
Yann | 0:f30e2135b0db | 19 | u32_t sys_jiffies(void) /* since power up. */ |
Yann | 0:f30e2135b0db | 20 | { |
Yann | 0:f30e2135b0db | 21 | return (u32_t) (pTmr->read_ms()/10); //In /10ms units |
Yann | 0:f30e2135b0db | 22 | } |
Yann | 0:f30e2135b0db | 23 | |
Yann | 0:f30e2135b0db | 24 | u32_t sys_now(void) |
Yann | 0:f30e2135b0db | 25 | { |
Yann | 0:f30e2135b0db | 26 | return (u32_t) pTmr->read_ms(); //In /ms units |
Yann | 0:f30e2135b0db | 27 | } |
Yann | 0:f30e2135b0db | 28 | #elif0 |
Yann | 0:f30e2135b0db | 29 | void sys_init(void) |
Yann | 0:f30e2135b0db | 30 | { |
Yann | 0:f30e2135b0db | 31 | |
Yann | 0:f30e2135b0db | 32 | } |
Yann | 0:f30e2135b0db | 33 | |
Yann | 0:f30e2135b0db | 34 | u32_t sys_jiffies(void) /* since power up. */ |
Yann | 0:f30e2135b0db | 35 | { |
Yann | 0:f30e2135b0db | 36 | static int count = 0; |
Yann | 0:f30e2135b0db | 37 | return ++count; |
Yann | 0:f30e2135b0db | 38 | } |
Yann | 0:f30e2135b0db | 39 | |
Yann | 0:f30e2135b0db | 40 | u32_t sys_now(void) |
Yann | 0:f30e2135b0db | 41 | { |
Yann | 0:f30e2135b0db | 42 | return (u32_t) time(NULL); |
Yann | 0:f30e2135b0db | 43 | } |
Yann | 0:f30e2135b0db | 44 | #else |
Yann | 0:f30e2135b0db | 45 | static Timer* pTmr = NULL; |
Yann | 0:f30e2135b0db | 46 | |
Yann | 0:f30e2135b0db | 47 | void sys_init(void) |
Yann | 0:f30e2135b0db | 48 | { |
Yann | 0:f30e2135b0db | 49 | //Start Timer |
Yann | 0:f30e2135b0db | 50 | pTmr = new Timer(); |
Yann | 0:f30e2135b0db | 51 | pTmr->start(); |
Yann | 0:f30e2135b0db | 52 | } |
Yann | 0:f30e2135b0db | 53 | |
Yann | 0:f30e2135b0db | 54 | u32_t sys_jiffies(void) /* since power up. */ |
Yann | 0:f30e2135b0db | 55 | { |
Yann | 0:f30e2135b0db | 56 | static int count = 0; |
Yann | 0:f30e2135b0db | 57 | return ++count; |
Yann | 0:f30e2135b0db | 58 | //return (u32_t) (pTmr->read_us()); |
Yann | 0:f30e2135b0db | 59 | } |
Yann | 0:f30e2135b0db | 60 | |
Yann | 0:f30e2135b0db | 61 | u32_t sys_now(void) |
Yann | 0:f30e2135b0db | 62 | { |
Yann | 0:f30e2135b0db | 63 | return (u32_t) (pTmr->read_ms()); //In /ms units |
Yann | 0:f30e2135b0db | 64 | } |
Yann | 0:f30e2135b0db | 65 | #endif |
Yann | 0:f30e2135b0db | 66 | |
Yann | 0:f30e2135b0db | 67 | |
Yann | 0:f30e2135b0db | 68 | #ifdef __cplusplus |
Yann | 0:f30e2135b0db | 69 | } |
Yann | 0:f30e2135b0db | 70 | #endif |