Vraag
====
Ik zou graag weten als ik dat juist heb toegepast in de functies die ik nodig heb voor het setten en resetten van bits.
& = bitwise resetten van een bit
| = bitwise setten van een bit
~ = toggelen van een bit
^ = inverteren van een bit
Hier is datgene wat ik heb geprobeerd en zou graag weten als ik dat juist heb gedaan en dat het misschien nog op een andere manier kan worden gedaan.
Ik wil met control register van mijn DDS een setup uitvoeren:
B28 = 0
HLB = 1
FSELECT = 1
RESET = 0
OPBITEN = 0
MODE = 0
This is the 16 bit word:
0 0 0 1 1 X 0 0 X X 0 0 0 X 0 0 0
Dat is mijn code: (denk in PICBASIC is dat bijna hetzelfde)
======================================
Code: Selecteer alles
#define FREQ0 0x4000 // Address Freq0 = 0100 0000 0000 0000
// AD9833 Control Register bits
#define B28 (1 << 13) // bit 13 B28
#define HLB (1 << 12) // bit 12 HLB
#define FSELECT (1 << 11) // bit 11 FSELECT
#define RESET (1 << 8) // bit 8 RESET
#define OPBITEN (1 << 5) // bit 5 OPBITEN
#define MODE (1)
#define SINE 1
// Dat is een SPI commando in MikroC in PIC basic denk ik dat het
// SHOUT is
SPI_Write(FREQ0 & B28 | HLB | FSELECT & RESET & OPBITEN &
MODE);