Habe den LTC1257 benutzt und dabei auch diesen -->
http://www.mikrocontroller.net/articles/LTC1257 Artikel durchgelesen.
Unter anderem steht dort:
1 | #define DACCLK(LEVEL) DACOUT = (LEVEL) ? (DACIN & ~_BV(PC5)):(DACIN | _BV(PC5))
|
2 | #define DACDATA(LEVEL) DACOUT = (LEVEL) ? (DACIN & ~_BV(PC4)):(DACIN | _BV(PC4))
|
3 | #define DACLOAD(LEVEL) DACOUT = (LEVEL) ? (DACIN & ~_BV(PC3)):(DACIN | _BV(PC3))
|
Dies würde ja für LOW LEVEL (0) bedeuten (wenn man den ? Operator
aufschlüsselt)
1 | DACOUT = (DACIN | _BV(PC5))
|
2 | DACOUT = (DACIN | _BV(PC4))
|
3 | DACOUT = (DACIN | _BV(PC3))
|
und für HIGH LEVEL (0):
1 | DACOUT = (DACIN & ~_BV(PC5))
|
2 | DACOUT = (DACIN & ~_BV(PC4))
|
3 | DACOUT = (DACIN & ~_BV(PC3))
|
Dies würde also bedeuten --> bei low --> Bit setzen und bei high -> Bit
löschen.
Ist dies nicht genau verkehrt herum. Also ich hab es bei mir jedenfalls
genau andersherum gemacht und es klappt dann nur so.
Also bis denne