2022-06-16期末考试

一、功能描述

在单片机数码管上显示0至9数字。

二、程序

/******************СÃÛ·äÀÏʦµÄ51µ¥Æ¬»ú¿ª·¢ÏîÄ¿°¸Àý********************

ÔÚµ¥Æ¬»úÊýÂë¹ÜÉÏÏÔʾ0ÖÁ9Êý×Ö£¬×ó±ßÊýÂë¹ÜÓÉsw1¿ØÖÆ£¬ÓÒ±ßÊýÂë¹ÜÓÉsw2¿ØÖÆ£¬Ã¿°´Ò»Ï´Ó0ÖÁ1ÒÀ´ÎµÝÔö£¬µ½10¹é0.

**********************************************************************/

#include "reg52.h"

sbit C1 = P2^7;

sbit C2 = P2^6;

sbit C3 =P2^5;

sbit C4 =P2^4;

sbit SW1 = P3^4;

sbit SW2 = P3^3;

//¶¨Òå¹²ÑôÊýÂë¹ÜÎÞСÊýµãµÄÊý×Ö¶ÎÂëÖµ

unsigned char SMGNoDot_CA[10] = {0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90};

unsigned char s1 = 0, s2 = 0;

/*==================ÊýÂë¹Ü¶¯Ì¬ÏÔʾרÓÃÑÓʱº¯Êý==================*/

void DelaySMG(unsigned int t)

{

while(t--);

}

/*=====================µ¥¸öÊýÂë¹ÜÏÔʾº¯Êý=======================*/

void DisPlaySMG_Bit(unsigned char pos, unsigned char dat)

{

P0 = 0xff; //ÏûÒþ

switch(pos) //Ñ¡ÔñÊýÂë¹ÜλÖÃ

{

case 1:

C1=1; C2 = 0; C3 = 0; C4 = 0;

break;

case 2:

C1 = 0; C2 = 1; C3 = 0; C4 = 0;

break;

case 3:

  C1 = 0; C2 = 0; C3 = 1; C4 = 0;

break;

case 4:

C1 = 0; C2 = 0; C3 = 0; C4 = 1;

break;

}

P0 = dat; //Êä³öÊýÂë¹ÜÏÔʾµÄÄÚÈÝ

}

/*====================4¸öÊýÂë¹Ü¶¯Ì¬ÏÔʾº¯Êý======================*/

void DisPlaySMG()

{

DisPlaySMG_Bit(1, SMGNoDot_CA[s1]);

DelaySMG(100);

DisPlaySMG_Bit(2, 0xbf);

DelaySMG(100);

DisPlaySMG_Bit(3, 0xbf);

DelaySMG(100);

DisPlaySMG_Bit(4, SMGNoDot_CA[s2]);

DelaySMG(100);

}

/*======================°´¼üɨÃè´¦Àíº¯Êý=======================*/

void Scan_Keys()

{

//SW1°´¼üɨÃè´¦Àí

if(SW1 == 0)

{

DelaySMG(200);

if(SW1 == 0)

{

while(SW1 == 0)

{

DisPlaySMG();

}

s1++;

if(s1 == 10)

{

s1 = 0;

}

}

}

//SW2°´¼üɨÃè´¦Àí

if(SW2 == 0)

{

DelaySMG(200);

if(SW2 == 0)

{

while(SW2 == 0)

{

DisPlaySMG();

}

s2++;

if(s2 == 10)

{

s2 = 0;

}

}

}

}

/*==========================Ö÷º¯Êý============================*/

void main()

{

while(1)

{

DisPlaySMG();

Scan_Keys();

}

}

三、流程图


四、小结

这次是一个特别的作业,因为这是期末考试,这次的作业是我这一个学期的学习成果,我对我非常有信心!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.结构图 2.程序 /******************СÃÛ·äÀÏʦµÄ51µ¥Æ¬»ú¿ª·¢ÏîÄ...
    林晚风阅读 337评论 1 13
  • 1.程序 #include "reg52.h" sbit C1 = P2^7; sbit C2 = P2^6; s...
    波之领域阅读 306评论 3 13
  • 一 功能描述 4位共阳数码管全亮;C2和C3显示一道横线;每按SW1一次,C1加1,0~9为一个循环;每按SW2一...
    rcw阅读 281评论 0 14
  • 一:功能描述 4位共阳数码管全亮,当SW1按下时,C1加1,0~9位循环;每按SW4时,C4加1,0~9为一个循环...
    b72f孙权_阅读 282评论 0 13
  • 一.功能介绍 四位共阳数码管点亮,SW1控制C1,SW2控制C4,C2和C3分别显示一条线,当SW1多次按下时,C...
    12hh阅读 339评论 0 16