12345678910111213141516171819202122232425262728293031323334353637 |
- /*
- * BDA4601.c
- *
- * Created on: 2019. 6. 28.
- * Author: parkyj
- */
- void BDA4601_atten_ctrl(PE43711_st* type ,double data){
- uint8_t i = 0;
- uint8_t temp = 0;
- data = 4 * data;
- temp = (uint8_t)data;
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_RESET);
- HAL_Delay(1);
- for(i = 0; i < 8; i++){
- if((uint8_t)temp & 0x01){
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_15,GPIO_PIN_SET);//DATA
- }
- else{
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_15,GPIO_PIN_RESET);//DATA
- }
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_2,GPIO_PIN_SET);//CLOCK
- HAL_Delay(1);
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_2,GPIO_PIN_RESET);//CLOCK
- HAL_Delay(1);
- temp >>= 1;
- }
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_2,GPIO_PIN_RESET);//CLOCK
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_15,GPIO_PIN_RESET);//DATA
- HAL_Delay(5);
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_SET);//LE
- HAL_Delay(1);
- HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_RESET);
- }
|