Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 01:02 18 Jun 2024 Privacy Policy
Jump to

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 : Programmable calculator on Pico DIY

     Page 2 of 2    
Author Message
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 3696
Posted: 06:31am 17 Jun 2024
Copy link to clipboard 
Print this post

Hi Zeitfest,

Up to now I have followed your progress with interest. But I fail to see the benefit of an Arduino for display where the previous ILI9341 was just as fine...
Are you running low on GPIO pins ?

Volhout
PicomiteVGA PETSCII ROBOTS
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5845
Posted: 07:01am 17 Jun 2024
Copy link to clipboard 
Print this post

I'm sure a standard Pico would be more than capable of handling the ILI9341 and a 24 or 32 button keypad with no further help. It can certainly do a 16 button scanned keypad as a background task. Couple that with context-sensitive buttons and it might be a simple build on a single pcb.

Come to think of it, a RP2040-Zero has 20 GPIO pins, enough to scan a 16-button keypad (8 pins) and drive a SPI display (7 pins). Enough left over for a uSD card (4 pins) too!. :)  I might try that and see if I can get it to fit ...
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
zeitfest
Guru

Joined: 31/07/2019
Location: Australia
Posts: 404
Posted: 01:36pm 17 Jun 2024
Copy link to clipboard 
Print this post

Initially it was on a Silicon Chip  Pico backpack, ie using a 3.5 inch 320x480 il9488 clone display  using spi serial and other pins, the display was a bit awkward to use though.
The 2.8 inch displays are a bit small so I dropped the backpack display and tried the Adafruit3.2 inch 240x320 il9341 /Uno and it is good.
The advantage of using a I2C bus for the user I/O is that there is clean separation of tasks and a very easy 2 wire connection. Probably not fast enough for video etc but fine for a few data/text  fields.
Edited 2024-06-17 23:37 by zeitfest
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 5845
Posted: 02:36pm 17 Jun 2024
Copy link to clipboard 
Print this post

Just playing with a concept.
Overall size is about 120mm x 72.5mm.



This board has male header pins onto which you plug a Waveshare Pico Res Touch 2.8 display. The RP2040 Zero obviously can't be plugged in under this because of height, so I've surface mounted it. Power is provided via the USB-C connector. I'm wondering if I could squeeze a rechargeable battery in. :)

I've shown the keypad with two different sorts of buttons so it's a bit of a mess. It's just to see what will fit. The KS01 buttons are the round ones, the larger ones are the cheap Chinese "clicky" buttons, which can have round or square caps. Others could easily be used.

Touch is supported, which might be handy for something like program selection.

[Func] controls the keypad as 2-level, activating the alternative function for each key, so to get / you press the [Func] key twice.

Pressing [Func] then F activates F1 to F4 function keys.
Pressing [Func] then M activates M1 to M4 function/memory keys.

The RP2040-Zero hasn't got a RUN input so GP8 is programmed as an active low interrupt input to reset the system.

The keypad is scanned in the background, using the KEYPAD command. This scans the keys continuously and executes an interrupt on every key press. That routine decodes the press (via an array) and keeps track of a "keypad level" flag, which decides how the current key is going to be decoded.
Edited 2024-06-18 00:37 by Mixtel90
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Volhout
Guru

Joined: 05/03/2018
Location: Netherlands
Posts: 3696
Posted: 02:47pm 17 Jun 2024
Copy link to clipboard 
Print this post

Hi Mick,

As a calculator you would expect yhe display horizontal. Rotate the whole pcb 90 degrees cc.
Then, after 90 cc, the keypad is not in right orientation(7,8,9 are at the left side, should be top side)
This is just silkscreen..

Volhout
Edited 2024-06-18 00:49 by Volhout
PicomiteVGA PETSCII ROBOTS
 
     Page 2 of 2    
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2024