找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1453|回复: 5
收起左侧

单片机c语言这样写可以吗?

[复制链接]
ID:893765 发表于 2021-5-6 23:49 | 显示全部楼层 |阅读模式
当P0.1口开关闭合时,P1口8个灯奇偶交替闪烁;当P0.1口开关打开时,P1口8个灯全灭。
#include<reg51.h>
sbit key=P0^1;
sbit D1=P1^0;
sbit D2=P1^1;
sbit D3=P1^2;
sbit D4=P1^3;
sbit D5=P1^4;
sbit D6=P1^5;
sbit D7=P1^6;
sbit D8=P1^7;
unsigned int i;

void main(void)
{if(key)
{D1=1;
D3=1;
D5=1;
D7=1;
D2=0;
D4=0;
D6=0;
D8=0;
for(i=0;i<20000;i++);
D1=0;
D3=0;
D5=0;
D7=0;
D2=1;
D4=1;
D6=1;
D8=1;
for(i=0;i<20000;i++);
}
if(!key)
{D1=1;
D3=1;
D5=1;
D7=1;
D2=1;
D4=1;
D6=1;
D8=1;
}
}

回复

使用道具 举报

ID:213173 发表于 2021-5-7 07:27 | 显示全部楼层
程序必须约束在主循环while(1)中运行
  1. #include<reg51.h>

  2. sbit key=P0^1;

  3. unsigned int i;

  4. void main(void)
  5. {
  6.         while(1)   
  7.         {
  8.                 if(key)
  9.                 {
  10.                         P1=0xaa;
  11.                         for(i=0;i<20000;i++);
  12.                         P1=0x55;
  13.                         for(i=0;i<20000;i++);
  14.                 }
  15.                 else P1=0xff;
  16.         }
  17. }
复制代码
回复

使用道具 举报

ID:893765 发表于 2021-5-7 07:37 | 显示全部楼层
wulin 发表于 2021-5-7 07:27
程序必须约束在主循环while(1)中运行

谢谢您!
回复

使用道具 举报

ID:751378 发表于 2021-5-7 10:06 | 显示全部楼层
这样写,可以,就是有些麻烦
回复

使用道具 举报

ID:390416 发表于 2021-5-7 10:49 | 显示全部楼层
单片机视频教程《人人学会单片机》:
01~28百度网盘 https://pan.baidu.com/s/1qY6X3eG
回复

使用道具 举报

ID:638887 发表于 2021-5-7 19:49 | 显示全部楼层
沙发大哥说得中规中矩,标标准准。法无定法,然后知非法法也
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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