欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
0.1~9.9累加 數碼管單片機代碼
[打印本頁]
作者:
i晨曦
時間:
2018-5-12 22:54
標題:
0.1~9.9累加 數碼管單片機代碼
代碼見附件部分
單片機源程序如下:
/***************************************************************************************************
工程名稱: smg_0.1~9.9
功能描述: 控制數碼管低2位顯示從0.1到9.9累加,步進為0.1
硬件連接: 用8位杜邦線將J8與J12連接,2位杜邦線分別將J11_0與J15_DS1、J11_1與J15_DS2連接。
維護記錄: 2011-8-22
***************************************************************************************************/
#include "reg51.h" //包含頭文件
sbit LE1=P2^0; //位選573鎖存器使能
sbit LE2=P2^1; //段選573鎖存器使能
#define uchar unsigned char
#define uint unsigned int
uchar wei;
float num;
uchar code dis[16]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,
// 0 1 2 3 4 5 6 7
0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};//0~F的段碼
// 8 9 A B C D E F
//**************************************************************************************************
//延時函數
//**************************************************************************************************
delay(uint time) //int型數據為16位,所以最大值為65535
{
uint i,j; //定義變量i,j,用于循環語句
for(i=0;i<time;i++) //for循環,循環50*time次
for(j=0;j<50;j++); //for循環,循環50次
}
//**************************************************************************************************
//動態掃描函數
//**************************************************************************************************
scan()
{
uchar i;
for(i=0;i<10;i++)
{
//顯示個位
P1=0xbf; //0xbf=1011 1111,即選通個位
LE1=1; //鎖存位
LE1=0; //斷開鎖存,位選573的Q7~Q0仍保持
wei=num*10;
P1=dis[wei/10] | 0x80; //dis[wei/10]為0~9的編碼,0x80為小數點
LE2=1; //鎖存段碼
LE2=0; //斷開鎖存,段選573的Q7~Q0仍保持
delay(100); //延時保持一下,延時過大會閃動,延時過小會有重影
P1=0x00;LE2=1;LE2=0; //清除P1口數據,以免造重影
//顯示十分位
P1=0x7f; //0xbf=0111 1111,即選通十分位
LE1=1; //鎖存位
LE1=0; //斷開鎖存,位選573的Q7~Q0仍保持
wei=num*10;
P1=dis[wei%10]; //0~9的編碼
LE2=1; //鎖存段碼
LE2=0; //斷開鎖存,段選573的Q7~Q0仍保持
delay(100); //延時保持一下,延時過大會閃動,延時過小會有重影
P1=0x00;LE2=1;LE2=0; //清除P1口數據,以免造重影
}
if(num==9.9)num=0; //掃描到顯示9.9時,重新開始掃描
num+=0.1; //num加0.1
}
//**************************************************************************************************
//主函數
//**************************************************************************************************
void main() //主函數
{
num=0; //初始化段碼為0
while(1) //進入while死循環
{
scan(); //數碼管掃描函數
}
}
復制代碼
所有資料51hei提供下載:
EX2.6 0.1~9.9累加.zip
(18.78 KB, 下載次數: 5)
2018-5-12 22:54 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1