完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
//定义控制灯的端口
#define LED0 P1_0 //定义LED1为P10口控制 //函数声明 void Delay(unsigned int t); //函数声明 void InitiO(void); //初始化LED控制IO口函数 /*------------------------------------------------ 主函数 ------------------------------------------------*/ void main (void) { unsigned int CYCLE=1800,PWM_LOW=0;//定义周期并赋值 InitIO(); while (1) //主循环 { LED0=1; Delay(60000); //特意加延时,可以看到熄灭的过程 for(PWM_LOW=1;PWM_LOW { //PWM_LOW表示低 //电平时间,这个循环中低电平时长从1累加到CYCLE(周期)的值,即600次 LED0=0; //点亮LED Delay(PWM_LOW);//延时长度,600次循环中从1加至599 LED0=1; //熄灭LED Delay(CYCLE-PWM_LOW);//延时长度,600次循环中从599减至1 } LED0=0; for(PWM_LOW=CYCLE-1;PWM_LOW>0;PWM_LOW--) { //与逐渐变亮相反的过程 LED0=0; Delay(PWM_LOW); LED0=1; Delay(CYCLE-PWM_LOW); } //主循环中添加其他需要一直工作的程序 } } /*------------------------------------------------ 延时函数,含有输入参数 unsigned int t,无返回值 unsigned int 是定义无符号整形变量,其值的范围是 0~65535 ------------------------------------------------*/ void Delay(unsigned int t) { while(--t); } /**************************** //初始化IO口程序 *****************************/ void InitIO(void) { P1DIR |= 0x1; //P10定义为输出 } 这是一个CC2530 PWM调光实验里的例子的代码,请教下各位大神为什么输出强弱会用不断点亮熄灭来实现:) |
|
相关推荐
2个回答
|
|
|
|
|
|
汉云 发表于 2016-10-5 20:45 明白了,太感谢了:) |
|
|
|
只有小组成员才能发言,加入小组>>
793 浏览 0 评论
1152 浏览 1 评论
2528 浏览 5 评论
2861 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2711 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1073浏览 3评论
195浏览 2评论
457浏览 2评论
370浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
455浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 08:44 , Processed in 1.179942 second(s), Total 81, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号