標題: TM1640數(shù)碼管顯示芯片 單片機程序 最多可顯示16段數(shù)碼管 [打印本頁]

作者: 335218864    時間: 2017-8-17 09:02
標題: TM1640數(shù)碼管顯示芯片 單片機程序 最多可顯示16段數(shù)碼管
TM1640數(shù)碼管顯示芯片 顯示程序 最多可顯示16段數(shù)碼管

單片機源程序如下:

  1. /*******************顯示處理模塊****************/
  2. #include "STC15F2Kx.h"
  3. #include "main.h"

  4. sbit PDIO1 = P1^1;      //TM1640數(shù)據(jù)
  5. sbit PCLK1 = P1^0;      //TM1640時鐘
  6. /*---------TM1640數(shù)碼管驅(qū)動程序-----------------*/
  7. void Start1(void)          //1640開始
  8. {
  9.     PCLK1=0;
  10.     PDIO1=1;
  11.     PCLK1=1;   
  12.     NOP();
  13.     NOP();
  14.     PDIO1=0;
  15.     NOP();
  16.     NOP();
  17.     PCLK1=0;
  18.     NOP();
  19.     NOP();
  20. }
  21. /**********************************************/
  22. void Stop1(void)             //1640結(jié)束
  23. {
  24.     PCLK1=0;
  25.     PDIO1=0;
  26.     PCLK1=1;
  27.     NOP();
  28.     NOP();
  29.     PDIO1=1;
  30.     NOP();
  31.     NOP();
  32. }
  33. /*---------寫數(shù)據(jù)給T1640----------*/
  34. void Write1(uchar vdata1)
  35. {
  36.     uchar i;
  37.    
  38.     PDIO1=0;
  39.     PCLK1=0;
  40.     NOP();
  41.     NOP();
  42.     for(i=0;i<8;i++)  //開始傳送8位數(shù)據(jù),每循環(huán)一次傳送一位數(shù)據(jù)
  43.     {
  44.          PCLK1=0;
  45.          NOP();
  46.          NOP();
  47.          PDIO1 = (vdata1 & 0x01)? 1:0;
  48.          NOP();
  49.          PCLK1=1;
  50.          NOP();
  51.          NOP();
  52.          vdata1>>=1;
  53.     }
  54.     PDIO1=0;
  55.     PCLK1=0;
  56. }
  57. /*----------固定地址發(fā)送----------*/
  58. void send1(uchar address,uchar date)
  59. {
  60.     Start1();
  61.     Write1(address);    //傳顯示數(shù)據(jù)對應的地址
  62.     Write1(date);    //傳顯示數(shù)據(jù)
  63.     Stop1();
  64. }
復制代碼




作者: ywzlq    時間: 2017-8-22 08:49
感謝樓主分享!
作者: ubuntu321    時間: 2017-12-7 01:47
感謝分享
作者: zhkrid    時間: 2018-5-9 09:54
謝謝分享,想用stc8腳單片機做個數(shù)碼管時鐘
作者: bengbai4    時間: 2020-4-7 15:53
根本不能用
作者: xdl    時間: 2022-8-14 20:49
現(xiàn)在正在找這種資料,謝謝老師




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1