请选择 进入手机版 | 继续访问电脑版
搜索
查看: 96|回复: 1

[原创] C++封装类 LED

[复制链接]

该用户从未签到

5

主题

8

帖子

0

蝴蝶豆

初级会员

最后登录
2019-8-30
发表于 2019-8-16 16:13:09 | 显示全部楼层 |阅读模式
f407vet6,代码不多,就不写h文件了,有问题,希望大家指证!
需要我这前的的gpio类支持
LED:ED(GPIO_TypeDef * gpio,u8 pin) {
                port=PORT(gpio,pin);
                port.setMode(GPIO_Mode_OUT);
}

void LED::Turn(bool state){
       
                (state?port.Low():port.High());
}
void LED::Turn(u16 _delay,u16 count) {
                Turn(false);
                for(int i=0;i<count;i++) {
                                Turn(true);
                                delay_ms(_delay);
                                Turn(false);
                                delay_ms(_delay);
                }
}
void LED::Frash(u16 n) {
                n*=2;
                while(n--) {
                                Turn(n%2?false:true);
                                for(u32 i=0;i<1000;i++) for(u32 j=0;j<1000;j++);
                }
                Turn(false);
}

=========使用
LED led(GPIOA,9);
led.Turn(true)亮,led.Turn(false);暗
Turn(1000,4) 隔一段时间,闪几次
回复

使用道具 举报

该用户从未签到

7

主题

113

帖子

64

蝴蝶豆

金牌会员

最后登录
2019-11-28
发表于 2019-8-16 21:20:06 | 显示全部楼层
重载=号,封装成hpp,实现单文件引用
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2019-12-16 10:05 , Processed in 0.101175 second(s), 16 queries , MemCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表