▼▼ 최신글! ▼▼

more

[MSP430] 튜토리얼 3 - GPIO 제어(1)

목차 1. [MSP430] 튜토리얼 1 - Code Composer Studio(CCS) 설치 2. [MSP430] 튜토리얼 2 - 프로젝트 생성 3. [MSP430] 튜토리얼 3 - GPIO 제어(1) (현재글) GPIO란 General Purpose Input Output의 약자로 MCU의 가장 흔한...? 기본이 되는 기능이다. MSP430에서는 어떻게 I/O를 제어하는지 알아보자. 먼저 MSP430FR5969 런치패드에 연결되어 있는 LED부터 살펴보자. 회로도를 보면 초록색 LED는 P1.0에 연결되어 있고, 빨간색 LED는 P4.6에 연결되어 있음을 알 수 있다. I/O 기능과 관련된 레지스터는 여러가지가 있는데 일단 LED를 켜고 끄는데 필요한 레지스터 먼저 살펴보자. 참고로 FRAM으로 만..

MSP430 2021.03.10 2

[MSP430] 튜토리얼 2 - 프로젝트 생성

목차 1. [MSP430] 튜토리얼 1 - Code Composer Studio(CCS) 설치 2. [MSP430] 튜토리얼 2 - 프로젝트 생성 (현재글) 3. [MSP430] 튜토리얼 3 - GPIO 제어(1) 이전 글에 이어 이번 글에서는 프로젝트를 생성하고 빌드 및 디버깅하는 법에 대해 설명한다. 먼저 CCS를 실행한 후 좌측 상단 File → New → CCS Project 를 클릭한다. 혹은 Getting Started 화면에 있는 New Project를 클릭해도 된다. New Project를 클릭하면 새 창이 하나 뜨는데, MCU 선택 및 프로젝트 이름 등을 설정한다. 난 MSP430FR5969 LaunchPad를 사용중이므로 Tartget에 MSP430FR5969를 선택해주었다. 나머지는 ..

MSP430 2021.03.01 0

[MSP430] 튜토리얼 1 - Code Composer Studio(CCS) 설치

목차 1. [MSP430] 튜토리얼 1 - Code Composer Studio(CCS) 설치 (현재글) 2. [MSP430] 튜토리얼 2 - 프로젝트 생성 (현재글) 3. [MSP430] 튜토리얼 3 - GPIO 제어(1) 오랜만의 게시글... 어쩌다 보니 MSP430 MCU를 사용할 일이 생겨서 개발환경 구축 및 사용방법에 대해 정리하고자 한다. 먼저 Texas Instuments 홈페이지로 이동하여 CCS를 검색한 후 다운로드부터 한다. www.ti.com/tool/CCSTUDIO ← 이 링크를 클릭하면 바로 다운로드 페이지로 이동가능. 스크롤을 조금 아래로 내리면 아래 사진과 같은 모습을 확인할 수 있다. Download options를 눌러 본인의 OS환경에 맞는걸 다운로드한다. 다운로드 후 설..

MSP430 2021.02.23 2

[Cortex-M4] SW4STM32 STM32CubeMX 프로젝트 생성

프로젝트를 설정해보자. 이전글(클릭)에서는 개발환경을 구축했었다. 이제 STM32CubeMX를 이용하여 프로젝트를 생성해보자. 일단 나는 STM32F4 discovery보드를 사용하였다. 칩은 STM32F407이다. 먼저 SW4STM32를 실행하고 STM32CubeMX를 켠다. 다음으로 New Project를 눌러 진행한다. New Project를 클릭하면 아래와 같이 MCU를 선택하는 창이 뜨는데 본인이 사용하는 MCU를 고르고 하단의 OK를 누른다. OK를 누르면 아래와 같은 화면이 나온다. 이제 클럭 설정을 해주어야 하기때문에 왼쪽 목록중에 RCC를 선택한다. 나는 16MHz짜리 외부 크리스탈이 부착되어있기 때문에 High Speed Clock(HSE)를 Crystal/Ceramic ...으로 바꿔..

STM32 2017.04.02 0

♨ 인기글! ♨

[AVR] 다중 ADC 사용시 주의점!

드디어 알아냈다. 왜인지는 모르겠는데 ADC 여러개 사용할 때 ADMUX랑 ADCSRA 레지스터 설정하고 조금의 딜레이를 주어야한다!!! 안그러면 채널이 바뀌기 전에 변환해버려서 데이터 밀림현상이 나타난다. 예를 들어서 이라는 소스에서는 ADC값이 저장되는 배열에서 데이터의 순서가 한칸씩 밀리게 된다. 8번째 ADC값이 배열의 첫 번째로 들어가버리고 한칸씩 당겨져서 저장이 되었다. 실제로 텀프로젝트 때문에 ADC사용할 일이 있어서 값을 확인했더니 x값, mic값, PSD값 순서대로 출력되어야 하는데 아래 사진처럼 PSD값, x값, mic값 순서대로 출력되었다ㅜㅜ 이러한 문제를 해결하기 위해 다음과 같이 GET_ADC함수안에서 변환완료 플래그를 확인하기 전에 약 100us정도의 딜레이를 넣어주면 된다. 이..

AVR 2017.04.02 2

[라즈베리파이] sd카드에 이미지올리기

슬슬 라즈베리파이를 시작해 볼까나... 일단 라즈베리파이를 시작하려면 다음의 준비물이 있어야 한다. sd카드, microusb전원, 모니터, AV or HDMI 케이블, 키보드, 마우스 제일 먼저 할 일은 sd카드에 img파일을 넣는 것이다. 라즈베리파이 홈페이지에는 윈도우에서 구워주는 파일을 제공해 주지만 나는 우분투를 이용하겠다. 리눅스에 dd명령어라는 것을 이용하는 것이다. 가장먼저 라즈베리홈페이지에 접속하여 원하는 이미지파일을 다운받아서 아무 경로에 넣어주자. 나는 raspberry라는 폴더를 만들어서 다운받은 이미지파일을 넣어두었다. 일단 터미널을 열고 sd카드를 인식시켜준다. df명령어를 사용하면 sd카드가 /dev/sdb1로 잡혀있다.(사람마다 다를수도) sd카드를 마운트해제한다. 터미널에 ..

Raspberry Pi 2017.04.02 3

[MSP430] 튜토리얼 1 - Code Composer Studio(CCS) 설치

목차 1. [MSP430] 튜토리얼 1 - Code Composer Studio(CCS) 설치 (현재글) 2. [MSP430] 튜토리얼 2 - 프로젝트 생성 (현재글) 3. [MSP430] 튜토리얼 3 - GPIO 제어(1) 오랜만의 게시글... 어쩌다 보니 MSP430 MCU를 사용할 일이 생겨서 개발환경 구축 및 사용방법에 대해 정리하고자 한다. 먼저 Texas Instuments 홈페이지로 이동하여 CCS를 검색한 후 다운로드부터 한다. www.ti.com/tool/CCSTUDIO ← 이 링크를 클릭하면 바로 다운로드 페이지로 이동가능. 스크롤을 조금 아래로 내리면 아래 사진과 같은 모습을 확인할 수 있다. Download options를 눌러 본인의 OS환경에 맞는걸 다운로드한다. 다운로드 후 설..

MSP430 2021.02.23 2

[Cortex-M3] 타이머(TIMER) 사용하기

STM32F100RB 칩 안에는 AVR처럼 여러개의 타이머가 있다. 각 타이머는 16bit로 동작하는것 같다. 먼저 타이머의 기능을 살펴보면 여러가지 모드가 있는데 가장 기본적인 Counter Mode(Upcounting & Downcounting)가 있고 아래의 기능도 제공한다. - Input Capture - Output Compare - PWM generation - One-pulse mode output 여기서는 가장 기본적인 Counter Mode와 PWM generation을 다루어 보겠다. 먼저 Counter Mode - Upcounting의 소스를 보면.. #include "stm32f10x.h" volatile unsigned int Timer2_Counter=0; void init_po..

STM32 2017.04.02 17

[라즈베리파이] wiringPi를 이용한 시리얼통신

라즈베리파이에서 시리얼통신(RS232)을 해보자. wiringPi에서 시리얼통신 라이브러리도 만들어놨다. 약간의 설정만 하고 사용하기만 하면 된다. 먼저 라즈베리파이에서 다음과 같이 설정해준다. 먼저 /boot/cmdline.txt파일을 백업한다. sudo cp cmdline.txt cmdline_backup.txt 를 입력해서 원본을 복사한다. 원본을 복사해놨으니 cmdline.txt 파일을 수정해준다. vi나 nano를 사용해서 수정해주면 된다. ttyAMA0가 들어간 문장들을 삭제해준다. 아래처럼 만들고 저장한다. 이제 /etc 경로로 이동해서 inittab 파일을 수정한다. 맨 아래줄에 T0:23raspawn:/sbin/getty -L ttyAMA0 115200 vt100 이라고 적혀있는놈을 주석..

Raspberry Pi 2017.04.02 8