일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- uart 통신
- vivado
- half adder
- atmega 128a
- Linked List
- KEYPAD
- hc-sr04
- verilog
- test bench
- pwm
- dataflow modeling
- DHT11
- gpio
- Recursion
- D Flip Flop
- prescaling
- stop watch
- Algorithm
- behavioral modeling
- structural modeling
- Pspice
- soc 설계
- ATMEGA128A
- BASYS3
- LED
- java
- FND
- Edge Detector
- i2c 통신
- ring counter
- Today
- Total
목록ATMEGA128A (17)
거북이처럼 천천히

1. I2C 통신을 이용하여 HD44780U LCD 모듈과 통신하기지난 게시글에서는 4bit, 8bit 모드로 HD44780U LCD 모듈과 직접 연결하여 통신을 하였다.4bit, 8bit 모드 와이어를 직접 연결하기 때문에 상대적으로 I2C 통신과 속도 측면에서 비교하였을 때, 빠르다는 장점을 가지지만, 와이어를 직접 연결하는 만큼 핀에 대한 자원 낭비가 심하다는 단점을 갖고 있다.그에 반면에 I2C 통신은 SCL, SDA 와이어만으로 LCD 모듈과 통신이 가능하기 때문에 속도가 상대적으로 느리지만, 핀에 대한 자원을 효율적으로 사용할 수 있다는 장점을 갖는다.이번에는 HD44780U LCD 모듈을 8574칩을 매개체로 I2C 통신을 구현해보도록 하겠다.I2C 통신에 대한 자세한 내용이 궁금하다면 아래..

1. 4bit mode를 이용하여 HD44780U LCD 모듈과 통신하기지난 게시글에서는 8bit mode를 이용하여 HD44780U LCD 모듈과 통신을 하였다.HD44780U LCD 디스플레이 모듈은 8bit mode 외에도 4bit mode를 지원한다.4bit mode는 8bt mode와 달리 4개의 데이터 버스를 이용하여 MCU와 LCD 디스플레이 모듈간에 데이터를 주고 받는다. 따라서 8bit 모드과 비교하였을 때, 4개의 와이어를 통해 데이터를 주고 받을 수 있어 자원을 효율적으로 줄일 수 있지만, 데이터 송수신 시간이 8bit 모드 대비 상대적으로 많이 소요된다.4bit 모드를 통해 LCD 디스플레이 모듈과 통신 이론은 아래 게시글을 참고하길 바란다.Verilog RTL 설계(8월 22일 -..

1. 8bit mode를 통해 LCD 디스플레이 모듈인 HD44780U와 직접 연결하여 통신하기이전 게시글에서는 I2C 통신을 이용하여 HD44780U, LCD 디스플레이 모듈과 통신하였다.이번에는 HD44780U 모듈과 직접 연결하여 8bit mode로 통신해보도록 하겠다.HD44780U, LCD 디스플레이 모듈에 대해서 궁금하다면 아래 게시글을 참고하길 바란다.Verilog RTL 설계(8월 22일 - 1, I2C 통신을 통한 LCD 컨트롤 - (1)) (tistory.com) Verilog RTL 설계(8월 22일 - 1, I2C 통신을 통한 LCD 컨트롤 - (1))1. I2C Master 모듈을 통한 LCD 디스플레이 모듈 컨트롤이번에는 I2C 통신을 통해 LCD 디스플레이 모듈과 Basys3 ..
Verilog을 공부하면서 머리 속에서 잊어버린 AVR에 대해서 다시 공부하기 위해 LED와 버튼을 이용한 게임을 만들었다. 게임은 간단하다. 두 명의 플레이어가 두 개의 버튼을 가지고, 누가 먼저 4번을 누르는지를 대결하는 게임이다. 각각 Player1, Player2이 하나의 버튼을 할당 받고, 대결한다. 1. 환경PORTD 0번째, 1번째에 Button 연결Button 0 : Player1, Button 1 : Player2PORTF에 LED 연결Button은 Pull-up 저항과 함께 Pull-up 형태 연결단, Interrupt 사용없이 PIN Register를 사용하여 버튼이 눌렀는지 여부를 확인 2. 동작Player1은 PORTD0, Player1은 PORTD1의 버튼을 사용한다.Pla..
그 동안 Verilog를 공부하면서 AVR 에 대한 지식이 머리속에서 점차 사라지는 것 같았다.따라서 LED를 가지고 이것저것하면서 AVR 에 관한 지식 및 감(?)을 쌓기 위해 "LED을 통한 뱀(?)을 출력" 하는 것을 해보았다. 1. 환경PORT F에 LED(KR-1008SR)을 연결 2. 동작LED에 일렬로 LED를 키는데, 이는 유한한 길이를 갖는다. 따라서 유한한 길이를 갖고, 일직선 형태를 갖기 때문에 뱀(?)이라고 하겠다.뱀의 길이는 define 키워드를 사용하여 상수로 지정하였고, 원하는 뱀의 길이로 조정 가능뱀의 머리가 LED에 나타났다가 뱀의 꼬리가 LED에서 사라지면 그제서야 다시 뱀이 LED에 나타난다.( 이해가 되지 않는다면 구현 영상을 보는 것을 추천 ) 3. 구현 영상 ..

서론 이번에는 CTC (Clear timer compare match) Mode, Normal Mode, Fast PWM (Pulse Width Modulation) Mode 에 이어 Phase Correct Fast PWM mode에 대해서 공부하겠다. 특히 기존에 다루었던 Fast PWM Mode와 비교하며, 공부하겠다. 본론💡 1. Dual Slope와 Single Slope의 차이 Single Slope는 TCNT Register 값이 MAX값에 도달하면 0으로 초기화된다.Dual Slope는 TCNT Register 값이 Max값에 도달하면 바로 0으로 초기화되지 않고, MAX값에서부터 시작해서 1씩 줄어가며, Counter의 bottom값이 0으로 카운트한다.그래서 Dual Slope에..

서론 이전 게시글에서 8bit Timer / Counter CTC Mode를 활용하여 1kHz 주파수를 갖으며, Output Compare Match Interrupt가 발생하면 Toggle이 발생하도록 하는 출력신호를 만들었다. 이번에는 8bit Timer / Counter Normal Mode를 활용하여 새로운 출력 신호를 만들 것이며, 이를 통해 Normal Mode에 대해서 알아보도록 하겠다. 본론 (Normal Mode에 대한 이론) 💡 Q) Normal Mode란 무엇인가? 이전 게시글에서 정리한 CTC Mode (Clear Time on Compare Match Mode)는 OCRn(Output Compare Register n)을 설정함으로서 Counter의 Count 값(=TCNT..

서론 FND (Flexible Numeric Display) 은 아래의 그림와 같이 여러 개의 LED를 이용하여 10진수 숫자 또는 16진수용 문자를 표시하는 소자이다. 이를 7-segement , Flexible Numeric Dispaly 이라고 한다. 이번 구현에 사용할 FND는 5161AS의 Data sheet를 보게 되면 다음과 같이 구성되어 있으며, 특히 아래 그림과 같이 Common cathode 로 구성되어 있다. 이는 3, 8핀의 GND을 모든 다이오드들이 공유하기 때문에 각각 다이오드가 연결된 핀에 전압을 인가하게 되면 전위차에 의해 전류는 다이오드를 통해 GND로 흐르게 되며, 이를 통해 다이오드에 불이 들어오게 된다. 본론 이번에는 다음과 같은 구현을 함으로서 FND..