글

라벨이 armbian인 게시물 표시

openssl arm cross compile and example code

이미지
본 글은 openssl linux arm용 빌드 방법과 사용 예제를 싣고 있다. openssl 코드는 아래 링크에서 다운 받을 수 있다. https://www.openssl.org/source/ arm cross compile 1. 다운 받은 파일의 압축을 푼다. 2. 압축 해제한 폴더에서 아래와 같이 실행하여 빌드 환경을 설정한다. ./Configure linux-elf --cross-compile-prefix=/home/my_account/armbian_toolchain/gcc-linaro-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- shared no-threads no-zlib no-asm --prefix=/home/my_account/openssl/openssl-arm --openssldir=/home/my_account/openssl/openssl-arm armbian toolchain을 사용한 예이다. 사용하는 toolchain의 위치 및 파일 이름 prefix는 --cross-compile-prefix 파라메터를 수정하면 된다. 빌드 된 라이브러리는 /home/my_account/openssl/openssl-arm위치에 복사하도록 설정하였다. 3. make install을 통해 openssl 라이브러리를 빌드하고, 설정된 위치에 파일을 설치한다. example code 아래 예제 코드는 https 서버와 통신하기 위해 만들어진 코드 중 openssl api를 사용한 부분을 발췌한 것이다. 1. openssl 라이브러리 초기화 #include <openssl/bio.h> #include <openssl/ssl.h> #include <openssl...

OrangePi Zero Armbian i2c spi uart 드라이버 설정

이미지
OrangePi Zero Armbian에서 i2c, spi, uart등의 설정은 디바이스의 /boot/armbianEnv.txt 파일을 수정하고 새로 부팅하면 쉽게 사용할수있다. 1. spi  overlays에 spi-spidev추가 후, param_spidev_spi_bus=1 (사용하고자 하는 spi 채널)을 추가 하고 다시 부팅하면 /dev에 spidev1.0이 생성된다.  2. i2c  overlays에 i2c0를 추가 하고 다시 부팅하면 된다. 뒤 숫자 0은 채널 번호다.  3. uart overlays에 uart1을 추가 하고 다시 부팅하면 된다. 뒤 숫자 1은 채널 번호다.    [관련 포스트] linux user mode spi dev 설정 및 통신 example c code linux user mode i2c dev 설정 및 온도 센서 lm75b i2c 통신 sample code

OrangePi Zero hang up 문제와 우분투 자동 업데이트 막기

이미지
실제 보드 설계 전에 데모와 개발된 모듈이 잘 동작하는지 테스트 하기위해 OrangePi Zero 보드에 센서와 LCD등을 올리고 테스트 세트를 만든 적이 있다. 이때 이상하게도 에이징 테스트 중에 OrangePi Zero보드가 멈추는 문제가 발생했다. 로그에는 기록조차 남지도 않았다. 원인을 찾기 위해 몇 일 디버깅했던 적이 있다. Hang-up의 원인은 OrangePi Zero에 설치한 armbian 우분투가 자동 업데이트를 하면서 세트 자체가 멈춰 버리는 것이었다. 자동 업데이트를 막으면 시스템 Hang-up은 발생하지 않았다.  아래는 PC용 우분투에서 자동 업데이트를 막는 방법이다. /etc/apt/apt.conf.d/10periodic 파일을 아래와 같이 수정하면 된다. 아래는 Armbian 우분투에서 자동 업데이트를 막는 방법이다. /etc/apt/apt.conf.d/02periodic 파일을 수정하면 된다. <수정전> <수정후>