Svenska
Tid: 2026/08/28
Bläddra: 510

Figur 1. STM32F103C6T6
STM32F103C6T6 använder ett 48-pin LQFP-paket och tillhandahåller 37 GPIO-stift. Många GPIO-stift stöder alternativa funktioner, inklusive ADC-ingångar, PWM-utgångar, USART, SPI, I²C, CAN, USB, klocksignaler och felsökning. Dessa funktioner väljs genom att konfigurera relevant perifer, GPIO-läget och AFIO-register när ommappning krävs. Funktioner tilldelade samma fysiska stift kan inte användas samtidigt.

Figur 2. LQFP48 Pinout för STM32F103x4/x6 Lågdensitets Enheter
| Stift |
Stift Namn |
Huvud- och Alternativa Funktioner |
| 1 |
VBAT |
Backup strömingång för RTC, 32.768 kHz oscillator och backup-registrar när VDD inte är tillgänglig. |
| 2 |
PC13-TAMPER-RTC |
GPIO PC13; RTC-tamper ingång eller RTC klockutgång. |
| 3 |
PC14-OSC32_IN |
GPIO PC14; ingång för 32.768 kHz LSE kristall eller extern klocka. |
| 4 |
PC15-OSC32_OUT |
GPIO PC15; utgång för 32.768 kHz LSE kristall. |
| 5 |
PD0-OSC_IN |
HSE kristall eller extern hög hastighetsklocka ingång efter reset; kan ommappas som GPIO PD0. |
| 6 |
PD1-OSC_OUT |
HSE kristallutgång efter reset; kan ommappas som GPIO PD1. |
| 7 |
NRST |
Aktiv låg extern återställningsingång och återställningsutgång. |
| 8 |
VSSA |
Analog jord för ADC och interna analogkretsar. |
| 9 |
VDDA |
Analog strömförsörjning för ADC, återställningskretsar, interna RC-oscillatorer och PLL. |
| 10 |
PA0-WKUP |
GPIO; standby väckningsingång; USART2_CTS; ADC1/ADC2 kanal 0; TIM2_CH1 eller extern utlösare. |
| 11 |
PA1 |
GPIO; USART2_RTS; ADC1/ADC2 kanal 1; TIM2_CH2. |
| 12 |
PA2 |
GPIO; USART2_TX; ADC1/ADC2 kanal 2; TIM2_CH3. |
| 13 |
PA3 |
GPIO; USART2_RX; ADC1/ADC2 kanal 3; TIM2_CH4. |
| 14 |
PA4 |
GPIO; SPI1_NSS; USART2_CK; ADC1/ADC2 kanal 4. |
| 15 |
PA5 |
GPIO; SPI1_SCK; ADC1/ADC2 kanal 5. |
| 16 |
PA6 |
GPIO; SPI1_MISO; ADC1/ADC2 kanal 6; TIM3_CH1; omkopplad TIM1_BKIN. |
| 17 |
PA7 |
GPIO; SPI1_MOSI; ADC1/ADC2 kanal 7; TIM3_CH2; omkopplad TIM1_CH1N. |
| 18 |
PB0 |
GPIO; ADC1/ADC2 kanal 8; TIM3_CH3; omkopplad TIM1_CH2N. |
| 19 |
PB1 |
GPIO; ADC1/ADC2 kanal 9; TIM3_CH4; omkopplad TIM1_CH3N. |
| 20 |
PB2-BOOT1 |
GPIO PB2; BOOT1-ingång som används med BOOT0 för att välja startminnet. |
| 21 |
PB10 |
GPIO; omkopplad TIM2_CH3. |
| 22 |
PB11 |
GPIO; omkopplad TIM2_CH4. |
| 23 |
VSS_1 |
Digital jord. |
| 24 |
VDD_1 |
Digital försörjning för I/O-kretsar och intern spänningsregulator. |
| 25 |
PB12 |
GPIO; TIM1 avbrott-ingång, TIM1_BKIN. |
| 26 |
PB13 |
GPIO; TIM1 komplementär kanal 1 utgång, TIM1_CH1N. |
| 27 |
PB14 |
GPIO; TIM1 komplementär kanal 2 utgång, TIM1_CH2N. |
| 28 |
PB15 |
GPIO; TIM1 komplementär kanal 3 utgång, TIM1_CH3N. |
| 29 |
PA8 |
GPIO; USART1_CK; TIM1_CH1; mikrokontroller klocka utgång, MCO. |
| 30 |
PA9 |
GPIO; USART1_TX; TIM1_CH2. |
| 31 |
PA10 |
GPIO; USART1_RX; TIM1_CH3. |
| 32 |
PA11 |
GPIO; USART1_CTS; CAN_RX; TIM1_CH4; USB_DM. |
| 33 |
PA12 |
GPIO; USART1_RTS; CAN_TX; TIM1 extern trigger; USB_DP. |
| 34 |
PA13 |
JTMS/SWDIO debug-signal efter återställning; användbar som GPIO när debugkonfigurationen tillåter det. |
| 35 |
VSS_2 |
Digital jord. |
| 36 |
VDD_2 |
Digital försörjning. |
| 37 |
PA14 |
JTCK/SWCLK debug-klocka efter återställning; användbar som GPIO när debugkonfigurationen tillåter det. |
| 38 |
PA15 |
JTDI efter återställning; GPIO när JTAG är avstängt; omkopplad TIM2_CH1/ETR eller SPI1_NSS. |
| 39 |
PB3 |
JTDO/TRACESWO efter återställning; GPIO; omkopplad TIM2_CH2 eller SPI1_SCK. |
| 40 |
PB4 |
NJTRST efter återställning; GPIO; omkopplad TIM3_CH1 eller SPI1_MISO. |
| 41 |
PB5 |
GPIO; I²C1_SMBA; omkopplad TIM3_CH2 eller SPI1_MOSI. |
| 42 |
PB6 |
GPIO; I²C1_SCL; omkopplad USART1_TX. |
| 43 |
PB7 |
GPIO; I²C1_SDA; omkopplad USART1_RX. |
| 44 |
BOOT0 |
Boot-lägesval-ingång. Används med PB2/BOOT1 för att välja användarflash, systemminne eller SRAM vid start. |
| 45 |
PB8 |
GPIO; omkopplad I²C1_SCL eller CAN_RX. |
| 46 |
PB9 |
GPIO; omkopplad I²C1_SDA eller CAN_TX. |
| 47 |
VSS_3 |
Digital jord. |
| 48 |
VDD_3 |
Digital försörjning. |
STM32F103C6T6 tillhör STM32F103x4/x6 låg-densitet prestandalinje familj och använder en 32-bitars Arm Cortex-M3-kärna som arbetar vid upp till 72 MHz. Figur 3 är det officiella familjenivå blockdiagrammet; därför representerar vissa I/O och ADC-konton som visas i diagrammet det maximalt tillgängliga på större paketvarianter snarare än de exakta resurserna för C6 LQFP48-enheten.

Figur 3. Officiellt STM32F103x4/x6 Familjenivå Blockdiagram
Den interna busarkitekturen länkar processorn, minnen, DMA-kontroller och perifera bussar. AHB-domänen kopplar Cortex-M3-kärnan, Flash-minnet, SRAM och sju-kanals DMA-kontroller och kan arbeta vid upp till 72 MHz. Perifera funktioner är uppdelade mellan de två APB-domänerna. APB1 är begränsad till 36 MHz, medan APB2 kan arbeta vid upp till 72 MHz. DMA-kontrollern kan överföra data mellan stödda perifera enheter och SRAM utan att CPU:n behöver flytta varje datapunkt, vilket minskar processorarbetsbelastningen under repetitiva datatransfers.

Figur 4. Förenklad STM32F103C6T6 Arbetsflöde som visar uppstart, databehandling, avbrott, DMA, utdatahantering och lågströmslägen
STM32F103C6T6 startar efter strömförsörjning eller återställning, väljer startkälla och använder initialt den 8 MHz HSI-klockan. Firmware konfigurerar därefter systemklockan, GPIO:er och nödvändiga perifera enheter.
Under drift bearbetar Cortex-M3 indata och kontrollerar utgångar. DMA kan överföra data mellan stödda perifera enheter och SRAM med mindre involvering av CPU:n, medan NVIC hanterar och prioriterar avbrott.
När enheten är inaktiv kan den gå in i sömn-, stopp- eller standby-läge. Efter vakenhet från stopp-läge kan firmware behöva återställa PLL och vald systemklocka. Vakenhet från standby orsakar en återställningsliknande omstart.
| Specifikation |
STM32F103C6T6 |
| Tillverkare |
STMicroelectronics |
| CPU-kärna |
32-bit Arm Cortex-M3 |
| Maximal CPU-frekvens |
72 MHz |
| Flash-minne |
32 KB |
| SRAM |
10 KB |
| Huvudmatningsspänning |
VDD = 2.0–3.6 V |
| Analog matning med ADC drift |
VDDA = 2.4–3.6 V |
| Backup-matning |
VBAT = 1.8–3.6 V |
| GPIO-pinnar |
37 |
| ADC |
Två 12-bit ADC:er som delar 10 externa kanaler; maximal 1 MS/s per ADC med en 14 MHz ADC-klocka och den minimi 1.5-cykel samplingsperiod |
| Temperatursensor |
Integrerad och internt kopplad till en ADC-kanal |
| DMA |
Sju-kanals DMA-kontroller |
| Timers |
TIM1 avancerad kontrolltimer och TIM2/TIM3 allmänna syftestimrar; alla är 16-bit |
| Andra tidtagare |
24-bit SysTick-timer, oberoende watchdog och fönster watchdog |
| SPI |
En SPI-gränssnitt, upp till 18 Mbit/s |
| I²C |
En I²C-gränssnitt som stödjer Standard-läge och Snabb-läge drift upp till 400 kHz, med SMBus/PMBus stöd |
| USART |
USART1 upp till 4.5 Mbit/s; USART2 upp till 2.25 Mbit/s; synkront läge, LIN, IrDA och smartkort stöd |
| CAN |
CAN 2.0B Aktiv kontroller, upp till 1 Mbit/s |
| USB |
USB 2.0 full-speed enhet vid 12 Mbit/s; kräver en 48 MHz USB-klocka. USB-kompatibel elektrisk drift kräver VDD = 3.0–3.6 V och en extern 1.5 kΩ D+ pull-up. |
| Klockkällor |
8 MHz HSI, 4–16 MHz HSE kristall, cirka 40 kHz LSI och 32.768 kHz LSE |
| RTC |
Integrerad RTC med backupregister och VBAT drift |
| Debug-gränssnitt |
Serial Wire Debug och JTAG |
| Lågeffektlägen |
Sömn, Stopp och Standby |
| Ytterligare hårdvara |
CRC beräkningsenhet och 96-bit unik enhets-ID |
| Paket |
LQFP-48, 7 × 7 mm kropp, 0.5 mm pin pitch |
| Driftstemperatur |
−40 till +85 °C för temperatursuffix 6 |
Not: ST listar för närvarande STM32F103C6-familjen som aktiv och identifierar STM32F103C6T6A och STM32F103C6T6ATR som nuvarande LQFP-48 beställningskoder. För äldre STM32F103C6-enheter med en tom intern kod efter temperatur suffix 6 eller 7, inklusive STM32F103C6T6, hänvisar DS5936 Rev. 7, Figur 3, not 1 läsare till DS5319 för elektriska egenskaper. Enhetens minne, perifera antal och pinout förblir definierade av DS5936.
STM32F103C6T6 programmeras normalt och felsöks genom sitt Serial Wire Debug (SWD) gränssnitt med hjälp av en ST-LINK-prob. Självständig STM32CubeMX används för att konfigurera pinnar, klockor och perifera enheter och generera projektet, medan STM32CubeIDE tillhandahåller kodredigering, byggande, Flash-programmering och felsökning.
Menyvägarna i denna sektion beskriver Eclipse/CDT-baserad STM32CubeIDE 2.2.0, som släpptes den 30 juni 2026. De gäller inte för den separata STM32CubeIDE-produkt för VS Code.
| ST-LINK-signal |
STM32F103C6T6-anslutning |
LQFP-48-stift |
| SWDIO |
PA13/JTMS/SWDIO |
34 |
| SWCLK |
PA14/JTCK/SWCLK |
37 |
| NRST |
NRST — rekommenderad |
7 |
| GND |
VSS/GND |
Valfri jord |
| VAPP/VTref |
Mål 3.3 V krets |
Spänningsreferens |
Använd en reglerad 3.3 V målmatning. På en äkta ST-LINK/V2, känner VAPP/VTref av målspänningen snarare än att tillhandahålla ström till MCU. Håll BOOT0 låg för normal start från användarens Flash-minne; höjning av BOOT0 är inte nödvändig för ST-LINK programmering.
• Öppna självständig STM32CubeMX och välj den exakta STM32F103C6Tx-enheten. Konfigurera klockan, GPIO:er, perifera enheter och Serial Wire debugging under System Core → SYS.
• Öppna Projektledare, välj STM32CubeIDE under Toolchain/IDE, och generera koden. STM32CubeMX dokumenterar Toolchain/IDE-valet som en del av projekt-genereringskonfigurationen.
• I Eclipse-baserad STM32CubeIDE, välj Arkiv → Importera → Importera STM32-projekt → STM32CubeMX/STM32CubeIDE-projekt. Välj det genererade projektet och slutför importen.
• Lägg till applikationskoden i de angivna USER CODE-sektionerna, bygg projektet, anslut ST-LINK-proben genom SWD, och starta felsökaren. Använd brytpunkter, stegning, registerutsikter och variabelövervakning för att verifiera driften.
För reproducerbar utveckling och testning, registrera versionen av STM32CubeIDE, versionen av STM32CubeMX, versionen av STM32CubeF1-firmwarepaketet, versionen av kompilatorn och verktyget, versionen av ST-LINK-firmware, och projektversionen som användes för varje bygg.
Detta är en föreslagen valideringsprocedur, inte författarens experimentella data. Rapportera testhårdvaran, driftförhållandena, råavläsningarna, instrumenten och mätosäkerheten.
• Anslut VDD-stift 24, 36 och 48 till 3,3 V och VSS-stift 23, 35 och 47 till jord. Placera en 100 nF-kondensator vid varje VDD/VSS-par och minst 4,7 µF bulkkapacitans på 3,3 V-skenan.
• Anslut VDDA-stift 9 till 3,3 V och VSSA-stift 8 till jord. Avkoppla VDDA med 100 nF + 1 µF.
• Om VBAT inte används, anslut stift 1 till VDD och avkoppla det med 100 nF.
• Håll BOOT0-stift 44 lågt med en 10 kΩ pull-down för normal Flash-start.
• Anslut NRST-stift 7, PA13/SWDIO-stift 34 och PA14/SWCLK-stift 37 till SWD-gränssnittet. Lägg till 100 nF från NRST till jord.
• Använd HSI för grundläggande uppstart. Lägg till den lämpliga HSE/LSE-kretsen när det krävs av den slutliga klockkonfigurationen.

Figur 5. STM32F103C6T6 Min-System-schema
Figur 5 bör visa alla strömstift, avkopplingskondensatorer, VDDA/VSSA, VBAT, BOOT0, NRST och SWD-anslutningar.
Registrera styckets revision, provantal n, upprepningar, försörjningsspänning och ripple, omgivningstemperatur, klockkonfiguration, belastningar, probinställning, instrumentnoggrannhet och kalibreringsstatus, firmwareversion, STM32Cube-versioner, kompilatorversion och ST-LINK firmwareversion.
| Kontrollera |
Validering |
Rapportera |
| Ström |
Mät VDD och VDDA under belastning och under uppstart. |
Min/max spänning, ripple, osäkerhet |
| Återställ/start |
Strömcykel, aktivera NRST och verifiera BOOT0-status. |
Återställningsresultat och misslyckade starter |
| SWD |
Radera, programmera, verifiera, återställ och debugga. |
Godkänd/inte godkänd och anslutningsfel |
| ADC |
Tillämpa kalibrerade ingångsspänningar och upprepa mätningar. |
Förväntad kod, medelkod, spridning, fel |
| PWM/timing |
Mät frekvens och arbetsscykel. |
Beräknat värde, mätt värde, fel |
| Kommunikation |
Testa med en känd bra nod eller loopback. |
Bitrate, ramantal, fel, varaktighet |
För 12-bitars ADC, där VSSA ≈ 0 V:
LSB=V_DDA/4096
N_ideal= min (4095, [ (4096 x V_IN)/V_DDA ] )
där:
• Nideal = ideal ADC-kod
• VIN = tillämpad ADC-ingångsspänning
• VDDA = mätt analog försörjnings-/referensspänning
ADC-resultatet måste förbli inom 0 till 4095.
Kodfel = Nmeasured − Nideal
För en kantjusterad, uppräknande timer:
fTIM = PCLKx, när APB-preskalern = 1
fTIM = 2 × PCLKx, när APB-preskalern > 1
Då:
fPWM = fTIM/([(PSC + 1) × (ARR + 1)])
För PWM-läge 1, aktiv-hög drift:
Arbetsscykel (%) = CCRx/(ARR + 1) x 100
där PSC är timerpreskalern, ARR är autoåterladdningsvärdet, och CCRx är fångst-/jämförelsevärdet.
För mätta ADC-, PWM- eller timingresultat:
Fel (%) = (Mätt - Förväntat)/Förväntat x 100
Rapportera det signerade eller absoluta felet tillsammans med mätosäkerheten och testvillkoren.
Dessa fallstudier sammanfattar tredjepartsforskning med STM32F103C6T6. De genomfördes inte eller mättes av författaren till denna artikel.
Wang et al. (2023) använde STM32-genererad PWM för att styra tre ortogonala Helmholtzspärrar genom tre H-bryggmoduler med en rating på 450 W vardera och försörjda med 30 V. Värdet 450 W var en modulrating, inte mätt effektförbrukning. Systemet använde öppen-loopkontroll snarare än stängd-loop ström- eller orienteringsfeedback.
Tester använde en Ø25 × 58 mm kapsel i en 100 mm vattenkub. Två kameror registrerade rörelse vid 640 × 480 pixlar och 60–900 fps. Kapseln demonstrerade 90° rotationer. Vid 5 mT var det rapporterade maximala mjukmagnetmomentet uppskattat till 6 × 10⁻⁵ N·m, jämfört med 5.4 × 10⁻³ N·m för den permanenta magneten. Momentet beräknades från rotationsbeteende snarare än mättes med en moment sensor. Oberoende provantal, försökantal, osäkerhet och numeriskt orienteringsfel rapporterades inte.
Källa: Wang, Cui, Tian och Han (2023).
Kim et al. (2022) använde en STM32F103C6T6 för att styra en elektrostatiskt resonant aktor. En prototyp fäst vid en 125 g block mättes med en 352C66 accelerometer under en 50–200 Hz-svep, och nådde 2,5 g vid 99 Hz, där g betecknar acceleration.
Fyra ställdon testades sedan på en 17-tums panel vid 25 platser och 90, 117 och 150 Hz, vilket gav 75 plats-frekvensförhållanden snarare än 75 oberoende prover. Rapporterade toppar var 1,4 g, 2,6 g och 1,5 g, respektive. Artikeln identifierar oscilloskopet som DPO2012B i en bild men DPO2021B i texten. Upprepningar, osäkerhet, mänsklig testning, livslängd och strömförbrukning rapporterades inte.
Källa: Kim et al. (2022).
| Vanligt problem |
Trolig orsak |
Dokumenterad åtgärd |
| ST-LINK kan inte upptäcka MCU |
Ingen målmöjlighet, fel SWD-koppling, saknad jord, eller olämplig SWD-frekvens |
Bekräfta målmöjlighet och SWDIO, SWCLK, GND, NRST och målsänkans anslutningar. Minska felsökningsfrekvensen om nödvändigt. |
| ST-LINK slutade koppla efter programmering |
Fastvaran har inaktiverat eller omkonfigurerat felsökningsgränssnittet |
Använd Anslut under återställning med NRST kopplad till ST-LINK, radera eller ersätt den felaktiga fastvaran. UM2237 identifierar specifikt detta läge som användbart när applikationskoden inaktiverar JTAG/SWD. |
| Fastvaran laddas ned men startar inte |
BOOT0 är hög eller en felaktig målkonfiguration används |
Dra BOOT0 lågt för att starta från huvud Flash, verifiera STM32F103C6Tx-målet och återställ MCU. |
| Slumptalsåterställningar eller instabil drift |
Spanningsdippar, otillräcklig avkoppling, elektriskt brus, eller hundvakt/återställningshändelser |
Mät VDD under drift och inspektera återställningskällflaggor. Verifiera försörjningen, avkoppling, jordning och lastskyddskrav som beskrivs i avsnitt 5 istället för att duplicera dem här. |
| MCU misslyckas efter klockkonfiguration |
Felaktig HSE/PLL-konfiguration, Flash-latens, eller buss-preskalare |
För 72 MHz SYSCLK, konfigurera två Flash-väntetillstånd, håll APB1 vid eller under 36 MHz, bekräfta oscillatorn och PLLRDY-flaggorna innan du väljer PLL som SYSCLK, och verifiera den valda källan efteråt. |
| UART, PWM eller timerfrekvens är felaktig |
Felaktig klockträdberäkning |
Verifiera RCC och APB-preskalare och beräkna timerklockan med metoden i avsnitt 5.4. |
| ADC-avläsningar är brusiga eller inexakta |
Dålig VDDA-försörjning, olämplig provtagningstid, hög källimpedans, eller saknad kalibrering |
Verifiera VDDA/VSSA integritet, utför ADC-kalibrering, välj tillräcklig provtagningstid för källimpedansen, och håll ingången inom den tillåtna ADC-intervallet. |
| PA15, PB3 eller PB4 fungerar inte som GPIO |
Stift tilldelas JTAG efter återställning |
Konfigurera AFIO för att inaktivera JTAG medan SWD fortfarande behålls om felsökning fortfarande krävs. |
| Programmet överskrider tillgängligt minne |
Projektet är konfigurerat för en större STM32F103-variant |
Använd STM32F103C6-minneskonfigurationen med 32 KB Flash och 10 KB SRAM och granska länkerminnesrapporten. |
| I²C-enhet erkänner inte |
Kopplingsfel, fel adress, otillräcklig pull-ups, inkompatibel logikspänning, eller felaktig timing |
Kontrollera SDA/SCL-kopplingen, enhetsadressen, externa pull-ups, logik-spänningsnivåer, och I²C-timing med ett oscilloskop eller logikanalysator. |
| I²C BUSY-flaggan förblir satt efter strömförsörjning eller en elektrisk störning |
Dokumenterad STM32F103x4/x6 I²C analog-filter begränsning |
Tillämpa ES0348 §2.8.7 återhämtningssekvens: inaktivera I²C; ställ SCL/SDA som öppen-drain GPIO hög och verifiera att båda är höga; driva SDA lågt och verifiera; driva SCL lågt och verifiera; driva SCL högt och verifiera; driva SDA högt och verifiera; återställ båda benen till alternativfunktion öppen-drain; ställ in och rensa SWRST; slutligen återaktivera I²C. Pull-ups ensamma korrigerar inte detta låsta-BUSY tillstånd. |
| En 5 V signal skadar eller stör GPIO |
Spänning applicerades på en icke-FT eller analog pin |
Endast FT-markerade digitala stift får acceptera ingångsspänningar över VDD inom DS5936-gränser. För spänningar över VDD + 0,3 V, inaktivera de interna pull-up/pull-down motstånden. Använd nivåskiftning eller delning för icke-FT och analoga ingångar. |
| Läskydd aktiverat |
Alternativ-byte skyddsstatus |
Inspektera alternativbyte med STM32CubeProgrammer. Att ändra från skyddad till o Skyddad status genom att återställa RDP-värdet orsakar en massåterställning av huvud Flash. STM32F1 använder inte det senare oåterkalleliga RDP-nivå 2-systemet. |
De huvudsakliga skillnaderna mellan STM32F103C6T6 och STM32F103C8T6 är minneskapacitet och antalet tillgängliga timrar och kommunikationsperifera enheter.
| Funktion |
STM32F103C6T6 |
STM32F103C8T6 |
| Enhetsdensitet |
Låg densitet |
Medelhög densitet |
| Flashminne |
32 KB |
64 KB |
| SRAM |
10 KB |
20 KB |
| Allmänna timers |
2: TIM2–TIM3 |
3: TIM2–TIM4 |
| I²C-gränssnitt |
1 |
2 |
| USART-gränssnitt |
2 |
3 |
| SPI-gränssnitt |
1 |
2 |
C6T6 och C8T6 delar LQFP48-footprint och STM32F103-arkitekturen, men migrering kräver fortfarande verifiering av den exakta länkarscriptet, startfiler, alternativa funktioner, periferitillgänglighet, elektriska begränsningar och tillämpliga felrapporter. C8-firmware kan inte flyttas till C6 oförändrad när den överskrider 32 KB Flash eller 10 KB SRAM, eller använder TIM4, I²C2, USART3 eller SPI2.

Figur 6. LQFP48 7 × 7 mm paketomriss och mekaniska data
STM32F103C6T6 använder ett 48-stift LQFP-paket med en typisk kroppsstorlek på 7 × 7 mm. Dess typiska totala bredd, inklusive stiften, är 9 × 9 mm, med en stiftavstånd på 0,50 mm och en maximal paket höjd på 1,60 mm. Varje stift är typiskt 0,60 mm långt, med ett tillåtet intervall på 0,45–0,75 mm.
Notera: Alla dimensioner är i millimeter, och ritningen är inte i skala. De minimi och maximi värdena visar tillverknings-toleranser. Använd ST:s rekommenderade PCB-footprint istället för att beräkna lödpaddarna direkt från paketomrisset. Stift 1 måste också matcha identifikationsmärket på enheten.
• STMicroelectronics. STM32F103x4, STM32F103x6: Låg densitet prestandalinje, ARM-baserad 32-bitars MCU med 16 eller 32 KB Flash, USB, CAN, 6 timers, 2 ADC:er, 6 kommunikations-gränssnitt. DS5936/DocID15060, Rev. 7, juni 2015.
• STMicroelectronics. STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx och STM32F107xx avancerade Arm-baserade 32-bitars MCU:er. RM0008, Rev. 21, februari 2021.
• STMicroelectronics. STM32F10xxx/20xxx/21xxx/L1xxxx Cortex-M3 programmeringsmanual. PM0056, Rev. 7, december 2024.
• STMicroelectronics. STM32F10xxx Flashminnesmikrokontroller. PM0075, Rev. 2, augusti 2012.
• STMicroelectronics. Komma igång med STM32F10xxx hårdvaruutveckling. AN2586, Rev. 8, december 2022.
• STMicroelectronics. STM32F103x8, STM32F103xB: Medelhög densitet prestandalinje. DS5319, Rev. 20, juli 2025.
En kristall är inte ett logiskt krav, men en standardkompatibel USB-design behöver en exakt 48 MHz PLL-klocka som normalt härstammar från en HSE-kristall, resonator eller extern källs. Den kräver också en extern 1,5 kΩ D+ pull-up och det dokumenterade USB-försörjningsområdet.
Ja. Ställ BOOT0 hög och BOOT1 låg för att starta fabriks-systemminnes bootloader. Den stöder programmering via USART1 på PA9 och PA10. Fabriks bootloader tillhandahåller inte USB DFU för denna enhet, enligt AN2606.
Nej. USB och CAN delar ett dedikerat 512-byte minnesområde, så de kan inte fungera samtidigt. De kan ingå i samma firmware men måste användas vid olika tidpunkter, som förklaras i RM0008.
Nej. Analog-liknande utgång kan produceras med hjälp av PWM och ett lågpassfilter. Använd en extern DAC när projektet kräver bättre noggrannhet, snabbare inställning eller en stabil spänning utan PWM-fluktuationer.
Ja. FreeRTOS-stöd tillhandahålls genom STM32CubeF1-programvarupaketet. C6T6 har dock endast 10 KB SRAM, så uppgiftsstackar, köer, buffertar och middleware måste passa inom denna gräns. Att använda små uppgiftsstackar, statisk allokering och övervakning av stackanvändningen är ingenhet rekommendationer snarare än enhetskrav.
CAP CER 6800PF 630V X7R 1206
IC CPLD 144MC 10NS 144TQFP
IC PWR SWTCH N-CH 1:2/1:1 16SOIC
IC DAC 8BIT V-OUT 20SOIC
IC BUF NON-INVERT 5.5V 20SOIC
ROTARY ENCODER OPTICAL 200PPR
IGBT Modules
SAMSUNG QFP
MB95F116NASPMC-G-SNE1 FUJ
LINEAR QFN10




