Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : LCD Touchscreens
Author | Message | ||||
OA47 Guru Joined: 11/04/2012 Location: AustraliaPosts: 926 |
It has been some time since the subject has been raised on this forum, so I was wondering if any of the "projecteers" have recently found some reasonably priced LCD touchscreens that can be simply interfaced with MMBasic? The "el cheapo" units that I see on 'bay seem to have an SPI touch interface but if I am not mistaken they will consume many of the I/O ports on the processor for the video. Would like to hear from any members with hardware or software solutions they have applied. |
||||
TassyJim Guru Joined: 07/08/2011 Location: AustraliaPosts: 6099 |
The screen I am using came with a touch controller but I found it easier to forget about that and drive the resistive panel directly. It still requires 6 IO ports but at least I have the ability to choose which ports are used. Any resistive panel should be easy to drive with the maximite. The capacitive ones will need a controller. I haven't done any more with it but hope to get back to it soon. http://www.thebackshed.com/forum/forum_posts.asp?TID=5319&KW =touch+screen Jim VK7JH MMedit  MMBasic Help |
||||
Zonker Guru Joined: 18/08/2012 Location: United StatesPosts: 761 |
I have a touch LCD Display project going on using... http://www.4dsystems.com.au/ It seems to be working out so far... |
||||
OA47 Guru Joined: 11/04/2012 Location: AustraliaPosts: 926 |
Zonker, can you elaborate on the particular 4dsystems unit you are using and the interfacing that you are using? |
||||
Zonker Guru Joined: 18/08/2012 Location: United StatesPosts: 761 |
Sure... I currently have the µLCD-144-G2 (good for simple interface) (no touch)... also have the µLCD-32WPTU (with touch) and am designing a test fixture at work for testing IGBT driver PCB's (see pix)... Also have the µLCD-43 (P/PT/PCT) unit and using it to design an "engine information system" for ultra-light aircraft. (nice) Anyway, the thing is, they all use a simple serial com interface. You can write your own code that runs inside the GPU, or go code-less, as I did !.. Just layout your active objects and compile... It uses a simple com protocall to let the Maximite know what the user is doing..! (sweet) Check it out...! use this code "snippit" to send data to objects... Function tx_object(o_id,o_num,data) chksm=0: msb=0: lsb=0 chksm=chksm Xor 1: chksm=chksm Xor o_id: chksm=chksm Xor o_num If data >= 256 Then msb=data\16: lsb=data And 255 Else lsb=data EndIf chksm=chksm Xor msb: chksm=chksm Xor lsb Print #3,Chr$(1) Chr$(o_id) Chr$(o_num) Chr$(msb) Chr$(lsb) Chr$(chksm); End Function or this to receive button touches..ect... chkbuf: rxbytes=Loc(#1) If gotpacket=0 And rxbytes>=6 Then chksum=0 rxdat$=Input$(1,#1): msgtype=Asc(rxdat$): chksum=chksum Xor msgtype rxdat$=Input$(1,#1): obj_id=Asc(rxdat$): chksum=chksun Xor obj_id rxdat$=Input$(1,#1): obj_num=Asc(rxdat$): chksum=chksun Xor obj_num rxdat$=Input$(1,#1): datMSB=Asc(rxdat$): chksum=chksun Xor datMSB rxdat$=Input$(1,#1): datLSB=Asc(rxdat$): chksum=chksun Xor datLSB rxdat$=Input$(1,#1): datXOR=Asc(rxdat$): chksum=chksun Xor datXOR rxbytes=Loc(#1): chksum=chksum Xor datXOR: obj_val=datMSB*256+datLSB If msgtype=7 Then gotpacket=1 EndIf Return |
||||
Print this page |