This short article will describe the adapter board that is connected to analog data sources and that is converting the respective voltage data into suitable voltage levels for the ADC inputs PA0:PA4 at the microcontroller:
The following data will be converted and later shown on the display:
User keys (Key1:Key3)
TX power measurement
PA temperature (Sensor: KTY81-210 switched against GND)
AGC output (DC) from receiver => S-Meter
This article covers the remaining digital (or “analog to digital”) stuff, next on the agenda will be the receiver.
The heart of this transceiver is an ATmega128 microcontroller (MCU). It controls the vast majority of functions within the radio. E. g.: Frequency generation of the 2 DDS systems, audio tone and AGC decay time, T/R-switching, the presets for transmitter gain on the 6 bands independently, display and panel lights etc. etc.
And, due to usage of a parallel interface for the LCD (8 data lines and 4 control lines) an MCU with sufficient ports had to be used.
First I started with the SPI version of the LCD (ILI9341). This LCD has a high resolution of 240×320 dots. Driven by a relatively slow 8-bit controller like an AVR and the LCD driven in serial mode the performance was inferior.
Next I found that the same LCD is also available with a parallel interface. Then called CP11003. This one uses 12 lines (8 data and 4 control lines minimum), which made it mandatory to use an ATMega128 controller. To enhance speed and performance this one is clocked by a 16 MHz crystal. A touchpad is also integrated, but not used in my application.
Source code in C programming language can be downloaded from Github.