xref: /third_party/libwebsockets/minimal-examples/embedded/esp32/esp-c3dev/main/i2c.c
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/libwebsockets/minimal-examples/embedded/esp32/esp-c3dev/main/
1d4afb5ceSopenharmony_ci#include "i2c.h"
2d4afb5ceSopenharmony_ci
3d4afb5ceSopenharmony_ciint
4d4afb5ceSopenharmony_cilws_i2c_command(lws_i2c_ops_t *ctx, uint8_t ads, uint8_t c)
5d4afb5ceSopenharmony_ci{
6d4afb5ceSopenharmony_ci	if (ctx->start(ctx))
7d4afb5ceSopenharmony_ci		return 1;
8d4afb5ceSopenharmony_ci
9d4afb5ceSopenharmony_ci	if (ctx->write(ctx, ads << 1)) {
10d4afb5ceSopenharmony_ci		ctx->stop(ctx);
11d4afb5ceSopenharmony_ci
12d4afb5ceSopenharmony_ci		return 1;
13d4afb5ceSopenharmony_ci	}
14d4afb5ceSopenharmony_ci
15d4afb5ceSopenharmony_ci	ctx->write(ctx, 0);
16d4afb5ceSopenharmony_ci	ctx->write(ctx, c);
17d4afb5ceSopenharmony_ci	ctx->stop(ctx);
18d4afb5ceSopenharmony_ci
19d4afb5ceSopenharmony_ci	return 0;
20d4afb5ceSopenharmony_ci}
21d4afb5ceSopenharmony_ci
22d4afb5ceSopenharmony_ciint
23d4afb5ceSopenharmony_cilws_i2c_command_list(lws_i2c_ops_t *ctx, uint8_t ads, const uint8_t *buf, size_t len)
24d4afb5ceSopenharmony_ci{
25d4afb5ceSopenharmony_ci	while (len--)
26d4afb5ceSopenharmony_ci		if (lws_i2c_command(ctx, ads, *buf++))
27d4afb5ceSopenharmony_ci			return 1;
28d4afb5ceSopenharmony_ci
29d4afb5ceSopenharmony_ci	return 0;
30d4afb5ceSopenharmony_ci}
31d4afb5ceSopenharmony_ci
32d4afb5ceSopenharmony_ci
33

Indexes created Thu Nov 07 10:32:03 CST 2024