Xlinkers Home

Yet more I2S code

Bookmark and Share

This time I2S slave receiver in three lines of XC

Operates in 24b resolution and outputs samples on channel c


in port bc, wc
in buffered port:32 d
clock cb

int lr = 0
unsigned x, t

set_clock_src(cb, bc)
set_port_clock(wc, cb)
set_port_clock(d, cb)
start_clock(cb)

while (1) {
wc when pinsneq(lr) :> lr @ t
d @ (t + 24) :> x
c <: (bitrev(x) << 8)
}


User login

Affiliate sites

affiliate

Advertisments

affiliate

Recent Projects

Go to projects page