找回密码
 立即注册
查看: 367|回复: 4

求助,关于怎么是实现引脚别名的参数更改问题

[复制链接]

该用户从未签到

2

主题

2

回帖

44

积分

新手上路

积分
44
发表于 2023-7-19 17:06:04 | 显示全部楼层 |阅读模式
刚开始学习C语言没多久,遇到了这个问题,百度也没能找到类似的问题,只好发帖求助了。

问题就是:想用STC8G1K08A,以PWM方式来点亮6个LED灯,我创建了一个.c文件的PWM子函数,我想在这个函数中设置例如PWM的for循环控制的LED_PIN1 = 1;,然后通过switch case实现按键切换不同的呼吸灯,之所以把PWM包装成调用函数,例如声明为void LED_PWM(int on,int off) ,是因为每次调用呼吸灯的引脚不同,直接写的话每次都要写一大串,于是想能不能有个方式,可以只调用函数并输入周期就可以直接控制LED的PWM输出,并且在调用函数的时候只改变形参就可以改变LED的输出引脚。想法是将LED_PWM子函数中的LED_PIN1这个名称改成形参的模式写在函数声明中,例如void LED_PWM (int on,int off,char LEDPIN)但是怎么尝试都不行,希望得到大佬们的指点。万分感谢!
               
回复 送花

使用道具 举报

该用户从未签到

46

主题

3002

回帖

6767

积分

超级版主

积分
6767
发表于 2023-7-19 17:28:42 | 显示全部楼层
引脚不能用指针,所以形参用引脚不行的,可以用一个ID来表示,比如:ID=0,对应PWM0,ID=1,对应PWM1,ID=2,对应PWM2。
回复 支持 反对 送花

使用道具 举报

该用户从未签到

2

主题

2

回帖

44

积分

新手上路

积分
44
 楼主| 发表于 2023-7-20 09:17:07 | 显示全部楼层
梁工 发表于 2023-7-19 17:28
引脚不能用指针,所以形参用引脚不行的,可以用一个ID来表示,比如:ID=0,对应PWM0,ID=1,对应PWM1,ID=2 ...

这样的话是不是需要写很多个PWM的子函数呀,然后用哪个就调用哪个

点评

函数只需要一个,你可以参考我们的例程。  详情 回复 发表于 2023-7-20 11:51
回复 支持 反对 送花

使用道具 举报

该用户从未签到

46

主题

3002

回帖

6767

积分

超级版主

积分
6767
发表于 2023-7-20 11:51:51 | 显示全部楼层
顶上星空 发表于 2023-7-20 09:17
这样的话是不是需要写很多个PWM的子函数呀,然后用哪个就调用哪个

函数只需要一个,你可以参考我们的例程。
回复 支持 反对 送花

使用道具 举报

该用户从未签到

2

主题

2

回帖

44

积分

新手上路

积分
44
 楼主| 发表于 2023-7-21 08:51:13 | 显示全部楼层
梁工 发表于 2023-7-20 11:51
函数只需要一个,你可以参考我们的例程。

好的,感谢呀
回复 支持 反对 送花

使用道具 举报

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

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2024-5-13 20:43 , Processed in 0.064198 second(s), 49 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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