pcf8574_sample.c 975 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /*
  2. * Copyright (c) 2006-2018, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. *
  7. * Change Logs:
  8. * Date Author Notes
  9. * 2018-11-22 flybreak Make the first version of pcf8574's package
  10. */
  11. #include <rtthread.h>
  12. #include "pcf8574.h"
  13. #define TEST_IO 0 //(0-7)
  14. #define I2C_BUS "i2c1"
  15. int pcf8574_sample(void)
  16. {
  17. rt_uint8_t value;
  18. pcf8574_device_t dev = RT_NULL;
  19. dev = pcf8574_init(I2C_BUS, RT_NULL);
  20. if (dev == RT_NULL)
  21. return -1;
  22. pcf8574_pin_write(dev, TEST_IO, 0);
  23. value = pcf8574_pin_read(dev, TEST_IO);
  24. rt_kprintf("The value of pcf8574.P%d is %d\n", TEST_IO, value);
  25. rt_thread_mdelay(1000);
  26. pcf8574_pin_write(dev, TEST_IO, 1);
  27. value = pcf8574_pin_read(dev, TEST_IO);
  28. rt_kprintf("The value of pcf8574.P%d is %d\n", TEST_IO, value);
  29. pcf8574_deinit(dev);
  30. return 0;
  31. }
  32. #ifdef FINSH_USING_MSH
  33. MSH_CMD_EXPORT(pcf8574_sample, a pcf8574 sample);
  34. #endif