The attached zip file contains my design for an ADC board with lots of extras. Previously, I have only ever made shields for the RasPi and the Arduino. This is my first venture into a complete board with on-board MCU etc. using an stm32f103 and I would be most appreciative of any comments.
The primary function of the board is to read values from 8 ADC channels, compare them to pre-set levels and display a report. The secondary function is to be able to connect to a smart phone on demand and to transfer any requested data from the ADC channels for additional analysis on a PC.
Tertiary functions are networking using an nRF24 module, storage of data on an EEPROM and analog output proportional to the analysed data from the ADC channels via external DAC chips 2 X 4 channels. These functions are optional and an be either fitted to the board or not depending on spec.
I started with a design I was sent by Jaret Burkett (to whom I extend immeasurable gratitude for his help) and I basically deleted everything except the MPU and EEPROM and started from there.
So, the TFT screen I want to use is this https://www.aliexpress.com/item/3-5-inc ... 0968f5ebc0
I want to drive the screen using 4 wire SPI and I created an eagle library for the screen which will be mounted on the back of the PCB.
For the DAC's I used two 4 channel LTC1664's which I have used in the past. There is a separate board with all the screw terminal connectors for the ADC and DAC channels and also the PSU and it has an onboard 5V 1500mA regulator to power the sensors and the main board.
There is also a TACHO input to monitor speed RPM from a hall effect sensor connected to PC13 to be used as an interrupt and an alarm connector to power a relay connected to PC7.
I have selector pins to pull BOOT 0 and BOOT 1 high or low and a set of pins for the STLINK to connect to as well as a USB socket.
In addition to standard MOSI, MISO and CLK;
The ADC channels are connected to PA0, PA1, PC0, PC1, PC2, PC3, PC4 & PC5
TFT uses D/C - PB5, RESET - PB4 Backlight PB1 and CS - PA4
DAC CS is on PB14
EEPROM CS is on PB15
nRF module uses CSN - PB3, IRQ - PA15 & CS - PB0
Finally Bluetooth uses RX - TX1, TX - RX1, KEY - PB3 & STATE - PB12. PC6 is used to enable the regulator for the BT module.
So, If someone more knowledgeable than me could look over my design and offer some advice - have I used appropriate pins or not etc, am I ok using SPI1 for TFT, DAC, EEPROM and nRF modules or should I split them between SPI1 and SPI2 ( I must admit SPI is still a bit mysterious to me! ) - I would be most grateful.
What are you developing?
1 post • Page 1 of 1