@ -7,7 +7,7 @@
//! usually comprised between 47nF and 100nF. These values are given as reference for an
//! electrode fitting a human finger tip size across a few millimeters dielectric panel.
use crate ::gpio ::{ gpioa , gpiob , Alternate , AF3 } ;
use crate ::gpio ::* ;
use crate ::pac ::TSC ;
use crate ::rcc ::Rcc ;
@ -66,12 +66,34 @@ tsc_pins!(
gpioa ::PA7 < Alternate < AF3 > > = > ( 2_ u8 , 4_ u8 ) ,
) ;
// all with a TSC minus 42 and 48
#[ cfg(any(
feature = "stm32f051" ,
feature = "stm32f058" ,
feature = "stm32f071" ,
feature = "stm32f072" ,
feature = "stm32f078" ,
feature = "stm32f091" ,
feature = "stm32f098"
) ) ]
tsc_pins ! ( gpioc ::PC5 < Alternate < AF0 > > = > ( 3_ u8 , 1_ u8 ) ) ;
tsc_pins ! (
gpiob ::PB0 < Alternate < AF3 > > = > ( 3_ u8 , 2_ u8 ) ,
gpiob ::PB1 < Alternate < AF3 > > = > ( 3_ u8 , 3_ u8 ) ,
gpiob ::PB2 < Alternate < AF3 > > = > ( 3_ u8 , 4_ u8 ) ,
) ;
// all with a TCS minus 58, 78 and 98
#[ cfg(any(
feature = "stm32f042" ,
feature = "stm32f048" ,
feature = "stm32f051" ,
feature = "stm32f071" ,
feature = "stm32f072" ,
feature = "stm32f091"
) ) ]
tsc_pins ! ( gpiob ::PB2 < Alternate < AF3 > > = > ( 3_ u8 , 4_ u8 ) ) ;
tsc_pins ! (
gpioa ::PA9 < Alternate < AF3 > > = > ( 4_ u8 , 1_ u8 ) ,
gpioa ::PA10 < Alternate < AF3 > > = > ( 4_ u8 , 2_ u8 ) ,
@ -86,6 +108,53 @@ tsc_pins!(
gpiob ::PB7 < Alternate < AF3 > > = > ( 5_ u8 , 4_ u8 ) ,
) ;
// all with a TSC minus 42 and 48
#[ cfg(any(
feature = "stm32f051" ,
feature = "stm32f058" ,
feature = "stm32f071" ,
feature = "stm32f072" ,
feature = "stm32f078" ,
feature = "stm32f091" ,
feature = "stm32f098"
) ) ]
tsc_pins ! (
gpiob ::PB11 < Alternate < AF3 > > = > ( 6_ u8 , 1_ u8 ) ,
gpiob ::PB12 < Alternate < AF3 > > = > ( 6_ u8 , 2_ u8 ) ,
gpiob ::PB13 < Alternate < AF3 > > = > ( 6_ u8 , 3_ u8 ) ,
gpiob ::PB14 < Alternate < AF3 > > = > ( 6_ u8 , 4_ u8 ) ,
) ;
// all with a TSC and gpioe
#[ cfg(any(
feature = "stm32f071" ,
feature = "stm32f072" ,
feature = "stm32f078" ,
feature = "stm32f091" ,
feature = "stm32f098"
) ) ]
tsc_pins ! (
gpioe ::PE2 < Alternate < AF3 > > = > ( 7_ u8 , 1_ u8 ) ,
gpioe ::PE3 < Alternate < AF3 > > = > ( 7_ u8 , 2_ u8 ) ,
gpioe ::PE4 < Alternate < AF3 > > = > ( 7_ u8 , 3_ u8 ) ,
gpioe ::PE5 < Alternate < AF3 > > = > ( 7_ u8 , 4_ u8 ) ,
) ;
// all with a TSC and gpiod
#[ cfg(any(
feature = "stm32f071" ,
feature = "stm32f072" ,
feature = "stm32f078" ,
feature = "stm32f091" ,
feature = "stm32f098"
) ) ]
tsc_pins ! (
gpiod ::PD12 < Alternate < AF3 > > = > ( 8_ u8 , 1_ u8 ) ,
gpiod ::PD13 < Alternate < AF3 > > = > ( 8_ u8 , 2_ u8 ) ,
gpiod ::PD14 < Alternate < AF3 > > = > ( 8_ u8 , 3_ u8 ) ,
gpiod ::PD15 < Alternate < AF3 > > = > ( 8_ u8 , 4_ u8 ) ,
) ;
pub struct Tsc {
tsc : TSC ,
}