123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- #include <stdio.h>
- #include <unistd.h>
- #include <string.h>
- #include "ohos_init.h"
- #include "cmsis_os2.h"
- #include "iot_gpio.h"
- #include "iot_gpio_ex.h"
- #define OUT_GPIO2 2
- #define OUT_GPIO7 7
- #define OUT_GPIO8 8
- #define OUT_GPIO9 9
- #define OUT_GPIO10 10
- #define OUT_GPIO11 11
- #define OUT_GPIO12 12
- #define OUT_GPIO13 13
- int BH1750_InitMainLed(void)
- {
- IoTGpioInit(OUT_GPIO7);
- IoTGpioSetFunc(OUT_GPIO7, IOT_GPIO_FUNC_GPIO_7_GPIO);
- IoTGpioSetDir(OUT_GPIO7, IOT_GPIO_DIR_OUT);
- IoTGpioInit(OUT_GPIO8);
- IoTGpioSetFunc(OUT_GPIO8, IOT_GPIO_FUNC_GPIO_8_GPIO);
- IoTGpioSetDir(OUT_GPIO8, IOT_GPIO_DIR_OUT);
- IoTGpioInit(OUT_GPIO9);
- IoTGpioSetFunc(OUT_GPIO9, IOT_GPIO_FUNC_GPIO_9_GPIO);
- IoTGpioSetDir(OUT_GPIO9, IOT_GPIO_DIR_OUT);
- IoTGpioInit(OUT_GPIO10);
- IoTGpioSetFunc(OUT_GPIO10, IOT_GPIO_FUNC_GPIO_10_GPIO);
- IoTGpioSetDir(OUT_GPIO10, IOT_GPIO_DIR_OUT);
- IoTGpioInit(OUT_GPIO11);
- IoTGpioSetFunc(OUT_GPIO11, IOT_GPIO_FUNC_GPIO_11_GPIO);
- IoTGpioSetDir(OUT_GPIO11, IOT_GPIO_DIR_OUT);
- IoTGpioInit(OUT_GPIO12);
- IoTGpioSetFunc(OUT_GPIO12, IOT_GPIO_FUNC_GPIO_12_GPIO);
- IoTGpioSetDir(OUT_GPIO12, IOT_GPIO_DIR_OUT);
- IoTGpioInit(OUT_GPIO13);
- IoTGpioSetFunc(OUT_GPIO13, IOT_GPIO_FUNC_GPIO_13_GPIO);
- IoTGpioSetDir(OUT_GPIO13, IOT_GPIO_DIR_OUT);
- return 0;
- }
- void pmd(int i )
- {
- switch (i)
- {
- case 0:
- IoTGpioSetOutputVal(OUT_GPIO12, 1);
- break;
- case 1:
- IoTGpioSetOutputVal(OUT_GPIO10, 1);
- break;
- case 2:
- IoTGpioSetOutputVal(OUT_GPIO9, 1);
- break;
- case 3:
- IoTGpioSetOutputVal(OUT_GPIO11, 1);
- break;
- case 4:
- IoTGpioSetOutputVal(OUT_GPIO13, 1);
- break;
- case 5:
- IoTGpioSetOutputVal(OUT_GPIO2, 1);
- break;
- case 6:
- IoTGpioSetOutputVal(OUT_GPIO7, 1);
- break;
- case 7:
- IoTGpioSetOutputVal(OUT_GPIO8, 1);
- break;
-
- default:
- IoTGpioSetOutputVal(OUT_GPIO2, 0); // 设置GPIO_7输出低电平关闭灯
- IoTGpioSetOutputVal(OUT_GPIO7, 0);
- IoTGpioSetOutputVal(OUT_GPIO8, 0);
- IoTGpioSetOutputVal(OUT_GPIO9, 0);
- IoTGpioSetOutputVal(OUT_GPIO10, 0);
- IoTGpioSetOutputVal(OUT_GPIO11, 0);
- IoTGpioSetOutputVal(OUT_GPIO12, 0); //
- IoTGpioSetOutputVal(OUT_GPIO13, 0);
- break;
- }
- }
- static void IotMainEntry(void)
- {
- int i=0;
- BH1750_InitMainLed();
- while(1)
- {
- for(i=0;i<9;i++)
- {
- pmd(i);
- // usleep(1000);
- osDelay(100);
- }
- }
-
-
- }
- static void TestTask(void)
- {
- osThreadAttr_t attr;
- attr.name = "IotMainEntry";
- attr.attr_bits = 0U;
- attr.cb_mem = NULL;
- attr.cb_size = 0U;
- attr.stack_mem = NULL;
- attr.stack_size = 1024;
- attr.priority = osPriorityNormal;
- if (osThreadNew((osThreadFunc_t)IotMainEntry, NULL, &attr) == NULL) {
- printf("[TestTask] Falied to create rtosv2_producer_consumer_main!\n");
- }
- }
- APP_FEATURE_INIT(TestTask);
|