- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello.
I recently went looking for a matrix keypad project for the PSoC 3, for some inspiration.
Basically, I need to drive either a 2x2 matrix or a 4 key common bus keypad...
After Googling around for a while, I found this:
http://www.cypress.com/forum/psoc-community-components/matrix-keyboard
To put it short... Does anyone know if it's compatible with Psoc Creator v.3.2?
A longer version goes: I tried it, but it didn't work. I then downgraded to Psoc Creator v.2.1,
but got the Keil license error, which I suspect might have been brought on by the downgrade,
but I'm not sure.
So, has anyone had any luck with this project?
Or could someone perhaps recommend a similar (matrix or common bus) keypad project for
the PSoC 3?
Thanks in advance.
Regards.
Solved! Go to Solution.
- Labels:
-
PSoC 3
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You do not use your Timer_1 as a timer and your Timerint() function is not an interrupt function. You do not wait for an ADC conversion ready and I really cannot follow how you are reading your keypad. Anything that hinders you to use 4 pins for the 4 keys???
Your code looks like you try to port a PSoC1 design to PSoC3, to do that you have to know both worlds, PSoC1 and 3.
So it might be easier for you to start anew with a PSoC3 Project. Which development kit have you got? CY8CKIT-030 ??
There are plenty of example projects for that kit, so you may concentrate on your problem.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear Sir: I downloaded the Keyboard example program and set it for PSOC 5lp PsoC Creator 3.3 after I open the project I discovered that the library devices where out of date and that would need to be fixed the other issue was the program was written in Russian and would need to be translated to English. So I think you should make your own Keyboard decoder. Back in the early days of computers they didn't have keyboards and you had to design your own. Basically you need a scanner on the columns and a multi input exclusive or gate to detect the key closures and a and gate to detect the row data an interrupt circuit to detect the key closures .
I think you can find this on the internet., I am sending you a picture of one.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello again.
Thanks for your replies.
The keypad needed in my project is a four key (one row, four columns) keypad.
So i opted for a common bus type, which seems simpler in its nature than the
matrix type.
I found this project http://www.cypress.com/file/67396/download which
describes the procedure for implementing a common bus keypad on the
PSoC 1.
I have ported the project to the PSoC 3 with some succes, but I am having
trouble with the timer which is quite different on the PSoC 3.
Furthermore, I have uncommented the LCD specific lines (since I am not
using one).
I have added some lines that write to the UART in order to monitor the
programs progression.
From what I am able to gather (using PSoC Creator's debug function)
the program never gets past the first IF statement in line 72, which
confirms my suspicion regarding the timer implementation.
If someone has any suggestions on how to properly implement/port
the timer, it would be much appreciated
Any comments code would also be much appreciated!
Thanks,
Regards
PS.: I have added the program bundle.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Any suggestions?
I am a bit stuck, so would be much appreciated.
Regards.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You do not use your Timer_1 as a timer and your Timerint() function is not an interrupt function. You do not wait for an ADC conversion ready and I really cannot follow how you are reading your keypad. Anything that hinders you to use 4 pins for the 4 keys???
Your code looks like you try to port a PSoC1 design to PSoC3, to do that you have to know both worlds, PSoC1 and 3.
So it might be easier for you to start anew with a PSoC3 Project. Which development kit have you got? CY8CKIT-030 ??
There are plenty of example projects for that kit, so you may concentrate on your problem.
Bob