完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
如何在显示温度和时间以及闹钟的成品电路上在P0口加上几个LED灯,使得LED利用PWM调光变化,我有前面成品的电路图和程序,但是后面不知道怎么加了,也不会写程序,求大神帮忙。万分感谢
|
|
相关推荐
2个回答
|
|
谢谢大哥。呵呵额呵呵
|
|
|
|
/*-----------------------------------------------
内容:通过PWM(脉宽调制)调节LED的亮度 ------------------------------------------------*/ #include ***it L1=P0^0;// 用***it 关键字 定义 LED到P1.0端口,LED是自己任意定义且容易记忆的符号 ***it LEDKG=P1^5; ***it WEI=P2^7; //数码管位控制脚 ***it DUAN=P2^6; //数码管段控制脚 void Delay(unsigned int t); //函数声明 /*------------------------------------------------ 主函数 ------------------------------------------------*/ void main (void) { unsigned int CYCLE=600,PWM_LOW=0;//定义周期并赋值 while (1) //主循环 { LEDKG=0; //打开LED供电 WEI=0; //位锁存置0电平,防止LED亮的时候数码管亮 DUAN=0; //段锁存置0电平,防止LED亮的时候数码管亮 L1=1; Delay(60000); //特意加延时,可以看到熄灭的过程 for(PWM_LOW=1;PWM_LOW L1=0; //点亮LED Delay(PWM_LOW);//延时长度,600次循环中从1加至599 L1=1; //熄灭LED Delay(CYCLE-PWM_LOW);//延时长度,600次循环中从599减至1 } L1=0; for(PWM_LOW=CYCLE-1;PWM_LOW>0;PWM_LOW--){ //与逐渐变亮相反的过程 L1=0; Delay(PWM_LOW); L1=1; Delay(CYCLE-PWM_LOW); } //主循环中添加其他需要一直工作的程序 } } /*------------------------------------------------ 延时函数,含有输入参数 unsigned int t,无返回值 unsigned int 是定义无符号整形变量,其值的范围是 0~65535 ------------------------------------------------*/ void Delay(unsigned int t) { while(--t); } |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-初识设备树之设备组织架构
964 浏览 0 评论
619 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-初识设备树之设备树组成和结构
867 浏览 0 评论
【敏矽微ME32G070开发板免费体验】点亮WS2812B灯板
1166 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-Linux内核移植之内核启动流程
974 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12168 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-13 03:48 , Processed in 0.904549 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号