source: trunk/firmware_v2/SES/src/buzzer.c@ 25

Last change on this file since 25 was 17, checked in by f.jahn, 4 months ago
File size: 1.3 KB
RevLine 
[17]1#include "main.h"
2#include "buzzer.h"
3
4unsigned int onTimeCounter;
5unsigned int offTimeCounter;
6unsigned int onTime;
7unsigned int offTime;
8unsigned int alarmMode;
9
10
11
12void BUZZER_Exec(void)
13{
14
15 if (onTimeCounter > 0)
16 {
17 onTimeCounter--;
18 if (onTimeCounter == 0)
19 {
20 HAL_GPIO_WritePin(GPIO_OUTPUT_BUZZER_GPIO_Port, GPIO_OUTPUT_BUZZER_Pin, GPIO_PIN_RESET);
21
22 if (alarmMode == 1) offTimeCounter = offTime;
23 }
24 }
25
26 if (offTimeCounter > 0)
27 {
28 offTimeCounter--;
29 if (offTimeCounter == 0)
30 {
31 HAL_GPIO_WritePin(GPIO_OUTPUT_BUZZER_GPIO_Port, GPIO_OUTPUT_BUZZER_Pin, GPIO_PIN_SET);
32 onTimeCounter = onTime;
33 }
34 }
35}
36
37
38
39void BUZZER_Beep(unsigned int time)
40{
41 HAL_GPIO_WritePin(GPIO_OUTPUT_BUZZER_GPIO_Port, GPIO_OUTPUT_BUZZER_Pin, GPIO_PIN_SET);
42 onTimeCounter = time;
43
44}
45
46void BUZZER_Alarm_Start(unsigned int on, unsigned int off )
47{
48 onTime = on;
49 offTime = off;
50 alarmMode = 1;
51
52 HAL_GPIO_WritePin(GPIO_OUTPUT_BUZZER_GPIO_Port, GPIO_OUTPUT_BUZZER_Pin, GPIO_PIN_SET);
53 onTimeCounter = on;
54
55}
56
57void BUZZER_Alarm_Stop(void)
58{
59 HAL_GPIO_WritePin(GPIO_OUTPUT_BUZZER_GPIO_Port, GPIO_OUTPUT_BUZZER_Pin, GPIO_PIN_RESET);
60 alarmMode = 0;
61 offTimeCounter = 0;
62 onTimeCounter = 0;
63
64}
Note: See TracBrowser for help on using the repository browser.