private void textBox_KeyPress(object sender, KeyPressEventArgs e)
{
  /* HEX만 입력 되도록 필터링 */
  if (!(char.IsDigit(e.KeyChar) || e.KeyChar == Convert.ToChar(Keys.Back) || 
        "ABCDEF0123456789abcdef".IndexOf(e.KeyChar) != -1)) /* 숫자와 백스페이스를 제외한 나머지를 바로 처리 */
  {
    e.Handled = true;
  }
}

 

'Programming > C#' 카테고리의 다른 글

텍스트 박스에 HEX만 입력 필터링  (0) 2020.12.04

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

 

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

1. https://www.raspberrypi.org/downloads/ 라즈비안 다운로드 및 설치

    - Raspberry Pi Imager for Windows 을 다운로드하여 설치

    - microsd 카드를 삽입 후 Raspberry Pi 프로그램을 실행

    - Raspberry PI OS 32bit 선택하고 SD카드 드라이버를 선택 후 Write

2. boot 폴더에 ssh 파일 생성

    - 라즈베리파이 OS 쓰기 완료 후 microsd 카드를 뺏다가 다시 삽입

    - 메모장을 열고 다른이름으로 저장

    - 파일형식은 모든 파일, 파일이름은 "ssh" 입력 후 microsd카드 boot 드라이브에 저장

 

3. boot 폴더에 wpa_supplicant.conf 파일 생성

    - 메모장에 아래와 같이 붙여놓고 ssid 및 psk 입력 후 저장

    - 라즈베리파이4 에서는 5G만 검색됨

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
    ssid="접속할 WIFI 이름"
    psk="접속할 WIFI 암호"
}

 

4. 부팅 후 ssh  접속

    - 라즈베리파이에 microsd 카드 삽입 후 전원 연결

    - 윈도우의 파워쉘 실행하고 ssh pi@raspberrypi 입력

    - 연결이 안될경우 동일 wifi 네트웍에 연결되었는지 확인하여 라즈베리파이 IP 주소를 확인

 

    id : pi

    pw : raspberry

 

 

5. 라즈베리파이 설정

 

sudo raspi-config

    - 5번 인터페이스 설정에서 VNC 및 SPI 설정

 

6. VNC 접속

    https://www.realvnc.com/en/connect/download/viewer/ VNC 다운로드 및 설치

    - 라지베리파이 재부팅 후 VNC에 IP 주소 입력

    - 비밀번호 및 와이파이 설정

    - Raspberry PI Configration 메뉴에서 Display 탭의 Reso 

    - /boot/config.txt 수정이 필요 할 수 있음

hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=78
#해당도 설정
hdmi_cvt=1024 600 60 0 0 0

 

7. 나눔고딕 설치

 

sudo apt install fonts-nanum fonts-nanum-extra
  1. jinms 2020.07.28 16:45

    뭐하시려구요?!ㅋㅋ

1. https://pypi.org/project/setuptools 사이트 방문하여 Download files 메뉴를 선택하여 setuptools-xx.xx.zip 파일을 다운로드 한다.




2. 윈도우에 파이선이 설치되어 있다면 압축파일 내에 easy_install.py을 클릭하여 설치한다.


3. 환경변수에 현재 설치된 pip3의 실행파일 위치를 등록한다.

파이썬 3.8설치한 제 컴퓨터 기준 %APPDATA%\..\Local\Programs\Python\Python38-32\Scripts 

( C:\Users\1\AppData\Local\Programs\Python\Python38-32\Scripts )


4. 윈도우 파워쉘에서 pip3 install 명령어를 실행 할 수 있다.



윈도우10에서 환경변수 등록 방법


1. 윈도우10에서 검색 창을 열고(위도우 키를 누르고) '고급 시스템 설정 보기'을 실행한다.




2.  오른쪽 밑 환경변수 버튼을 클릭한다.

3. 사용자변수 Path을 찾아 더블클릭한다.


'Programming > Python3' 카테고리의 다른 글

윈도우 파이썬에서 PIP3 사용하기 (설치)  (0) 2020.07.06

참조 사이트:
     1. 컴파일러 WinARM   http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/
     2. AT91-ISP(SAM-BA)    http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3883

     3. Programmers Notepad   http://www.pnotepad.org/

다운로드:
     1. 컴파일러 WinARM-20070505   http://www.cpuplaza.co.kr/upload/bbs/WinARM-20070505_sfx.exe

     2. Program Note Pad(PN208718)   http://pnotepad.googlecode.com/files/pn208718.exe

     3. AT91-ISP(SAM-BA)   http://www.atmel.com/dyn/resources/prod_documents/Install%20AT91-ISP%20v1.13.exe

 

WinARM 설치

다운받은 WinARM 파일을 클릭하면 압축 풀 디렉토리를 설정하는 화면이 나온다. C:\ 라고 설정하면 C:\WinARM 디렉토리에 압축이 풀리게 된다.

    winarm1.png

 

압축이 모두 풀린 후 시스템 등록정보의 환경변수를 설정 해 줘야 한다. 윈도우+PauseBreak 버튼을 누르면 시스템 등록정보 창이 뜬다.

winarm2.png

 

환경변수를 클릭하면 아래으 창이 뜬다. 시스템 변수 란에 Path 를 찾아 편집 버튼을 누르자.

winarm3.png

 

Path 변수값 젤 뒤에 다음과 같이 적자 ;c:\WinARM\bin;c:\WinARM\utils\bin

winarm4.png

 

 

Programmer Note 설치

Programmer Note는 단지 메모장과 같은 역활을 할 뿐이다. 컴파일러와 연동하여 컴파일러를 통해 실행파일을 만들게 된다. Programmer Note는 무료이므로 사람들이 많이 사용하는 것이고, 다른 여러 프로그램이 많다. UltraEditor도 많이 사용 했던 것 같다.

Programmer Note를 클릭하여 설치 한 후 메뉴의 Tools>Options 선택하면 아래의 화면이 나온다.

pn1.png

 

Tools의 Scheme에서 C/C++ 선택하자. 처음 설치이기 때문에 ADD 버튼을 눌러 컴파일러을 연동 해 주자.

pn2.png

 

F9 와 F12 버튼을 단축키로 등록 한 것이다.

pn3.png

 

pn4.png

 

이로써 설치는 모두 끝났다 간단한 사용법을 통해 WinARM을 사용해 보자.

이 글은 스프링노트에서 작성되었습니다.

mod_url 문제를 해결하지 못하고 서버에 개발상태로 바꿔놓아 컴파일하다 보니 무엇을 설치하고 지웠는지 기억조차 없어서 새벽에 다시 안녕리눅스 1.3을 다시 설치하였다. 설치하고 설정하는데 2시간 정도 걸린 거 같다. 다행히 백업 해 놓은 파일들을 제자리로 옮기다 보니 설정하고 복원하는데 금방 끝난 듯.




실험시간 컴퓨터에 xinetd 가 설치 되어 있지않아 타겟보드와 TFTP를 이용 할 수 없었다. 그리하여 인터넷을 용하여 설치 하려고 하였다. 설치된 리눅스가 페도라 4. http://rpmfind.net/linux/RPM/Red_Hat_(FC-4).html 에서 페도라용 xinetd rpm을 다운 받았다.

# wget ftp://download.fedora.redhat.com/pub/fedora/linux/core/4/SRPMS/xinetd-2.3.13-6.src.rpm
# rpm -ivh xinetd-2.3.13-6.src.rpm
# service xinetd restart
xinetd 를 정지함:                                          [  실패  ]
xinetd (을)를 시작합니다:                                  [  실패  ]
# rpm -qa | grep xinetd


설치 완료 되었다는 메세지가 출력되었다. 데몬을 돌릴려고 하니 안된다. 제대로 설치 되었는지 검색을 해 보았다. 왜 그런지 없다. 분명 설치 되었다고 메세지를 보냈는데... 결국 소스까지 받아서 컴파일 해 설치 했는데 설치가 되지 않는다.


다른 방법을 찾아 보았다. yum 을 통한 설치가 있었다.

# yum install xinetd


설치가 된다. 검색을 하니 정상적으로 rpm이 설치 되었다. xinetd가 설치 되었기에 tftp-server를 설치하여 정상적으로 타겟보드와 TFTP 성공.

'Linux' 카테고리의 다른 글

QNAP 공유폴더에 우분투 gitlab-ee 백업하기  (0) 2020.09.08
서버 리눅스를 재설치.  (0) 2008.01.02
xinetd 설치하기  (0) 2007.03.27
부트로더 GRUB에서의 root 암호 변경  (0) 2007.03.13
하드디스크 추가하기  (0) 2007.03.05
minicom 설치  (0) 2006.08.11
실험실 root 계정의 비밀번호가 변경되어 버렸습니다. 실습 도중 학생이 실수로 변경 한 거 같습니다.
부트로더 GRUB을 이용한다면 다음과 같이 하면 됩니다.

처음 부트로더 GRUB이 뜬다면 원하는 커널을 선택하고 'e'를 누릅니다. Edit Mode로 들어 가게 됩니다.
두번 째 Kernel=..... 이라고 뜬 줄을 선택하고 'e'를 눌러 해당 옵션을 수정합니다.
세번 째 어떻게 수정 하느냐. 에디트 화면에서 제일 뒤에 '1' 또는 'single'이라고 입력후 엔터
네번 째 'b' 누르게 되면 커널 부팅을 합니다.  
다섯번 째 부팅을 하게 되면 'sh3.00$'과 같은 기본 쉘이 뜹니다. 'passwd' 암호변경 명령어를 입력하면새로운  root 비밀번호를 입력하라고 합니다. 수정 후 'exit' 명령어를 치게 되면 변경된 암호로 커널이 부팅되게 됩니다.

이렇게 해서 root 비밀번호를 변경 할 수 있습니다.

'Linux' 카테고리의 다른 글

서버 리눅스를 재설치.  (0) 2008.01.02
xinetd 설치하기  (0) 2007.03.27
부트로더 GRUB에서의 root 암호 변경  (0) 2007.03.13
하드디스크 추가하기  (0) 2007.03.05
minicom 설치  (0) 2006.08.11
파일을 찾자 : find  (0) 2006.08.10

+ Recent posts