1. 클럭설정

- TIM2 사용을 위해 APB1 Timer clocks 설정 - 72MHz

 

 

2. TIM2 설정

- Clock Source : Internal Clock

- Prescaler : 7200-1

- Counter Period : 10000-1

계산식 : 72MHz / 7200 / 10000 = 1

 

3. 코드

- 프로젝트 생성 후 htim2 타이머 인터럽트 시작 추가

- 정의된 HAL_TIM_PeriodElapsedCallback 사용 LED 토글 

 

int main(void)
{
  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_TIM2_Init();
  /* USER CODE BEGIN 2 */
  HAL_TIM_Base_Start_IT(&htim2);
	
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
  if (htim->Instance == TIM2) /* 1s */
  {
    HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
  }
}

 

'STM32' 카테고리의 다른 글

STM32 MXCube을 이용한 1초 타이머  (0) 2020.09.21

1. gitlab 디렉토리 생성

 

mkdir gitlab

 

2. gitlab docker 이미지 설치

hostname과 volume은 수정해야함. 이미지 버전은 백업된 gitlab의 버전과 동일하게 할 것.

이미지 버전은 아래 사이트에서 확인

hub.docker.com/r/gitlab/gitlab-ee/tags

 

Docker Hub

 

hub.docker.com

sudo docker run --detach \
  --hostname test.duwon.net\
  --publish 443:443 --publish 80:80 --publish 122:22 \
  --name gitlab \
  --restart always \
  --volume /home/duwon/gitlab/config:/etc/gitlab \
  --volume /home/duwon/gitlab/logs:/var/log/gitlab \
  --volume /home/duwon/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ee:latest

3. 백업 이미지 /home/duwon/gitlab/data/backups에 복사

 

4. 복원

 

sudo docker exec -it gitlab gitlab-ctl stop unicorn
sudo docker exec -it gitlab gitlab-ctl stop puma
sudo docker exec -it gitlab gitlab-ctl stop sidekiq
sudo docker exec -it gitlab gitlab-backup restore BACKUP=1599528998_2020_09_08_13.3.5-ee

1599528998_2020_09_08_13.3.5-ee_gitlab_backup.tar 파일명에서 _gitlab_backup.tar앞까지만 입력

 

5. 재시작

sudo docker restart gitlab

1.  QNAP nfs 설정

 

2. 리눅스에서 QNAP 서버 마운트

 

sudo vi /etc/fstab

 

3. 자동 마운트를 위해 fstab 수정

192.168.2.32:/Gitlab /mnt/Gitlab nfs defaults 0 0

 

4. 마운트하기

 

sudo mount -a

 

5. gitlab 설정 파일 열기

sudo vi /etc/gitlab/gitlab.rb

 

6. gitlab.rb 수정

백업후 로컬폴더로 업로드 하지 않고 백업폴더를 마운트된 디렉토리로 지정해버림

 

gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/mnt/Gitlab"

gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/mnt/Gitlab"

 

백업 후 업로드 할 경우 아래 참조

docs.gitlab.com/ee/raketasks/backup_restore.html#uploading-to-locally-mounted-shares

 

Back up and restore GitLab | GitLab

Back up and restore GitLab GitLab provides Rake tasks for backing up and restoring GitLab instances. An application data backup creates an archive file that contains the database, all repositories and all attachments. You can only restore a backup to exact

docs.gitlab.com

7. 재설정

sudo gitlab-ctl reconfigure

 

8. 백업하기

sudo gitlab-backup create

 

설정파일은 백업되지 않음으로 수정백업 해야함.

+ Recent posts