设为首页收藏本站积分获取及使用技巧附件上传须知急急急、、、期待、、、求指教!!!!帮忙看一下这个程序在哪加入输出显示。想灯亮就

追梦工控论坛|工控论坛-专业的Intouch论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

总共8197条微博

动态微博

查看: 2213|回复: 0

急急急、、、期待、、、求指教!!!!帮忙看一下这个程序在哪加入输出显示。想灯亮就

[复制链接]
匿名  发表于 2013-3-10 09:42:45 |阅读模式

上传分享工控资料得追梦点,下载积分获取办法点击进入 ☆追梦点充值入口
发帖回帖赚金币兑换下载积分。上传附件须知点击进入

×

马上注册,结交更多工控达人,分享经验,让你轻松玩转追梦工控论坛。

已有帐号?  点击登录   或者        

支付宝扫一扫领红包
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned intuchar Counter = 0;
uchar P1LEDBUF = 0x01;//P1口的灯如果亮了7个,就改成0xFE;main()
{
P1=0x00; //如果灯全亮了,则全部改为0xFF
TMOD = 0x01; //T0工作在定时方式1
TH0 = 0x3C; //T0初值50ms
TL0 = 0xB0;
ET0 = 1; //开启定时器0中断
EA = 1; //开总中断
TR0 = 1; //启动定时器0
while(1);
}/********************************************/
/* 定时器0中断服务程序 */
/********************************************/
void T0_Serve() interrupt 1
{
TH0 = 0x3c; //每次定时50ms
TL0 = 0xb0;
Counter++;
if(Counter == 20) //中断20次后进入函数,时间刚好1秒(误差可以忽略)
{
Counter = 0; //计数清0
P1 = P1LEDBUF ;
P1LEDBUF =P1LEDBUF<<1; //位移P1口LED,准备下一轮
//如果灯亮和灭的刚好反了(熄了一个灯,亮了7个)就把初值改了
}
if(Counter == 40)
{
Counter = 0;//计数清0,周期2秒
P1 = 0x00 ;//如果灯全亮了,则改为P1=0xFF;
}
}
来自搜搜问问
让我们联手拒绝网络伸手党,下载积分获取办法&附件上传须知 ☆追梦点充值入口





+1
2213°C
沙发哦 ^ ^ 马上
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

请珍惜自己的ID,严禁发布垃圾水贴,诸如adsf......顶......纯表情......多次重复回帖刷积分......轻则删帖警告,重则封禁!★请分享资料、经验或者赞助论坛,贡献一份力量★

关闭

最新活动上一条 /1 下一条

小黑屋|手机版|追梦工控论坛|工控论坛-专业的Intouch论坛 ( 皖ICP备10012005号 )|网站地图

GMT+8, 2025-5-11 05:38 , Processed in 0.101631 second(s), 20 queries , Gzip On, APCu On.

Powered by Dreamyiyi

© 2009-2025 工控论坛

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