Esempio n. 1
0
/**
  * @brief  Returns the date entered by user, using Hyperterminal.
  * @param  None
  * @retval Current time RTC counter value
  */
uint32_t Date_Regulate(void) {
  int MMDD;
  uint32_t Tmp_YY = 0xFF, Tmp_MM = 0xFF, Tmp_DD = 0xFF;

  printf("\r\n================= Date Setting ==================");
  printf("\r\n  Please Set Year in 4 digits : ");

  while (Tmp_YY == 0xFF) {
    Tmp_YY = USART_4DigitScanf(9999);
  }
  printf("  Set year complete!");
  printf("\r\n  Please Set Month : ");
  while (Tmp_MM == 0xFF) {
    Tmp_MM = USART_2DigitScanf(12);
  }
  printf("  Set month complete!");
  printf("\r\n  Please Set Day : ");
  while (Tmp_DD == 0xFF) {
    Tmp_DD = USART_2DigitScanf(31);
  }
  
  TranslateIntoYear(Tmp_YY);
  TranslateIntoMonth(Tmp_MM);
  TranslateIntoDay(Tmp_DD);
  
  MMDD = (Tmp_MM * 100) + Tmp_DD;
  
  /* Save year data to unresettable backup register addr. no. 2, 3 */
  BKP_WriteBackupRegister(BKP_DR2, Tmp_YY); // Save Year
  BKP_WriteBackupRegister(BKP_DR3, MMDD); // Save Month and Date  
  
  printf("  Set day complete!");

  /* return 0 if succeed */
  return 0;
}
Esempio n. 2
0
/**
  * @brief  Returns the time entered by user, using Hyperterminal.
  * @param  None
  * @retval Current time RTC counter value
  */
uint32_t Time_Regulate(void) {
  uint32_t Tmp_HH = 0xFF, Tmp_MM = 0xFF, Tmp_SS = 0xFF;

  printf("\r\n================= Time Setting ==================");
  printf("\r\n  Please Set Hours in 24hr : ");

  while (Tmp_HH == 0xFF) {
    Tmp_HH = USART_2DigitScanf(23);
  }
  printf("  Set hour complete!");
  printf("\r\n  Please Set Minutes : ");
  while (Tmp_MM == 0xFF) {
    Tmp_MM = USART_2DigitScanf(59);
  }
  printf("  Set minutes complete!");
  printf("\r\n  Please Set Seconds : ");
  while (Tmp_SS == 0xFF) {
    Tmp_SS = USART_2DigitScanf(59);
  }
  printf("  Set second complete!");

  /* Return the value to store in RTC counter register */
  return((Tmp_HH*3600 + Tmp_MM*60 + Tmp_SS));
}
Esempio n. 3
0
void ForceIPSetBySerial(void) {
  int ip0, ip1, ip2, ip3;
  ip0 = 0xFF; ip1 = 0xFF; ip2 = 0xFF; ip3 = 0xFF;
  
  printf("\r\n\r\n=================== IP Setting ====================");
  printf("\r\n  Please Set Year in 3 digits for each IP address : ");

  while (ip0 == 0xFF) {
    ip0 = USART_3DigitScanf(200);
  }
  printf("  IP[0] is set!");
  printf("\r\n  Please Set IP[1] : ");
  while (ip1 == 0xFF) {
    ip1 = USART_3DigitScanf(200);
  }
  printf("  IP[1] is set!");
  printf("\r\n  Please Set IP[2] : ");
  while (ip2 == 0xFF) {
    ip2 = USART_1DigitScanf(200);
  }
  printf("  IP[2] is set!");
  printf("\r\n  Please Set IP[3] : ");
  while (ip3 == 0xFF) {
    ip3 = USART_2DigitScanf(99);
  }
  printf("  IP[3] is set!");

  printf("\r\nEntered IP is %d.%d.%d.%d", ip0, ip1, ip2, ip3);
  IP[0] = ip0; IP[1] = ip1; IP[2] = ip2; IP[3] = ip3;
  
  /* Save year data to unresettable backup register addr. no. 2, 3 */
  BKP_WriteBackupRegister(BKP_DR4, IP[0]); // Save IP[0]
  BKP_WriteBackupRegister(BKP_DR5, IP[1]); // Save IP[1]
  BKP_WriteBackupRegister(BKP_DR6, IP[2]); // Save IP[2]
  BKP_WriteBackupRegister(BKP_DR7, IP[3]); // Save IP[3]
  
  printf("  Set IP complete!");
}