标题: 单片机按键控制单个数码管显示变化数字源程序 [打印本页]

作者: baird    时间: 2017-4-13 08:52
标题: 单片机按键控制单个数码管显示变化数字源程序
这是我单片机课程中按键控制单个数码管显示的程序

单片机源程序如下:
  1. /*-----------------------------------------------
  2.   名称:单个共阳数码管动态显示变化数字
  3.   内容:通过循环检测P1口按键输入值,然后用数码管输出,
  4.         没有按键按下时原值不变
  5. ------------------------------------------------*/
  6. #include<reg52.h> //包含头文件,一般情况不需要改动,
  7. //头文件包含特殊功能寄存器的定义

  8. unsigned char code dofly_table[10]={0xc0,0xf9,0xa4,0xb0,0x99,
  9.                                     0x92,0x82,0xf8,0x80,0x90,};
  10.                                     // 显示数值表0-9

  11. /*------------------------------------------------
  12.                     主函数
  13. ------------------------------------------------*/
  14. void main (void)
  15. {
  16.                   

  17. while (1)         //主循环
  18.   {

  19.   switch(P3)  //P3口作为独立按键输入端,检测端口电平并做如下判断                           
  20.        {
  21.         case 0xfe:P1=dofly_table[1];break;//0xfe = 1111 1110,
  22. //说明连接在P3.0端口的按键被按下,显示对应的数字然后跳出循环
  23.         case 0xfd:P1=dofly_table[2];break;//调用表中的第三个
  24. //元素 0xa4 下标 0 才表示数组中的第一个元素
  25.         case 0xfb:P1=dofly_table[3];break;
  26.         case 0xf7:P1=dofly_table[4];break;
  27.         case 0xef:P1=dofly_table[5];break;
  28.         case 0xdf:P1=dofly_table[6];break;
  29.         case 0xbf:P1=dofly_table[7];break;
  30.         case 0x7f:P1=dofly_table[8];break;
  31.         default:break;    //如果都没按下,直接跳出
  32.        }
  33.                      //主循环中添加其他需要一直工作的程序
  34.   }
  35. }
复制代码



作者: G0807    时间: 2018-4-22 21:51
求楼主代码
作者: G0807    时间: 2018-4-22 21:55
求楼主代码
作者: 1225872468    时间: 2018-6-6 09:19
求代码
作者: fengkui22    时间: 2022-9-16 13:43
谢谢分享,求代码




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1