Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Faster, PinSAFE and ARM like DUE support #9

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

Jeroi
Copy link

@Jeroi Jeroi commented Mar 25, 2015

Added:

  • isTouching() function atlast to the lib
  • Internal cleanPins() function which is drived now every function that alters pins and there for now TouchScreen is pinsafe library atlast and supports LCD in same pins out of box.
  • ARM support. Handling of commands with digitalWrite's instead of port handling

Speedup:

  • Created private port, mask variables and moved their intializing to object creating functions. Now they use prosessor speed only when object is initialized, not every time when point is readed.
  • Every write command are now direct port operations instead of digitalWrites.

Fixes:

  • Library generally affected LCD pins everywhere. Because of this added internal cleanPins() funtion which is driven where needed in the lib.
  • function pressure() was most badly affecting LCD pins, the cleanup code made it pinsafe and thus for were able to write simple isTouching() function without any cleanups.
  • redefined int's and function definatios to more platform free int16_t's or uint16_t's

Jeroi added 3 commits March 24, 2015 20:33
Added:
- isTouching() function atlast to the lib
- Internal cleanPins() function which is drived now every function that alters pins and there for now TouchScreen is pinsafe library and supports LCD in same pins out of box.

Speedup:
- Created private port, mask variables and moved their intializing to object creating functions. Now they use prosessor speed only when object is initialized, not every time when point is readed.
- Every write command are now direct port operations instead of digitalWrites.

Fixes:
- Library generally affected LCD pins everywhere. Since this added cleanPins funtion which is drived where needed in the code.
- function pressure() was most badly affecting LCD pins, the cleanup code made it pinsafe and thus for were able to write simple isTouching() function without any cleanups.
- isTouching() function firstly made LCD crazy because of pressure().

Todo:
- One user has commented that port manipulation does not work in DUE. This needs attention.
- More features? Maybe.
- Due support and AMR prosessor support, basically via #ifdefs __ARM__ then use digitalWrite's, because at this point, could not find sufficient info how to handle directly ports in Arduino Core with due processor which is 32bit. Either webiste's had not much info regarding this.
@Jeroi Jeroi changed the title Fixed the library to support wide options Faster, PinSAFE and ARM like DUE support Mar 25, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant