亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11857|回復: 0
收起左側

51單片機proteus仿真:7段數碼管顯示小數

[復制鏈接]
ID:137504 發表于 2016-9-8 22:57 | 顯示全部樓層 |閱讀模式
這個51單片機的proteus仿真實現無符號浮點數的顯示。
具體說,顯示個位和小數點后三位
數碼管的顯示一定要注意消隱的問題,每次顯示數字之前要先關一次數碼管。否則會出現顯示混亂。

仿真電路圖如下:
led.JPG
C程序如下:
  1. #include<reg52.h>
  2. #include<intrins.h>
  3. sbit duan=P3^0;
  4. sbit wei=P3^1;
  5. unsigned char code table[] = {
  6. 0x3f,0x06,0x5b,0x4f,
  7. 0x66,0x6d,0x7d,0x07,
  8. 0x7f,0x6f,0x77,0x7c,
  9. 0x39,0x5e,0x79,0x71 };

  10. void delay(void)
  11. {
  12.   unsigned char i,j;
  13. for(i=0;i<10;i++)
  14.   for(j=0;j<110;j++);


  15. }


  16. void show6led(float num)
  17. {
  18. unsigned char i;


  19. i=num;
  20. duan=1;
  21. P2=table[i]+0x80;  //顯示個位和小數點
  22. duan=0;
  23. P2=0xff;   //先關閉led
  24. wei=1;
  25. P2=0xfb;             //段選3
  26. wei=0;
  27. delay();



  28.    P2=0xff;
  29. P3=0xff;  //這兩句非常重要,主要是清屏消隱
  30. num=num-i;
  31. num=num*10;
  32. i=num;
  33. duan=1;
  34. P2=table[i];
  35. duan=0;
  36.   P2=0xff;
  37.   wei=1;
  38. P2=0xf7;          //段選4,十分位
  39. wei=0;
  40. delay();


  41.     P2=0xff;
  42. P3=0xff;
  43.   num=num-i;
  44. num=num*10;
  45. i=num;
  46. duan=1;
  47. P2=table[i];
  48. duan=0;
  49. P2=0xff;
  50. wei=1;
  51. P2=0xef;          //段選5,百分位
  52. wei=0;
  53. delay();



  54.   P2=0xff;
  55. P3=0xff;
  56. num=num-i;
  57. num=num*10;
  58. i=num;
  59. duan=1;
  60. P2=table[i];
  61. duan=0;
  62. P2=0xff;
  63. wei=1;
  64. P2=0xdf;          //段選6,千分位
  65. wei=0;
  66. delay();
  67.    P2=0xff;
  68. P3=0xff;

  69. }

  70. main()
  71. {
  72.   float number;
  73.   number=3.718;
  74.   
  75.   while(1)
  76.   {
  77.    show6led(number);

  78.   }


  79. }
復制代碼



回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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