STM32breakoutV2. [ Manual ]

Ähnliche Dokumente
Einführung in Mikrokontroller Benutzung mit dem Arduino Board. Ramon Hofer ICVR

Entwicklungsboard 16F1824

Schaltungshinweise zum Linux Control System mit DIL/NetPC DNP/7520

Vergleich der einfachen IO Funktionen von 8 Bit Atmel AVR und 32 Bit ST32Fxxx ARM Mikrocontroller Juni 2013 A.Schnell

Der Mikrocontroller beinhaltet auf einem Chip einen kompletten Mikrocomputer, wie in Kapitel

Teach-Dongle Rev 1.1. Teach-Dongle. Rev 1.1 Stand Okt

Making the Internet of Things

Python macht Embedded Linux angenehmer

HelvePic32 Breadboard. Internet Data Logger

Zusatzplatine MP-Bus HZS 562

Nicht nur zum Spielen geeignet Atmels AVR und AVR32 Xplain Evalkitserie sind die ideale Hardwareplattformen für das neue AVR Studio 5

Dokumentation der IRIS- und MIB-Adapter

Die serielle Schnittstelle mit den Atmega32: USART

RedPitaya HPSDR Ausgänge zur Antennen und Bandfilterumschaltung

LISY80 LInux for SYstem80. Hardware Version 3.11 Aufbau der Platine Version 1.0

Quanton Manual (de) Datum: URL: )

11: Echtzeitbetriebssystem ucos-ii

Rechnerarchitektur Atmega Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7

Raspberry Pi Rezepte Teil 5

C.1 Serielle Schnittstelle, erstes Testprogramm (a)

Embedded Software. Praktikum. Licht- und Schlafphasenwecker Lukas Scharlau Timo Schwarte

LCD-GRAFIKMODUL 120x32 PIXEL

Parallel-IO. Ports am ATmega128

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

Steckerbelegungen + Platinenmaße für den Bereich Robotik- und Mikrocontroller

analoge Ein- und Ausgänge

Basisplatine PIC-Basis-V42. Abbildung: Features : PIC Programmier- und Übungsmodule. Basismodul. Best.-Nr

MSP 430. Einführung. Was kann er? Hauptthemen. Wie sieht er aus? 64 / 100 polig. Was kann er? MSP 430 1

DTMF Sender. Es können 252 Zeichen maximal am Stück übertragen werden; die Länge des Strings wird mit einem Byte übertragen.

BitRecords FPGA Modul XC6SLX25_V2.0, Mai2013 1

TBE332 Controller. Produktbeschreibung

Autonome Mobile Systeme. Dr. Stefan Enderle

Tech Note: IO Belegung des RESI-LC-CPU Controllers

Umbau eines Saug- und Wisch Roboters auf ARDUINO Steuerung

Design Guide. SIM Serie

Berührungslose Datenerfassung. easyident Multireader. Art. Nr. FS Technische Daten. Stromversorgung: + 5V DC +/-5% Hardware Revision 1.

Stecker Stepper-Platine Platz 3

Jan Monsch. Donnerstag, 2. Mai 13

Es besteht die Möglichkeit eine Batterieüberwachung der Drohne mit dem Mikrocontroller zu implementieren.

ateval-board Aufbauanleitung & Handbuch

I8O8-USB. Serial Input and Output Board with. 8 Inputs 8 Outputs 8 ADC-Inputs USB (FTDI) Rev rtec.rohrhofer.org

mit der Inkrementalgeber-Auswertung eignet sich um Bedienpanels oder Bedienkonsolen

MDB5_V0620. Bedienungsanleitung

AVR-Mikrocontroller in BASCOM programmieren

Raspberry Pi Rezepte Teil 6 Das ADC des guten Geschmacks

ERWEITERUNGSSHIELD MIT ANALOGEN EINGÄNGEN

ARM Cortex-M Prozessoren. Referat von Peter Voser Embedded Development GmbH

Serielladapter SerCon V1.1

Modellgestütztes Software Engineering. Versuch 5. Wintersemester 2015

c t Lab PWR / ADA - IO 1 Einleitung

BitRecords FPGA Modul XC6SLX9, April

ATMEGA Mikrocontroller Einführung TEIL 1. 4.November 2009 Mönchengladbach

Netduino Mikroprozessor für.net Entwickler

Relaismatrix x64. Technische Dokumentation. V Apr 2013

MikroController der 8051-Familie

NT-Electronics Bausatz-Beschreibung Version: 3

Aufbau und Inbetriebnahme, Erweiterungskarte, Digital 8I4R

Sprachausgabe. Die Steuerung des Interfaces kann, abhängig von der Besückung über I2C, RS232 oder USB erfolgen

Microsoft.NET Gadgeteer: Ein raffinierter Weg zum Embedded-Produkt. ECC 2013 Marcel Berger

Trimension XMEGATM BreakOut-Board

embedded projects GmbH

DF PROFI II PC/104-Plus

AU-D21. Digital Audio Optical Switcher OPERATION MANUAL

8.0 Erweiterung mit dem 8 Bit D/A Maxim MAX5382

Inbetriebnahme grabbmodul-1 / minimodul-16x bzw. smarteye-1

IOBoard. Bedienungsanleitung. Version 1.2. November IOBoard-Bedienungsanleitung Neobotix GmbH alle Rechte vorbehalten 1 von 11

Ingenieurbüro Bernhard Redemann Elektronik, Netzwerk, Schulung. -Datenblatt- 07 Bernhard Redemann

Produktinformationen. Basis Set Atmel Atmega8 & ISP Programmer. Lieferumfang :

Mikrocontroller - Tipps & Tricks

grifo Mini Module Test 2

AU-D2. Coaxial/Optical Audio Converter OPERATION MANUAL

Technische Dokumentation

Microcontroller Kurs Programmieren Microcontroller Kurs/Johannes Fuchs 1

BLIT2008-Board. Uwe Berger

i2c-bus.de I2C-002 KURZBESCHREIBUNG I 2 C Modul mit PCA Bit I/O Port-Expander Dokument NR.: I2C-002-D-01

Datenblatt Evaluation Board für RFID Modul

Mark VHS Augsburg Einführung in die Mikrocontroller-Programmierung. mark@mark-fink.de

Projekt: Roboter. Florian Grohnert. Semih Kisakaya

7. Vorbereitung der SDR-Software

C++ mit dem Arduino (Uno und Mega2560)

Doku zum TFT-Adapter von UB. Inhaltsverzeichnis

simline Technische Beschreibung simcontrol5 Version 1.07 Modulbeschreibung Eigenschaften

ATmega169 Chip: Pin-Layout

Erster Schritt Vom Herunterladen bis zum Programmieren

Programmierung von Mikrocontrollern am Beispiel des ATMEL ATmega32

Berührungslose Datenerfassung. easyident-km22-rs232

Schnittstellenbeschreibung CityLine Produkte

Serielle Schnittstelle

I2C-Echtzeituhr am Atmel AVR

Dieses Client-Board dient dazu, alle möglichen Peripherie-Geräte auf einfache Weise mit dem VARAN-Bus auszustatten.

ALVIDI. AVR-Entwicklungsmodul. Modell: AL-AVREB_256. Übersicht. Maße. Beschreibung. Elektrische Eigenschaften. Programmierung.

Inbetriebnahme des Willem Programmers PCB5-E. Die Software GQUSBprg 0.98d6 Willem Enhanced / Dual Power Programmer PCB5.

P-20xx SSB ein Handfunkgerät für Kurzwelle. Kurzpräsentation am Schwarzwaldtreffen der DL-QRP-AG in Schluchsee

14 Mee Controller Mee Controller Blockschaltbild Mee Controller Beschleunigungssensor. HSR Hochschule für Technik Rapperswil

E i s e n b a h n f r e u n d e K r a i c h g a u e. V. Datenübertragung. mit dem RS485

Single Side AVR Experimentier Board. Version 1.4. erstellt von. Ulrich Radig

dpc-haustechnik Ulrich Piechnick Februar 2012 Entwurf

Maple. Quelle: Make: Collin Cunningham, 2010/01/12. DK4AQ, Axel Schultze

Kurzanleitung. Hotel Modus. Version / MB82 / MB82S<, Stand Vestel Germany GmbH Parkring Garching bei München

ATMega2560Controllerboard

Transkript:

STM32breakoutV2 Dokument: 1.0 Alpha, Hardware 14/2, ED14101 STM32 BreakoutboardV2 - Fx-Serie [ Manual ] Version mit STM32F105RBT6 Autor: C. Hediger, 08.11.2014

Inhaltsverzeichnis 1. Einleitung... 3 2. Beschreibung... 3 2.2 Übersicht... 3 2.3 Pinbelegung, HW-Beschreibung... 4 3. Hardwareschnittstellen... 5 3.1 SPI-Schnittstellen... 5 3.2 I 2 C-Schnittstellen... 6 3.3 I 2 S-Schnittstellen... 7 3.4 USART-Schnittstellen... 8 3.5 Analogeingänge... 9 3.6 Mini-JTAG/SWD... 10 4. Codefragmente... 11 4.1 Minimalclock... 11 4.2 USART1 Codefragment für Copy&Paste... 12 5 Aufbau... 14 5.1 Schema... 15 5.2 Bestückungsplan... 16 Änderungsverzeichnis Editiert von Bemerkung Datum C. Hediger Erste Version erstellt 1.0 Alpha 08.11.2014

1. Einleitung Dieses Dokument, richtet sich an all jene welche mit dem Breakoutboard-V2 entwickeln. Es enthält alle wichtigen Informationen zum Board und zur ersten Inbetriebnahme. Es wird ebenfalls auf die verschiedenen Bestückungsvarianten eingegangen. 2. Beschreibung Dieses Breakoutboard wurde entwickelt, um die Verwendung der STM32-Mikrocontroller der Serie F1, F2, F4 zu vereinfachen. Eines der Hauptmerkmale dieses Boards ist, dass es in ein doppel- Breadboard passt. Dies deshalb, da die Stiftleisten im 2.54mm Raster angeordnet sind. Da alle Controller der STM32Fx-Serie im LQFP64 Gehäuse untereinander pinkompatibel sind, eignet sich dieses Board für sämtliche Controller der entsprechenden Linien. Das Board bietet zudem die Möglichkeit, drei verschiedene Speisungen zu bestücken. W 2.2 Übersicht Nachfolgend sind einige Hauptmerkmale des Boards aufgeführt. Stromversorgung: Das Board kann extern mit 0.8-3.3V versorgt werden. Bei bestücktem LDO beträgt die Spannung 3.4V* (3.6V)-16V** Anzahl I/O s 37 Anzahl ADC Eingänge 16 Anzahl UART 3 JTAG** Ja & SWD VCC 0.8-16V * Die minimale Eingangsspannung ist Lastabhängig. 3.4V gilt bis ca. max. 50mA Last. ** 16V Eingangsspannung ist nur mit entsprechender Kühlung des LDO s möglich!

2.3 Pinbelegung, HW-Beschreibung Nachfolgend ist die Pinbelegung des Boards ersichtlich. Taster an PB6 LEDs an PB8 & PB7 Power-On LED JTAG/SWD-Anschluss

3. Hardwareschnittstellen Hier findest du eine Übersicht, über alle Anschlüsse der verschiedenen Hardwareschnittstellen wie z.b. SPI, I 2 C etc. Beachte: Diese Schnittstellen sind eventuell nicht für alle Mikrocontroller im LQFP64 Gehäuse verfügbar! Etwas weiter unten in dieser Anleitung, befinden sich Codesnippets zum einfachen ansteuern dieser Schnittstellen. 3.1 SPI-Schnittstellen Wichtig! Die mit einem Sternchen versehenen Schnittstellenports, sind erst nach einem Remap der entsprechenden Pins verwendbar. Wie dies funktioniert, wird weiter unten beschrieben. Kann man auf den ChipSelect (NSS) von SPI3 oder SPI1 verzichten, stehen insgesamt 3 SPI-Schnittstellen zur Verfügung.

3.2 I 2 C-Schnittstellen Es gibt leider lediglich eine I 2 C Schnittstelle auf dem Breakoutboard. Ein Remap auf andere Pins ist nicht möglich.

3.3 I 2 S-Schnittstellen I 2 S Schnittstellen, werden vorwiegend zur Übertragung von Audiodaten verwendet. Viele Audio-DAC s wie beispielsweise der MAX9850 verwendet diese Schnittstellen. Das wichtigste bei I 2 S ist die Bereitstellung der richtigen Clocks im richtigen Verhältnis zu den übertragenden Daten. Hier helfen die internen PLL s der STM-Controller! Die mit einem Sternchen versehenen Ports, sind erst nach einem Remap verfügbar! Es sind bis zu zwei vollwertige I 2 S Schnittstellen möglich!

3.4 USART-Schnittstellen Ein remap ist für keine USART-Schnittstelle notwendig. Insgesamt sind 3 vollwertige USART vorhanden. Im Vergleich zum Breakout V1 ist nun auch für USART1 das CK Signal herausgeführt!

3.5 Analogeingänge Im STM32F105RB befinden sich zwei 12bit AD-Wandler Dieser hat eine maximale Sample-Rate von 2-MSPS im interleaved Modus. Wandlungsbereich: 0-3.6V Sample and Hold Möglichkeit. Inkl. Temperatursensor zur Kompensation des Temperaturdrifts. Insgesamt gibt es im Mikrocontroller 16 ADC Kanäle verteilt auf 2 Hardware-ADC s

3.6 Mini-JTAG/SWD Die auf diesem Board verwendete JTAG-Pinbelegung entspricht nicht dem Standard mit 20-Pol Stiftleisten. Diese neue Pinbelegung mit nur 10 Pins, stammt von der mikrocontroller.net Webseite. (www.mikrocontroller.net/articles/jtag) Entworfen hat die neue Schnittstelle mmvisual (http://www.mmvisual.de/) Nachfolgend nun die Pinbelegung. (Bild von www.mikrocontroller.net/articles/jtag) Beim Breakoutboard, ist leider kein UART auf dem JTAG vorhanden. Insofern entspricht der JTAG nicht zu 100% dem Proprietären Standard. Zum Verbinden, wird eine 1.27mm Stiftleiste 2x5 benötigt. Ein Passendes Modell, lässt sich bei RS-Online unter der Nr: 681-0692 finden. Alternativ gibt es bei Reichelt eine 2x10 Stiftleiste. Bestellnummer: SL 2X10G SMD1,27

4. Codefragmente In diesem Abschnitt, finden sich diverse Codefragmente für die verschiedensten Breakoutboard-funktionen. 4.1 Minimalclock Mithilfe des nachfolgenden Codefragments, wird das Breakoutboard mit einer??????????? //Select HSI as PLL-Source divided by 2 = 4MHz multipl. 9 = 36MHz RCC_PLLConfig(RCC_PLLSource_HSI_Div2,RCC_PLLMul_9); //Activate PLL RCC_PLLCmd(ENABLE); //Wait until PLL is Ready while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET); //Set the PLLCLOCK as Source for the SYSCLK RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);

4.2 USART1 Codefragment für Copy&Paste Nachfolgender Code ist für die Initialisierung des USART1. /* Private variables ---------------------------------------------------------*/ USART_InitTypeDef USART_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; /* Configure the NVIC Preemption Priority Bits */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); /* Enable the USARTy Interrupt */ NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); /* Configure USART1 Rx as input floating */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; //USART1 Rx Pin GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_Init(GPIOA, &GPIO_InitStructure); //USART1 GPIO Port. In this Case Port A /* Configure USART1 Tx as alternate function push-pull */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; //USART1 Tx Pin GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_Init(GPIOA, &GPIO_InitStructure); //USART1 GPIO Port. In this Case Port A /* Enable USART1 Clock */ RCC_APB1PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); USART_InitStructure.USART_BaudRate = 9600; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No; USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Rx USART_Mode_Tx; /* Configure USART1 */ USART_Init(USART1, &USART_InitStructure); /* Enable USART1 Receive and Transmit interrupts */ USART_ITConfig(USART1, USART_IT_RXNE, ENABLE); USART_ITConfig(USART1, USART_IT_TXE, ENABLE); /* Enable the USART1 */ USART_Cmd(USART1, ENABLE);

Hier noch ein wichtiges Codefragment. Jenes für den Interrupthandler. // USART Interrupt Handler void USART1_IRQHandler(void) { if(usart_getitstatus(usart1, USART_IT_RXNE)!= RESET) { /* Read one byte from the receive data register */ USART_ReceiveData(USART1); //This Function returns the Received Byte! } } if(usart_getitstatus(usart1, USART_IT_TXE)!= RESET) { /* Write one byte to the transmit data register */ USART_SendData(USART1, 0xAA); //Send some Dummy Data (0xAA) } Der Code ist voll funktionsfähig und kann direkt mittels Copy&Paste verwendet werden. Der erste Teil, muss in die main() Funktion rein. Der zweite, ausserhalb. Alle Codebeispiele wurden mit CooCox getestet!

5 Aufbau Das Breakoutboard lässt sich relativ leicht von Hand zusammenlöten. Die meisten Bauteile um das Board aufzubauen, wurden hier in einem Reichelt-Warenkorb zusammengetragen. https://secure.reichelt.de/index.html?&action=20&awkid=968416&provid=2084 Es fehlen noch die Wiederstände für den Spannungsteiler des Stepup Converters. (R117 & R118) Zudem muss man sich zuvor entscheiden, ob man das Board für die F1 oder die F2/F4 Serie verwenden möchte. Davon hängt ab, ob R113/R114 bestückt werden muss oder für die Serie F2/F4 C112/C113.

5.1 Schema Das nachfolgende Schema entspricht der HW-Version 14/2

5.2 Bestückungsplan