标题: MAX7221控制数码管动态显示仿真及单片机源码 [打印本页]

作者: byla2215975    时间: 2016-10-21 00:20
标题: MAX7221控制数码管动态显示仿真及单片机源码
MAX7221控制数码管动态显示

  1. /***************   writer:shopping.w   ******************/
  2. #include <reg52.h>
  3. #include <intrins.h>
  4. #define uchar unsigned char
  5. #define uint unsigned int

  6. sbit DIN = P2^0;
  7. sbit CSB = P2^1;
  8. sbit CLK = P2^2;
  9. uchar Disp_Buffer[8]=
  10. {
  11.         2,0,0,9,10,8,10,9
  12. };
  13. void DelayMS(uint x)
  14. {
  15.         uchar t;
  16.         while(x--)
  17.         {
  18.                  for(t=120;t>0;t--);
  19.         }
  20. }

  21. void Write(uchar Addr,uchar Dat)
  22. {
  23.         uchar i;
  24.         CSB = 0;
  25.         for(i=0;i<8;i++)
  26.         {
  27.                  CLK = 0;
  28.                 Addr <<= 1;
  29.                 DIN        = CY;
  30.                 CLK = 1;
  31.                 _nop_();
  32.                 _nop_();
  33.                 CLK = 0;
  34.         }
  35.         for(i=0;i<8;i++)
  36.         {
  37.                  CLK = 0;
  38.                 Dat <<= 1;
  39.                 DIN        = CY;
  40.                 CLK = 1;
  41.                 _nop_();
  42.                 _nop_();
  43.                 CLK = 0;       
  44.         }
  45.         CSB = 1;
  46. }

  47. void Initialise()
  48. {
  49.         Write(0x09,0xff);
  50.         Write(0x0a,0x07);
  51.         Write(0x0b,0x07);
  52.         Write(0x0c,0x01);
  53. }

  54. void main()
  55. {
  56.         uchar i;
  57.         Initialise();
  58.         DelayMS(1);
  59.           for(i=0;i<8;i++)
  60.         {
  61.                  Write(i+1,Disp_Buffer[i]);
  62.         }
  63.         while(1);
  64. }
复制代码



11 MAX7221控制数码管动态显示.zip

40.86 KB, 下载次数: 20, 下载积分: 黑币 -5


作者: 微光2017    时间: 2017-2-20 02:42
6666很好
作者: zf7400252    时间: 2017-2-20 08:49
挺好的,谢谢楼主分享。




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