欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2755|回復: 2
打印 上一主題 下一主題
收起左側

51單片機用74H595擴展IO方法動態顯示

[復制鏈接]
跳轉到指定樓層
樓主
ID:370644 發表于 2019-11-3 13:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
      非常感恩有此論壇,經常在開發遇到問題,在百度搜索每次都是51hei,幫我解決了問題,其它論壇好像都是非常含糊,而51hei里面的內容都是真實,而實用的,在此非常感謝,也非常感恩,我也要經常分享給大家,希望對于剛需的朋友得到幫助!   
/*一款測試架程序,MCU采用宏晶STC12C5204AD,
電壓表與電流表驅動采用兩片74HC595,其次蜂鳴器與兩個
LED分別占用3個IO口,電壓表AD輸入口為P1.6,電流表為P1.7,
其次分別用八個IO口來控制電壓表電流表的位,主要通過AD轉
換后結果來檢測電流與電壓,然后判斷被測產品電壓,當它于
小一定電壓值或超出一定電壓值時,它都會報警,并且紅LED
閃爍亮起,當它在一定電壓范圍內時,綠LED閃爍亮起!*/
#include <reg52.h>//頭文件
#include <intrins.h>
#define uchar unsigned char//宏定義
#define uint unsigned int//宏定義
sbit sdata=P1^1;//74HC595數據輸出端
sbit sclk=P1^6;//74HC595移位脈沖
sbit clk=P1^0;//74HC595移位鎖存端
uchar code table[]={
0x03,0x9f,0x25,0x0d,0x99,
0x49,0x41,0x1f,0x01,0x09,0x11,0xc1,0x63,0x85,0x61,0x71};//數碼管顯示代碼
uchar num,dii;//定義數碼顯示結果變量
uchar shu;
void delay(uint z)//延時
{
uint x,y;
for(x=230;x>0;x--)
for(y=z;y>0;y--);
}
void song()
{
uchar shu2;
for(shu2=0;shu2<8;shu2++)
{
if(num&0x01==1)
sdata=1;
else
sdata=0;
sclk=1;
sclk=1;
sclk=0;
sclk=0;
sclk=1;//移位脈沖
  sclk=1;//移位脈沖
num>>=1;
}
clk=1;
clk=0;
clk=1;
}
void xian()
{


num=table[shu];//同理
song();
delay(6500);
shu++;
if(shu>=16)
shu=0;


}
void main()
{

while(1)
{
xian();
}

}


下面是固定顯示
/*一款測試架程序,MCU采用宏晶STC12C5204AD,
電壓表與電流表驅動采用兩片74HC595,其次蜂鳴器與兩個
LED分別占用3個IO口,電壓表AD輸入口為P1.6,電流表為P1.7,
其次分別用八個IO口來控制電壓表電流表的位,主要通過AD轉
換后結果來檢測電流與電壓,然后判斷被測產品電壓,當它于
小一定電壓值或超出一定電壓值時,它都會報警,并且紅LED
閃爍亮起,當它在一定電壓范圍內時,綠LED閃爍亮起!*/
#include <reg52.h>//頭文件
#include <intrins.h>
#define uchar unsigned char//宏定義
#define uint unsigned int//宏定義
sbit sdata=P1^1;//74HC595數據輸出端
sbit sclk=P1^6;//74HC595移位脈沖
sbit clk=P1^0;//74HC595移位鎖存端
uchar code table[]={
0x03,0x9f,0x25,0x0d,0x99,
0x49,0x41,0x1f,0x01,0x09,0x11,0xc1,0x63,0x85,0x61,0x71};//數碼管顯示代碼
uchar num,dii;//定義數碼顯示結果變量
uchar shu=4;
void delay(uint z)//延時
{
uint x,y;
for(x=230;x>0;x--)
for(y=z;y>0;y--);
}
void song()
{
uchar shu2;
num=table[shu];//同理
for(shu2=0;shu2<8;shu2++)
{
if(num&0x01==1)
sdata=1;
else
sdata=0;
sclk=1;
sclk=1;
sclk=0;
sclk=0;
sclk=1;//移位脈沖
  sclk=1;//移位脈沖
num>>=1;
}
clk=1;
clk=0;
clk=1;
}
void main()
{

while(1)
{
song();
}

}

評分

參與人數 1黑幣 +100 收起 理由
admin + 100 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

無效樓層,該帖已經被刪除
板凳
ID:64269 發表于 2019-11-14 00:10 | 只看該作者
可以可以,51黑確實不錯.
回復

使用道具 舉報

地板
ID:140239 發表于 2019-11-14 12:40 | 只看該作者
有仿真圖嗎?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表