일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- KEYPAD
- Linked List
- dataflow modeling
- uart 통신
- Recursion
- D Flip Flop
- half adder
- verilog
- DHT11
- prescaling
- Pspice
- BASYS3
- ATMEGA128A
- Algorithm
- hc-sr04
- soc 설계
- test bench
- LED
- Edge Detector
- stop watch
- ring counter
- i2c 통신
- java
- behavioral modeling
- gpio
- pwm
- structural modeling
- atmega 128a
- FND
- vivado
- Today
- Total
목록분류 전체보기 (314)
거북이처럼 천천히

1. Duty ratio를 128단계로 나눈 10kHz PWM 설계LED의 밝기를 128단계로 나누어 컨트롤하기 위해 Duty ratio를 128단계로 나누어 컨트롤 할 수 있는 PWM 설계한다.Duty ratio를 128단계 나누어 컨트롤하기 위해서 128 분주화, 78.125 분주화, 총 2번의 분주를 할 것이다.Duty ratio를 128단계로 나눈 10kHz PWM에 대한 자세한 설명은 아래 게시글 참고하길 바란다.https://jbhdeve.tistory.com/284 Verilog RTL 설계(7월 31일 - 3, PWM - 3)1. LED의 밝기를 128단계로 나누어 컨트롤하기.이번에는 LED의 밝기를 128단계로 나누어 컨트롤 할 수 있도록 모듈 설계해보도록 하겠다.이를 통해 "왜 2단계..
1. DHT11 온도, 습도 센서이번 구현은 DHT11로부터 온도, 습도 데이터를 받아 Basys3의 FND로 출력하도록 구현하겠다.'DHT11 - 2' 게시글과의 차이점은 "DHT11과 Basys3 간 통신 과정에서 문제 발생했을 경우에 대한 예외 처리 했는지 여부" 차이를 갖는다. DHT11 구현 소스 코드에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/296 Verilog RTL 설계(7월 23일 - 3, DHT11 구현 (2) )1. Top module of DHT11 이전 게시글에서 구현한 dht11_cntr module를 실행시키기 위해 top module를 만들어서 실행해보도록 하겠다.dht11_cntr module 에 대한 게시글은 아..

1. Duty ratio를 100단계로 나눈 10kHz PWM 설계Clock Pulse (Period = 10ns)를 100분주화를 2번하여 10kHz PWM을 설계하도록 하겠다.해당 PWM은 Duty ratio를 총 100단계로 나누어 원하는 duty ratio를 갖는 PWM을 만들 수 있다.소스 코드 및 PWM에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/283 Verilog RTL 설계(7월 31일 - 2, PWM - 2)1. 다이오드가 연속적으로 켜져 있는 상태로 보이기 위해서는 10kHz Pulse wave를 줘야 한다.다이오드가 사람 눈으로 보았을 때, 연속적으로 켜져 있는 상태로 보여주기 위해서는 10kHz 주파수를 갖는jbhdeve...

1. 예외 처리의 필요성위 그림은 MCU와 DHT11 간에 통신 과정을 설명하고 있다.만약 MCU와 DHT11 간에 신호를 주고받는 과정에서 신호를 제대로 받지 못할 경우, 부정확한 신호 및 데이터를 받거나 잘못된 온도, 습도 데이터를 받을 수 있다.따라서 각 상태에 대해서 수신측에서 데이터를 못 받는 경우에 대한 예외 처리가 필요하다.이번에는 수신측에서 데이터를 받지 못한 경우에 대한 예외 처리를 추가적으로 설계하도록 하겠으며, 전체 소스 코드에 대한 설명보다는 수정된 부분에 대해서 집중적으로 코드와 함께 설명하도록 하겠다. 2. 3단계) S_HIGH_20US, DHT11측에서 응답 신호가 없는 경우// 3단계 : S_HIGH_20US// 100ms 동안 기다려 보았는데, Negative edge가..

1. Top module of DHT11 이전 게시글에서 구현한 dht11_cntr module를 실행시키기 위해 top module를 만들어서 실행해보도록 하겠다.dht11_cntr module 에 대한 게시글은 아래 링크를 참고하길 바란다.https://jbhdeve.tistory.com/295 Verilog RTL 설계(7월 23일 - 2, DHT11 구현 (1) )1. State diagram of dht11 Sensor ModuleMCU와 DHT 11 모듈 간에 통신 과정을 State diagram으로 그린다면 다음과 같이 표현할 수 있다. 2. DHT11로부터 온도, 습도 데이터 받아 Basys3의 FND로 출력DHT11로부터 데jbhdeve.tistory.com // Top mod..

1. State diagram of dht11 Sensor ModuleMCU와 DHT 11 모듈 간에 통신 과정을 State diagram으로 그린다면 다음과 같이 표현할 수 있다. 2. DHT11로부터 온도, 습도 데이터 받아 Basys3의 FND로 출력DHT11로부터 데이터를 받는 과정 및 통신 과정에 대해서 궁금하다면 아래 게시글을 참고하길 바란다.Verilog RTL 설계(7월 23일 - 1, DHT 기초) (tistory.com) Verilog RTL 설계(7월 23일 - 1, DHT 기초)1. DHT11 (Digital Humidity Temperature 11)이번에는 온도와 습도를 측정하는 디지털 센서, DHT11을 이용하여 온도와 습도 센서를 측정해보도록 하겠다.이를 통해 FSM(F..
1. 빠르게 2진수에서 10진수로 변환할 수 있는 방법은 없는가?2진수로 표현된 숫자들을 16진수로 변환하는 과정은 굉장히 쉽다.아래 표처럼 2진수를 4자리씩 끊어서 16진수로 변환할 수 있다.2진수16진수000000001100102001130100401015011060111710008100191010A1011B1100C1101D1110E1111F 하지만, 2진수로 표현된 숫자들을 10진수로 변환하는 과정은 위와 같이 쉽지 않다.10진수는 0 ~ 9까지만 표현이 가능하며, 1010(A) ~ 1111(F) 는 한 자리 숫자로 표현할 수 없기 때문에 2진수에서 16진수로 변환하는 것 처럼 쉽게 4자리씩 끊어서 읽을 수 없다.★ ★ ★ ★ ★ ★ ★ ★ ★ Q) 그럼, 2진수에서 4자리씩 끊어 10진수를 16..
1. 4X4 Matrix KeyPad (FSM 형식)이번에는 FSM (= Finite State Machine) 형식으로 KeyPad를 구현해보도록 하겠다.아래와 같이 5가지 상태로 정의하였다.- S_SCAN0 ~ S_SCAN3 : 0번째 행부터 3번째 행까지를 10msec 주기로 순회하면서 버튼이 눌렀는지 여부 확인하는 상태 - S_KEY_PROCESS : 버튼이 눌렀을 경우, 어떤 버튼이 눌렀는지를 확인하고, 이를 출력으로 내보내는 상태소스 코드에 대한 자세한 설명은 아래 게시글을 참고하길 바란다.https://jbhdeve.tistory.com/275 Verilog RTL 설계(7월 22일 - 2, FSM 형식으로 Keypa..