I have a few questions regarding the CFA-635. I'm new to programming so sorry if I've missed something obvious - I'm writing in C/C++.
I've created my hello world program and all works fine. The problem is that I need more control - centre text and display graphics.
The reason being is that I need to create a GUI with menu buttons for the user to navigate around using the six input buttons provided on the LCD Module.
I already have the code to turn bitmaps into ASM, this leads me to my first problem/question: -
/***********************
* ONE *
***********************/
1) On a cleared/blank screen I want to turn on one individual pixel in the middle of the screen.
Is it possible to do this?
I want to use Command 22 rather than changing the Character Generator ROM with Command 9.
22: Send Command Directly to the LCD Controller
The LCD controller on the CFA-635 is S6A0073 compatible. Generally you won’t need low-level access to the LCD controller but some arcane functions of the S6A0073 are not exposed by the CFA-635’s command set. This command allows you to access the CFA-635’s LCD controller directly. Note: It is possible to corrupt the CFA-635 display using this command.
type = 22
data_length = 2
data[0]: location code
0 = "Data" register
1 = "Control" register, RE=0
2 = "Control" register, RE=1
data[1]: data to write to the selected register
I've downloaded the Data Sheet for S6A007 - please see the PDF file.
S6A0073
My hardware knowledge is slightly limited. Which register do I need? And what data do I write to that register?
I'm guessing that I need to turn pins COM 17 & SEG 58 (for example) high so that I get my one individual pixel coming on?
COM - Common Driver
SEG - Segment Driver
I've worked out that it is probably the data register (DR) that I want to write to first, however I cannot work out what to write?!?!?!?
Then I'm guessing I need to use a control register to send the data from the Data Register (DR) to the Display Data RAM (DDRAM).
Or have I got this completely wrong? Please can someone quickly do some pseudo code to give me an idea?
/***********************
* TWO *
***********************/
2) In case I have to use command 9 (and I screw the CGROM UP), plus I'd like to know anyway, where can I download the firmware for my CFA-635-YYE module?
/***********************
* THREE *
***********************/
3) How do I go about flashing the firmware?
Thanks in advance for you help.
Paddy
I've created my hello world program and all works fine. The problem is that I need more control - centre text and display graphics.
The reason being is that I need to create a GUI with menu buttons for the user to navigate around using the six input buttons provided on the LCD Module.
I already have the code to turn bitmaps into ASM, this leads me to my first problem/question: -
/***********************
* ONE *
***********************/
1) On a cleared/blank screen I want to turn on one individual pixel in the middle of the screen.
Is it possible to do this?
I want to use Command 22 rather than changing the Character Generator ROM with Command 9.
22: Send Command Directly to the LCD Controller
The LCD controller on the CFA-635 is S6A0073 compatible. Generally you won’t need low-level access to the LCD controller but some arcane functions of the S6A0073 are not exposed by the CFA-635’s command set. This command allows you to access the CFA-635’s LCD controller directly. Note: It is possible to corrupt the CFA-635 display using this command.
type = 22
data_length = 2
data[0]: location code
0 = "Data" register
1 = "Control" register, RE=0
2 = "Control" register, RE=1
data[1]: data to write to the selected register
I've downloaded the Data Sheet for S6A007 - please see the PDF file.
S6A0073
My hardware knowledge is slightly limited. Which register do I need? And what data do I write to that register?
I'm guessing that I need to turn pins COM 17 & SEG 58 (for example) high so that I get my one individual pixel coming on?
COM - Common Driver
SEG - Segment Driver
I've worked out that it is probably the data register (DR) that I want to write to first, however I cannot work out what to write?!?!?!?
Then I'm guessing I need to use a control register to send the data from the Data Register (DR) to the Display Data RAM (DDRAM).
Or have I got this completely wrong? Please can someone quickly do some pseudo code to give me an idea?
/***********************
* TWO *
***********************/
2) In case I have to use command 9 (and I screw the CGROM UP), plus I'd like to know anyway, where can I download the firmware for my CFA-635-YYE module?
/***********************
* THREE *
***********************/
3) How do I go about flashing the firmware?
Thanks in advance for you help.
Paddy
Looking for additional LCD resources? Check out our LCD blog for the latest developments in LCD technology.
Last edited: