| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- /*
- * @Description:
- * @Version: 2.0
- * @Author: Seven
- * @Date: 2022-06-14 14:01:56
- * @LastEditors: Seven
- * @LastEditTime: 2022-09-30 15:40:41
- */
- #include "led.h"
- #include "includes.h"
- uint16_t LED_STATUS = 0;
- uint8_t loraindex_led_flag = 0;//lora信道索引指示灯显示标记
- void LED_Init(void)
- {
- // rcu_periph_clock_enable(RCU_GPIOE);
- // gpio_init(GPIOE,GPIO_MODE_OUT_PP,GPIO_OSPEED_50MHZ,GPIO_PIN_14);
-
- //LED_RUN
- rcu_periph_clock_enable(LED_RUN_RCU);
- rcu_periph_clock_enable(LED_STATE_RCU);
- gpio_init(LED_RUN_PORT,GPIO_MODE_OUT_PP,GPIO_OSPEED_50MHZ,LED_RUN_PIN);
- gpio_init(LED_STATE_PORT,GPIO_MODE_OUT_PP,GPIO_OSPEED_50MHZ,LED_STATE_PIN);
- LED_RUN_OFF();
- LED_STATE_OFF();
-
- }
- //单个灯状态设置
- void Led_Single_State_Set(uint8_t led, uint8_t state)
- {
- if(!led)
- return;
- if(led>LED_NUM && led!=LED_ALL)
- return;
- if(state == LED_ON)
- {
- if(led == LED_ALL)
- LED_STATUS = 0xffff;
- else
- LED_STATUS |= 1<<(led-1);
- }
- else if(state == LED_OFF)
- {
- if(led == LED_ALL)
- LED_STATUS = 0;
- else
- LED_STATUS &= ~(1<<(led-1));
- }
- CH455H_LED_set(LED_STATUS);
- }
- //显示一个数的后4位
- void Data_last4bit_led(uint32_t data, uint8_t signal)
- {
- // int i;
- // int state = 0,signal_tmp = 0;
- uint16_t datap = data;
- datap &= 0x0f;
- if(signal == 0)
- {
- // signal_tmp = 0;
- LED_STATUS |= datap;
- }
- else
- {
- // signal_tmp = 4;
- LED_STATUS |= (datap<<4);
- }
- // for(i = 0; i < 4; i++)
- // {
- // state = (data>>i) & 0x00000001;
- // Led_Single_State_Set(i+signal_tmp,state);
- // printf("led=%d, state=%d\n",i+signal_tmp,state);
- // }
-
- CH455H_LED_set(LED_STATUS);
- }
|