This commit is contained in:
William Clark 2023-12-23 15:37:33 +00:00
parent 48ee2a6932
commit eac1eaa041
3 changed files with 13 additions and 5 deletions

View File

@ -1,5 +1,5 @@
CC=gcc
CFLAGS=-O2 -std=c99 -W -Werror -Wall -Wextra -pedantic -I.
CFLAGS=-O2 -std=c89 -W -Werror -Wall -Wextra -pedantic -I.
LFLAGS=-lm
all:
$(CC) $(CFLAGS) main.c i2c.c lis3dh.c -o lis3dh $(LFLAGS)

11
i2c.c
View File

@ -38,7 +38,11 @@ int i2c_init(void) {
int i2c_read(uint8_t reg, uint8_t *dst, uint32_t size) {
uint8_t cmd[2] = {reg, 0x00};
uint8_t cmd[2];
cmd[0] = reg;
cmd[1] = 0x00;
write(fd, cmd, 2);
if (read(fd, dst, size) != (ssize_t)size) {
@ -52,7 +56,10 @@ int i2c_read(uint8_t reg, uint8_t *dst, uint32_t size) {
int i2c_write(uint8_t reg, uint8_t value) {
uint8_t cmd[2] = {reg, value};
uint8_t cmd[2];
cmd[0] = reg;
cmd[1] = value;
if (write(fd, cmd, 2) != 2) {
fprintf(stderr, "error write()\n");

5
main.c
View File

@ -22,6 +22,7 @@ int main() {
lis3dh_t lis;
struct lis3dh_fifo_data fifo;
int i, k;
/* set fn ptrs to rw on bus (i2c or SPI) */
lis.dev.init = i2c_init;
@ -47,7 +48,7 @@ int main() {
quit("configure()", &lis);
}
for (int i=0; i<50; i++) {
for (i=0; i<50; i++) {
/* poll fifo reg */
if (lis3dh_poll_fifo(&lis)) {
@ -59,7 +60,7 @@ int main() {
quit("read_fifo()", &lis);
}
for(int k=0; k<fifo.size; k++) {
for(k=0; k<fifo.size; k++) {
printf("x: %04.04f, y: %04.04f, z: %04.04f mag: %04.04f\n",
fifo.x[k], fifo.y[k], fifo.z[k],
mag(fifo.x[k], fifo.y[k], fifo.z[k]));