f407vet6,代码不多,就不写h文件了,有问题,希望大家指证! 需要我这前的的gpio类支持 LED:ED(GPIO_TypeDef * gpio,u8 pin) {( p6 ]$ U; K( H& T9 w4 |0 { port=PORT(gpio,pin); port.setMode(GPIO_Mode_OUT);" L Y% t' Q& G9 v' t }) @& r6 Y7 w- H* q ! J9 j6 k" |- v [9 r void LED::Turn(bool state){ . f9 v, z7 L/ E8 B! [ (state?port.Low():port.High()); } void LED::Turn(u16 _delay,u16 count) { L0 Y& U; C* S: v Turn(false); for(int i=0;i<count;i++) {) V' g$ x9 q% [ Turn(true); delay_ms(_delay);; u, l9 h- j2 K$ s Turn(false);/ S2 H# D0 I- s/ [# n delay_ms(_delay);4 K7 O, j2 C% T: L$ h }. F: {) z6 e& l3 k, U } void LED::Frash(u16 n) {& G6 v9 y9 x1 C8 Y" @1 i9 ^! [+ l n*=2; while(n--) { Turn(n%2?false:true); for(u32 i=0;i<1000;i++) for(u32 j=0;j<1000;j++);& K* S4 o+ ~( o7 h } Turn(false); } =========使用 LED led(GPIOA,9); led.Turn(true)亮,led.Turn(false);暗 Turn(1000,4) 隔一段时间,闪几次 |
重载=号,封装成hpp,实现单文件引用 |