John Geddes
New Member
I am designing a controller that uses several inputs (including a hand-turned Rotary Encoder and a DS1820 temperature sensor) and outputs to an OLED and to other control units.
My first experiments with M2 chips suggest that I might be better using separate PICAXE chips to:
A) watch the Rotary Encoder, and calculate the current value to be displayed
B) output to OLED using the value from A (multiple binary pins or i2C)
C) read temperature and do other decision-making using inputs from A and elsewhere
rather than have one larger/faster chip try to do it all.
Do others agree?
The downside is clearly that more chips means more power and more wiring between them. But the speed at which an enthusiastic twiddler can twiddle a Rotary Encoder means that if the same chip is writing to the OLED or reading the DS1820, I don't think the user is always going to enjoy a smooth OLED response (where each click of the Rotary Encoder reliably increments/decrements the setting on the OLED). Using separate chips makes it easy for the OLED to catch up on any increments it has missed whilst updating the display (so three clicks clockwise will see the display increment from 10 to 13 even if the display actually only increments 10,11,13 because there had been two clicks in the time it took the OLED to update)
Am I on the right lines, or could I get the responsiveness I need using a single 28X2 (plus of course the 18M2 in the AXE133 for the OLED)?
John Geddes
My first experiments with M2 chips suggest that I might be better using separate PICAXE chips to:
A) watch the Rotary Encoder, and calculate the current value to be displayed
B) output to OLED using the value from A (multiple binary pins or i2C)
C) read temperature and do other decision-making using inputs from A and elsewhere
rather than have one larger/faster chip try to do it all.
Do others agree?
The downside is clearly that more chips means more power and more wiring between them. But the speed at which an enthusiastic twiddler can twiddle a Rotary Encoder means that if the same chip is writing to the OLED or reading the DS1820, I don't think the user is always going to enjoy a smooth OLED response (where each click of the Rotary Encoder reliably increments/decrements the setting on the OLED). Using separate chips makes it easy for the OLED to catch up on any increments it has missed whilst updating the display (so three clicks clockwise will see the display increment from 10 to 13 even if the display actually only increments 10,11,13 because there had been two clicks in the time it took the OLED to update)
Am I on the right lines, or could I get the responsiveness I need using a single 28X2 (plus of course the 18M2 in the AXE133 for the OLED)?
John Geddes