Dear Forum Members,
I am a beginner in the field of microcontrollers. I don't know anything about code development and
microcontroller resources. However, I am faced up with a project that will utilize a microcontroller
and perform certain tasks and functions.
I will try to be brief and layout the basic idea in the following paragraph. The microcontroller is
managing three devices: a DPDT CMOS switch via two GPIOs; a digital potentiometer via I2C;
a bicoloured LED via two GPIOs; single coloured LED via a GPIO. Whenever a momentary button
is pressed the microcontroller has to utilize one of the two Enable pins on the DPDT CMOS switch.
At this point the single coloured LED turns on when the CMOS switch is in a certain position and
turns off when the CMOS switch is in its initial configuration. I would assume that this could be
easily verified with the status of the Enable pins. So far so good.
Whenever the momentary button is pressed and held for a certain period of time the microcontroller
starts communicating with the digital potentiometer via I2C. In this state every sequential press of
the momentary button would increment the wiper of the digital potentiometer, and every double press
would decrement the wiper accordingly. At this point the bicoloured LED turns one of its colours in
order to indicate that micocontroller has entered a state where manipulation of the digital potentiometer
could be established. The second colour of the LED would start binking accordingly if the wiper is
incremented or decremented. And finaly, in order to get out of this mode one must press and hold
the momentary button for a certain period of time and get back to the state where only interaction
with the CMOS switch is possible.
Thus, I am reaching out to all of you with this first and quite simple question: do you think that
ATtiny1607 is a suitable choise for this particular application? Are there additional functional blocks
that might be needed for this application and that are missing in the currently selected mircocontroller?
Up until now my humble research has led me to using timers and counters.
Any feedback would be much appreciated.
Thank you in advance for your time.