Vladimir N. Shilov 4 months ago
parent
commit
6ed874bbba
3 changed files with 25 additions and 20 deletions
  1. 2 0
      inc/board.h
  2. 13 9
      src/board.c
  3. 10 11
      src/main.c

+ 2 - 0
inc/board.h

@@ -9,6 +9,8 @@
 
 /* Type Defs */
 /* Exported macros */
+#define LED_ON()     GPIO_PIN_SET(GPIOB, GPIO_PIN_0)
+#define LED_OFF()      GPIO_PIN_RES(GPIOB, GPIO_PIN_0)
 /* Constants */
 /* PWM Timers for 50 Hz */
 #define TIM1_PSC            (24 - 1)

+ 13 - 9
src/board.c

@@ -44,13 +44,17 @@ void Board_Init(void)
 
   /* Initialize all configured peripherals */
   GPIO_Init();
+  //GPIO_SetPinMode(GPIOA, GPIO_PIN_8, GPIO_MODE_OUT);
+  //GPIO_SetPinOutputType(GPIOA, GPIO_PIN_8, GPIO_OTYPE_PP);
+  //GPIO_SetPinSpeed(GPIOA, GPIO_PIN_8, GPIO_OSPEED_VH);
+  //GPIO_SetPinPull(GPIOA, GPIO_PIN_8, GPIO_PUPDR_NO);
 
-  ADC_Init();
+  //ADC_Init();
 
   TIM1_Init();
   TIM3_Init();
 
-  IWDG_Init();
+  //IWDG_Init();
 }
 
 
@@ -87,11 +91,11 @@ void SystemClock_Config(void)
 static void GPIO_Init(void)
 {
   /* Servo_1_Pin, Servo_2_Pin - Servos control, Alt PP out, middle speed */
-  GPIO_SetPinMode(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_MODE_AFF);
+  GPIO_SetAFPin_8_15(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_AF_2);
   GPIO_SetPinOutputType(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_OTYPE_PP);
-  GPIO_SetPinSpeed(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_OSPEED_LW);
   GPIO_SetPinPull(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_PUPDR_NO);
-  GPIO_SetAFPin_0_7(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_AF_2);
+  GPIO_SetPinSpeed(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_OSPEED_LW);
+  GPIO_SetPinMode(Servo_1_Port, (Servo_1_Pin|Servo_2_Pin), GPIO_MODE_AFF);
 
   /* Photo_Pin: analog in, pull none */
   GPIO_SetPinPull(Photo_Port, Photo_Pin, GPIO_PUPDR_NO);
@@ -99,12 +103,12 @@ static void GPIO_Init(void)
 
   /* Test out Pin A4 */
   GPIO_SetPinMode(GPIOA, GPIO_PIN_4, GPIO_MODE_OUT);
-  GPIO_SetPinOutputType(GPIOA, GPIO_PIN_4, GPIO_OTYPE_PP);
-  GPIO_SetPinSpeed(GPIOA, GPIO_PIN_4, GPIO_OSPEED_LW);
-  GPIO_SetPinPull(GPIOA, GPIO_PIN_4, GPIO_PUPDR_NO);
+  //GPIO_SetPinOutputType(GPIOA, GPIO_PIN_4, GPIO_OTYPE_PP);
+  //GPIO_SetPinSpeed(GPIOA, GPIO_PIN_4, GPIO_OSPEED_LW);
+  //GPIO_SetPinPull(GPIOA, GPIO_PIN_4, GPIO_PUPDR_NO);
 
   /* Test in Pin A5 */
-  GPIO_SetPinPull(GPIOA, GPIO_PIN_4, GPIO_PUPDR_UP);
+  GPIO_SetPinPull(GPIOA, GPIO_PIN_5, GPIO_PUPDR_UP);
 }
 
 /**

+ 10 - 11
src/main.c

@@ -42,16 +42,15 @@ int main(void)
 {
   /* Initialize onBoard Hardware */
   Board_Init();
-  GPIO_PIN_SET(GPIOA, GPIO_PIN_4);
 
   servo_demo();
-/*
-  while (photo_Value <= PHOTO_LEVEL) {
-    IWDG->KR = 0xAAAA;
-    __WFI();
-  }
-*/
-  GPIO_PIN_RES(GPIOA, GPIO_PIN_4);
+
+  //while (photo_Value <= PHOTO_LEVEL) {
+  //  IWDG->KR = 0xAAAA;
+  //  __WFI();
+  //}
+
+  //LED_ON();
   /* Infinite loop */
   while (1)
   {
@@ -115,14 +114,14 @@ static void servo_demo(void) {
   for (i=SERVO_INIT_VAL; i <= SERVO_OPEN_VAL; i++) {
     TIM1->CCR1 = i;
     TIM1->CCR4 = i;
-    delay_ms(10);
+    delay_ms(100);
   }
 
-  delay_ms(100);
+  delay_ms(10000);
   for (i=SERVO_OPEN_VAL; i >= SERVO_INIT_VAL; i--) {
     TIM1->CCR1 = i;
     TIM1->CCR4 = i;
-    delay_ms(10);
+    delay_ms(100);
   }
 }