找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3717|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)led8個(gè)燈想怎么閃就怎么閃的源程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:280056 發(fā)表于 2018-1-26 19:54 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
# include <reg52.h>
typedef unsigned int u16;//習(xí)慣性寫(xiě)入
typedef unsigned char u8;
/*define uchar unsigned char
  define uint unsigned int
define ulint unsigned long
//宏定義*/
sbit led=P0^0;//定義單個(gè)腳
//#define led P0//預(yù)轉(zhuǎn)換 一組腳
void delay(u16 i)
{
while(i--);//延時(shí)
}
void main()
{
while(1)
{
  led=1;//端口為低電平,默認(rèn)為低電平,預(yù)轉(zhuǎn)換可用16進(jìn)制
  delay(50000);//不精確,約450ms
  led=0;
  delay(50000);
}
}

//另一個(gè)(不會(huì)上傳附件)
# include<reg52.h>
# include<intrins.h> //左右移函數(shù)需要
typedef unsigned int u16;
typedef unsigned char u8;
//sbit led=P0;//位定義
#define led P0//宏定義
void delay(u16 i)
{
while(i--);
}
void main()
{
u8 i;
led=0x01;
delay(50000);
while(1)
{
// for(i=0;i<8;i++)
//  {
//   P0=(0x01<<i);//將1右移i位,然后將結(jié)果賦值到P0口
////   P0=(0x80>>i);//將1左移i位,然后將結(jié)果賦值到P0口
//   delay(50000);
//  }
  for(i=0;i<7;i++)
  {
   led=_crol_(led,1);//左移
//   led=_cror_(led,1);//右移
   delay(50000);
  }
}
}

//另一個(gè)
# include<reg52.h>
typedef unsigned int u16;
typedef unsigned char u8;
#define led P0
u8 code lyt[17]={0x00,0x01,0x02,0x04,0x08,
                 0x10,0x20,0x40,0x80,0xff};
//對(duì)應(yīng)1~8燈,第一個(gè)數(shù)據(jù)無(wú)意義,可用于消影
void delay(u16 i)
{
while(i--);
}
void main()
{
while(1)
{
   led=lyt[9];
   delay(50000);
    led=lyt[0];
  delay(50000);
}
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表