LED 4

STM32 : LED

STM32 새로운 프로젝트를 생성할 때에는 아래와 같은 MCU를 선택한다.더블클릭한 후 프로젝트 이름을 설정하고 Finish를 누른다. 왼쪽 배너에서 RCC를 선택 후 HSE를 아래와 같이 설정한다. 그다음, 배너에서 SYS를 선택한 후 Serial Wire를 선택한다. 설정을 하고나면 아래와 같이 핀설정이 된 것을 확인할 수 있다.상단의 배너에서 Clock Configuration을 선택한 후, 아래와 같이 설정한다.   상단 배너에서 Project Manager를 선택한 후, Code Generator에서 첫번째에 체크를 한 후 진행한다. 저장(Cntr + S)를 누르면 아래와 같이 문구가 뜨며 Yes를 선택한다.  새 창에서 File 선택 후 아래와 같이 Configuration를 선택한다. Con..

Language/AVR 2024.09.12

Vivado : RGB LED, DC motor

RGB LED RGB를 나타내는 LED를 제어할 예정이다. LED를 제어할 탑모듈의 코드는 아래와 같다. pwm_100 step 컨트롤러는 이전글을 참고하면 된다.  Vivado : PWM 제어PWM LED의 밝기는 Duty rate에 따라 달라진다. LED 뿐만 아닌 모터의 경우에는 속도도 달라진다. PWM을 제어해 보기 위해 아래와 같은 코드를 구현해 보았다. 우선 Duty를 100단계로 설정하기 위하여 dutjangdong.tistory.com LED를 제어할 pwm의 컨트롤러 코드는 아래의 내용과 같다. 사용자가 임의로 주파수를 조절할 수 있도록 parameter를 먼저 선언하였다.module pwm_Nstep_freq#( parameter sys_clk_freq = 100_000_000, ..

Language/Verilog 2024.08.01

리눅스 BSP : 스위치 LED 제어

이번에는 스위치를 활용하여 3개의 LED를 순차적으로 점등시키는 동작을 구현해보려고 한다. 코드를 동작 시키면 LED는 순차적으로 점등된다. 하지만, 스위치를 작동시키면 LED는 방향을 바꾸어 점등을 진행한다. 스위치 관련 동작은 코드상에 맨 밑에 if문에서 동작되며, 스위치가 눌릴 때 마다 mode는 Toggle되어 변경된다. 구현된 코드는 아래와 같다.#include #include int ps[40]; // ps(pin state) : default 0, pin number : 40void Toggle(int pin){ ps[pin] = !ps[pin]; digitalWrite(pin,ps[pin]);}int main(){ wiringPiSetup(); // Pin number use case (w..

Language/Linux 2024.06.11

리눅스 BSP : LED 점등

이번에는 라즈베리파이를 활용하여 3개의 LED를 제어 해보려고 한다. 라즈베리파이의 핀을 제어하기 위해서는 핀의 위치와 역할을 제대로 알아야 한다.아래와 같이 터미널에 'gpio readall'을 명령하면 핀에 대한 정보를 얻을 수 있다.  3개의 LED를 제어하기 위해서 아래와 같이 LED를 제어하는 코드를 구성해보았다. #include #include main(){ wiringPiSetup(); // Pin number use case (wPi) pinMode(8, OUTPUT); // 8,9,7 : OUT 2 : IN pinMode(9, OUTPUT); pinMode(7, OUTPUT); pinMode(2, INPUT); for(int i = 0; i GPIO 핀을 제어하기 위해 'wiring..

Language/Linux 2024.06.11
728x90