Jump to content

trying to write a gdisp driver for UC1610


aeroman

Recommended Posts

Hello,

thank you for your work and providing uGFX as open source.

I'm trying to write a gdisp driver for UC1610 controller coming with EA-dog xl 160 lcd screen with the help of driver exemples (UC1601s and UC8173) from git repository.

For now, the driver works on stm32F4 and i2c, but for sure, there are many improvements to do.

Do you have advices helping to improve the driver ?

thanks,

Bye

 

dogxl160-7e-4693.pdf

uc1610_v1_36.pdf

UC1610.zip

Link to comment
Share on other sites

Hello @aeroman and welcome to the µGFX community!

Thank you for sharing your driver with us, we really appreciate it.
I gave it a quick look and so far it looks quite good. We've seen way worse. That's pretty good for your first driver, well done!
I'm not sure on the command buffer thing but then again I didn't yet find enough time to properly investigate.

I think that this is good enough to be included into the repository. The board file template needs to be created but that's easy. What do you think, @inmarket?

Link to comment
Share on other sites

I found two more things:

  1. Line 133 through 148 are obsolete and can be removed. Orientation handling is taken care of in the gdisp_lld_control() function as the display driver supports this natively. It's just dead code.
  2. Line 188 seems to do a funny or operation on zero. Looks kind of obsolete to me too unless I am missing something.

Other than that the driver looks very well built and very mature. Great work!

Link to comment
Share on other sites

Joel, it looks like this controller only supports x-axis reversal (atleast the way the control code is currently set up) and hence lines 133 to 148 is necessary.

I haven't checked the datasheet to see if y axis reversal is really possible and I would want to have the hardware before trying that.

Line 188 matches line 197. Whilst the or with 0 is unneeded, it will be optimised out by the compiler and properly documents the set/reset instruction for program enable and hence is worthwhile for code readability. 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...