7segment 3

Vivado : Basys3 7segment

이번에는 Basys3을 사용하여 7-segment를 제어하고자 한다. 7-segment의 구조는 아래와 같다.  4개의 스위치를 활용하여 4bit 스위치 역할을 수행하며, 세그먼트를 제어할 예정이다. 따라서 코드의 초반에는 '[3:0] hex_value'와 같이 선언하였다. 세그먼트 제어는 직관적으로 변경을 할 것이며, 따라서 비트를 하나하나 선언하여 변경할 것이다.세그먼트를 제어할 때에는 1이 주어지면 LED는 점등을 하며, 0이 주어질 시 꺼지는 동작을 수행한다.  구현된 코드는 아래와 같다.module decoder_7seg( input [3:0] hex_value, output reg [7:0] seg_7); always @(hex_value)begin case..

Language/Verilog 2024.07.16

ATmega 128 : 4-Digit FND 동작 구현

이번에는 7 segment가 4개로 구성된 4-Digit FND 동작을 구현해보았다. 부품은 3461AS-1을 사용하였고, 부품에 대한 내용은 아래와 같다.  위 그림을 보아 알 수 있듯이 4-Digit FND는 Common Cathode 방식으로 동작되며 12, 9, 8, 6pin을 Ground에 묶어서 동작을 구현한다. 이전과는 달리, 이번에는 PORT G를 사용하였다. PORT G에는 12, 9, 8, 6번 핀이 연결되어 있으며, 방향설정을 주 목적으로 다룬다. void FND_Display(uint16_t data) // 4자리니까 16비트{ static uint8_t position = 0; // Digit position 변수 설정 uint8_t fndData[]= { 0x3F, 0x06,..

Language/AVR 2024.05.30

ATmega 128 : FND 동작 구현

이번에는 FND (7 Segment)의 동작을 구현해보았다. FND란. Flexible Numeric Display의 약자로 LED의 숫자를 나타내는 부품을 의미한다. 일반적으로 Common Anode와 Common Cathode 방식으로 FND는 구현되는데, 이번에는 Common Cathode 방식으로 다룰 예정이다. Common Cathode는 공통적인 음극(-)를 갖는 구조를 의미한다. 이와 반대인 Common Anode 방식은 공통 양극(+)이라고 생각하면 된다. 이번에 다루게 될 7 segment 소자는 5161AS 소자로, Circuit Diagram은 아래와 같다. 7 segment의 핀번호는 아래와 같다.  DP 제외 A~G까지의 구현을 위해 각각 알맞는 번호의 Pin에 연결을 한 후, 3..

Language/AVR 2024.05.29
728x90