> 뉴스 > 내용

연락처

추가 : 블록 5, Fuqiang 기술 공원, Zhugushi 도로, Wulian, Longgang 518116

Mob : + 86-13510459036

전자 메일 : info@panadisplay.com

LCD 터치 스크린 컨트롤러
Dec 13, 2017

LCD 터치 스크린 컨트롤러는 데이터 인터페이스 모듈, 메모리 모듈 (FSMC_Ctrl (SDRAM_Ctrl), 액정 디스플레이 모듈 (TFT_Ctrl) 및 터치 컨트롤 모듈 (TOUCH_Ctrl))을 포함하며, 블록 다이어그램은 그림 2에 나와 있습니다.

2.png

LCD 터치 스크린 컨트롤러 작동 프로세스 : FSMC 버스를 통해 FSMC 버스를 통해 마이크로 컨트롤러 (STM32F407), 데이터를 수신하는 FSMC_Ctrl 모듈, 타이밍 제어 모듈 SDRAM_Ctrl 쓰기 메모리 SDRAM, SDRAM에서 SDRAM으로 데이터 읽기를위한 타이밍 제어 실시간 디스플레이. TOUCH_Ctrl 모듈은 터치 컨트롤 칩 ADS7843을 구동하고 수집 된 좌표를 FSMC_Ctrl 모듈로 전송하여 ARM이 주기적으로 읽을 때까지 기다립니다.


1. 데이터 상호 작용 모듈

데이터 교환 모듈은 양방향 데이터 전송, CS 칩 선택 신호 및 쓰기 신호 WR, 읽기 동작 신호 RD, 주소 버스 AB 25 : 0 (다중화 모드), 데이터 버스 DB 15 : 0 및 어드레스 / 데이터 다중화 제어 신호 (NADV) (멀티플렉싱 된 어드레스 라인을 사용)를 수신한다. 그 (것)들의 사이에서, 칩 선택 신호 CS의 WR 신호 RD 신호의 읽기 및 쓰기 동작은 일반적으로 저전력에서 효과적입니다. ARM은 저전력을 위해 동작 신호 WR을 쓰면 NADV 신호의 상승 에지에서 래치 어드레스와 DB 버스에 액정 디스플레이 주소와 데이터를 보내고 WR 신호의 상승 에지에서 해당 데이터를 보낸다. SDRAM 캐시 이후의 LCD. 판독 동작 신호 (RD)가 로우 일 때, FPGA는 터치 좌표를 DB 버스로 보낸다. ARM은 매핑 주소 공간 레지스터의 좌표 값에 따라 터치 동작을 실현하고 FSMC 버스 작동 시퀀스 다이어그램을 그림 3에 표시합니다.

3.png


2. 액정 표시 모듈

액정 화면의 표시 원리에 따라,이 모듈에 의해 제어되는 신호는 주로 픽셀 클록 신호, 라인 / 필드 동기 신호 및 인 에이블 신호를 포함한다. LCD 디스플레이의 타이밍 요건에 따라, FPGA로 LCD 제어 타이밍을 설계하고, 라인 신호, 프레임 신호 및 숨은 신호의 제어가 실현됩니다.

이 중에서, 프레임 스캔 타임 시퀀스는 기준 클록으로서 HSYNC, 라인 주사 신호로서 HSYNC, 및 VSYNC는 프레임 동기 신호이며, 로우 레벨이 유효하다. 각 프레임이 스캔되고, VSYNC 신호의 프론트 엔드의 유효 영역은 프레임 블랭킹 숄더 (VBPD + 1)이며, 프론트 숄더 (VFPD + 1)를 블랭킹하는 리어 프레임 블랭킹이 있으며, 레벨 (VSPW + 1), 상기 프레임 동기 펄스 폭 신호. 그 중 VBPD, VFPD 및 VSPW는 기준 클록 HSYNC를 기반으로합니다. 마찬가지로 주사 신호의 모든 행에 대해 숨겨진 백 숄더 (HBPD + 1), 숨겨진 프론트 숄더 (HFPD + 1), 행 동기 신호 펄스 폭 (HSPW + 1) 및 픽셀 클록 VCLK가 단위. 해상도가 다른 LCD 화면의 경우 표시 타이밍이 앞 어깨, 숨겨진 어깨 및 신호 펄스 폭과 다릅니다. 디스플레이 드라이버는 이러한 매개 변수를 변경해야만 다른 LCD 화면을 전환 할 수 있습니다.

하기 위해서는 다른 해상도의 다양한 액정 화면 디스플레이 드라이버를 만들기 위해, FPGA를 Verilog 하드웨어 언어 사전 VCLK, VBPD, VFPD, VSPW, HBPD, HFPD, HSPW 매개 변수의 다른 LCD 화면, FSMC 버스 주소 라인 2를 사용하여 LCD 화면의 제어 매개 변수로. 응용 프로그램에서는 매개 변수의 구성을 실현하기 위해 제어 비트 맵 레지스터의 주소 만 변경하면됩니다. 이는 다른 LCD 화면에 적합하며 컨트롤러의 이식성을 향상시킵니다. 액정 디스플레이의 시간 순서도가 그림 4에 나와 있습니다.

4.png

3. 메모리 모듈

메모리 모듈은 주로 입력 데이터 저장 및 표시 데이터 읽기를 완료하기 위해 데이터 전처리 모듈, SDRAM 컨트롤러 및 캐시 모듈을 포함합니다. 그림 5에 표시된 메모리 모듈 구조.

5.png

4. 데이터 전처리 모듈

데이터 전처리 모듈은 주로 데이터의 통합 및 캐싱을 포함합니다. FSMC 버스의 데이터 전송 속도는 SDRAM의 동작 주파수보다 훨씬 낮기 때문에 이들 간의 속도 불일치를 해결하기 위해 데이터가 SDRAM에 쓰여지기 전에 데이터가 캐시되어 데이터 손실을 방지합니다.

표시 데이터와 어드레스의 대응을 확실하게하기 위해서, 표시 에러를 방지하기 위해서, 스 플라이 싱에 의해 표시되는 어드레스 및 데이터 정보와, 버퍼 FIFO (First In First Out, FIFO)에 데이터를 스 플라이 싱 한 후, SDRAM 용.


5. 캐시 모듈

캐시 모듈은 2 개의 단일 랜덤 액세스 메모리 (랜덤 액세스 메모리, RAM)를 포함하는데, 그 주요 기능은 그림 6에서와 같이 탁구 작동 원리 인 두 개의 RAM으로 연속 출력 핑퐁 작업 데이터를 얻는 것입니다.

6.png

출력 데이터의 연속적인 디스플레이를 실현하기 위해, 2048, 폭 16 RAM, 입력 데이터 스트림 선택 유닛을 통한 2 개의 내부 SDRAM 백엔드 FPGA 호출 및 "출력 데이터 스트림 선택 유닛"의 깊이에서 규칙적으로 전환 할 수 있습니다 , RAM 캐쉬 이후에 데이터 플로우 처리 유닛 "으로 연속적으로 전송 된 데이터 스트림"을 처리한다.

표시 프로세스에서 각 프레임의 데이터는 SDRAM에 미리 데이터를 읽는 동안 동기 신호가 도착하기 전에 첫 번째부터 두 번째 라인 신호, RAM1 및 RAM2에 미리 데이터를 기록하므로 첫 번째 인 에이블 신호 와서 성공적으로 RAM1 데이터를 읽을 수 있습니다. pre SDRAM에서 즉시 완료된 데이터 디스플레이는 RAM1에 다음 라인 데이터를 읽습니다.

제 2 DE 신호 인 에이블 영역에서는, RAM2가 판독되어 표시되고, 그 처리는 RAM1과 동일하다. RAM1과 RAM2는 교대로 읽고 쓰여져 데이터의 연속 출력을 완료합니다.


6. sdram 컨트롤러

LCD 디스플레이는 연속적인 데이터 출력과 모든 활성화 신호 동안 데이터 중단이 필요하므로 SDRAM의 읽기 동작을 최우선 순위로 설정해야합니다. 전체 SDRAM 컨트롤에서 우리는 데이터 읽기 컨트롤을 중심으로해야합니다.

SDRAM 컨트롤러는 주로 SDRAM의 초기화, 리프레시, 읽기 및 쓰기 작업을 제어하며 SDRAM의 읽기 및 쓰기 제어는이 모듈의 핵심입니다. 데이터 업데이트 속도를 높이고 ARM 데이터 처리의 부담을 줄이는 것이 핵심입니다.

따라서 SDRAM 컨트롤러의 설계는 주로 데이터 업데이트 속도를 향상시키고 ARM 데이터 처리 부담의 두 가지 측면을 줄이는 데 그 목적이 있습니다.


데이터 업데이트 속도를 향상시키기 위해 데이터 버퍼가 제공하는 유휴 시간을 최대한 활용하기 위해 읽기 및 쓰기 시간 공유 방법이 채택됩니다. 카운터는 SDRAM의 읽기 동작 중에도 설정됩니다. 카운터의 최대 값은 M (M은 다른 액정의 행 픽셀)이므로, 편리하게 읽을 수 있도록 유효한 데이터를 RAM에 쓸 수 있습니다.

한편, 읽기 버스트 읽기 모드는 SDRAM에서 작동하는 과정에서 사용되며, 각각의 유효한 데이터가 판독 될 때까지 다음 읽기를 다시 기다리는 256 개의 데이터 세트를 읽습니다. 반면에 탁구 조작에 따라 별도의 카운터를 설정하면 최대 값은 Y / 2 (다른 픽셀 LCD의 경우 Y)이며, 각각 1 개의 탁구 작동 카운터에 1을 더한 후 최대 제로까지 누적됩니다 데이터 표시가 완료되면 SDRAM은 데이터를 표시 할 다음 프레임까지 대기합니다.

두 대기 시간 제어 컨트롤러에서 SDRAM 데이터 버스를 복구, SDRAM의 쓰기 작업의 대기 시간을 단축, 버스트 쓰기 모드로 쓰기 작업, 각각의 버스트 1 8 데이터를 작성 효과적으로 결과 데이터 손실 문제를 완화 FSCM 고속이며 SDRAM의 대역폭을 절약 할 때 데이터를 입력 할 수 없으므로 데이터 업데이트 속도가 향상됩니다.

리프레시 동작과 판독 동작의 충돌을 피하기 위해, SDRAM 내의 모든 뱅크가 64ms 내에 리프레시 될 수 있도록 각 프레임 데이터의 최초 N 개의 로우 기간에서 고정 된 리프레시 동작 시간 (N은 액정 해상도에 따라 조정 됨) 쓰기 작업.


디스플레이 업데이트 속도를 향상시키기 위해 ARM 메모리 카드의 데이터 처리 부담을 줄이기 위해 뱅크 메모리 주소 버퍼 공간이 4 개의 레이어로 나뉘어지며 각각의 레이어에는 2MB, 멀티 SDRAM 멀티 버퍼 작동을 통한 SDRAM 컨트롤러가 있습니다 하드웨어 가속기 설계, 그림 7과 같은 자사의 작동 원리를 달성하기 위해.

7.png

가속기는 사용자 정의 된 명령 및 룩업 테이블을 통해 맞춤식 논리 제어를 실현하고 복잡한 수학 연산 기능 수행, 데이터를 한 위치에서 다른 위치로 전송 및 동일한 동작을 여러 번 수행하는 것과 같은 데이터에 대한 FPGA의 다양한 연산을 수행합니다.

액정 디스플레이 프로세스에서, 한편으로는, SDRAM은 4 단계로 나누어지며, 뱅크 1은 하단으로, 뱅크 2, 뱅크 3, 뱅크 4는 멀티 연산을 통해 디스플레이의 기본 전제를 바꿀 수 없으며, 데이터를 전송하기 위해 데이터 ARM이없는 영역을 업데이트하기 위해 상기 제 1 명령 어드레스를 통해 버퍼 영역을 생성하는 단계;

반면, SDRAM은 4 개의 버퍼로 나누어집니다. 사용자 정의 명령을 전송함으로써 조회 테이블을 사용하여 다른 버퍼 영역 데이터에 대해 수학 연산을 수행하고 투명 디스플레이 및 기타 기능을 실현합니다.

Bank1에 표시 프레임 이전에 데이터를 저장하고, Bank2 및 Bank3에 표시 할 프레임 데이터를 저장하고, 마지막 프레임 데이터의 끝을 표시하고, 지시를 통해 직접 다음 프레임 데이터를 표시하고, 표시 프레임 데이터의 무결성을 보장하고 개선합니다 LCD의 시각 효과. 다중 및 다중 버퍼 작동을 통해 ARM 데이터 처리의 부담을 줄이기 위해 병렬 처리를 위해 FPGA에 데이터 처리의 일부가 할당됩니다. ARM의 직렬 처리 모드와 비교하여 데이터 업데이트 속도를 향상시킬 수 있습니다.