久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2542|回復: 0
打印 上一主題 下一主題
收起左側

TM1721液晶屏驅動 單片機源代碼

[復制鏈接]
跳轉到指定樓層
樓主
分享給大家這款液晶顯示屏的代碼
附件中源代碼有顯示代碼,和按鍵讀取代碼自己測試好的

單片機源程序如下:
  1. #include "intrins.h"
  2. #include "TM1721.h"

  3. //發送一個數據
  4. void TM1721_SEND(char dat)
  5. {
  6. unsigned char dat_cnt;       
  7. for(dat_cnt=0;dat_cnt<8;dat_cnt++)
  8.     {
  9.     TM1721_CLK=0;
  10.     if((dat>>dat_cnt&0x01)==0x01)TM1721_DIO=1;
  11.     else TM1721_DIO=0;
  12.     delayus(1);
  13.     TM1721_CLK=1;
  14.                 delayus(1);       
  15.     }
  16. }
  17. void TM1721_COMMED(char dat)
  18. {
  19. TM1721_STB=0;       
  20. TM1721_SEND(dat);
  21. TM1721_STB=1;
  22. delayus(5);       
  23. }
  24. void TM1721_COMMED_DATA(char com,char dat)
  25. {
  26. TM1721_STB=0;       
  27. TM1721_SEND(com);
  28. TM1721_SEND(dat);       
  29. TM1721_STB=1;
  30. delayus(5);       
  31. }
  32. //接受一個數據
  33. char TM1721_RECIVE()
  34. {
  35. unsigned char dat_cnt,dat=0;
  36. TM1721_DIO=1;
  37. for(dat_cnt=0;dat_cnt<8;dat_cnt++)
  38.     {
  39.     TM1721_CLK=0;
  40.     delayus(5);
  41.     TM1721_CLK=1;
  42.     if(TM1721_DIO==1)dat|=1<<dat_cnt;  
  43.     }
  44. return dat;
  45. }

  46. //TM1721初始化
  47. void TM1721_INT()
  48. {
  49. unsigned char dat_cnt=0;

  50. TM1721_COMMED(TM1721_DIP_MODE);//設置顯示模式

  51. TM1721_COMMED(TM1721_FIXED_ADDR);//設置固定工作模式

  52. for(dat_cnt=0;dat_cnt<16;dat_cnt++)
  53.     {
  54.     TM1721_COMMED_DATA(0xc0+dat_cnt,0x0);//清空顯示寄存器
  55.     }
  56. TM1721_COMMED(TM1721_DIP_ON);//打開顯示
  57. }

  58. char TM1721_CHAR(char cha)
  59. {
  60. char r_cha=0;
  61. switch(cha)
  62.         {
  63.         case 0: r_cha=1<<4|1<<6|1|1<<1|1<<2|1<<3|1;               
  64.                     break;
  65.         case 1: r_cha=1<<4|1<<6;
  66.                                 break;
  67.         case 2: r_cha=1<<4|1|1<<5|1<<2|1<<3;
  68.                                 break;
  69.         case 3: r_cha=1<<4|1<<6|1|1<<5|1<<3;
  70.                                 break;
  71.         case 4: r_cha=1<<4|1<<6|1<<5|1<<1;
  72.                                 break;
  73.         case 5: r_cha=1|1<<6|1<<1|1<<5|1<<3;
  74.                                 break;
  75.         case 6: r_cha=1|1<<6|1<<1|1<<5|1<<3|1<<2;
  76.                                 break;
  77.         case 7: r_cha=1<<4|1<<6|1;
  78.                                 break;
  79.         case 8: r_cha=1|1<<6|1<<1|1<<5|1<<3|1<<2|1<<4;
  80.                                 break;
  81.         case 9: r_cha=1|1<<6|1<<1|1<<5|1<<3|1<<4;       
  82.                                 break;
  83.         case '.': r_cha=1<<7;
  84.                           break;
  85.         case '_': r_cha=0;
  86.                           break;                               
  87.         }
  88. return r_cha;
  89. }

  90. void TM1721_DIP(char a,char b,char c,char d,char e,char a_d,char b_d,char c_d,char d_d,char e_d)
  91. {
  92. char dip_temp[6]={0,0,0,0,0};
  93. //數據緩沖
  94. dip_temp[0]=TM1721_CHAR(e)<<4;
  95. dip_temp[1]=((TM1721_CHAR(e)|TM1721_CHAR(e_d))>>4)&0x0f;//第1位
  96. dip_temp[0]|=TM1721_CHAR(d)&0x0f;
  97. dip_temp[1]|=(TM1721_CHAR(d)|TM1721_CHAR(d_d))&0xf0;//第2位

  98. dip_temp[2]=(((TM1721_CHAR(c)|TM1721_CHAR(c_d))>>4)&0x0f)|(TM1721_CHAR(c)<<4);//第3位
  99. dip_temp[3]=(((TM1721_CHAR(b)|TM1721_CHAR(b_d))>>4)&0x0f)|(TM1721_CHAR(b)<<4);//第4位
  100. dip_temp[4]=(((TM1721_CHAR(a)|TM1721_CHAR(a_d))>>4)&0x0f)|(TM1721_CHAR(a)<<4);//第5位



  101. TM1721_COMMED(TM1721_FIXED_ADDR);//設置固定工作模式       

  102. TM1721_COMMED_DATA(0xc0,dip_temp[0]);//高位顯示
  103. TM1721_COMMED_DATA(0xc1,dip_temp[1]);//高位顯示
  104. TM1721_COMMED_DATA(0xc2,dip_temp[2]);//高位顯示
  105. TM1721_COMMED_DATA(0xc3,dip_temp[3]);//高位顯示
  106. TM1721_COMMED_DATA(0xc4,dip_temp[4]);//高位顯示

  107. TM1721_COMMED(TM1721_DIP_ON);//打開顯示
  108. }

  109. unsigned char  *TM1721_KEY_APP()
  110. {
  111. static unsigned char p[3]={0,0,0};
  112. TM1721_STB=0;       
  113. TM1721_SEND(TM1721_KEY);//打開顯示
  114. p[0]= TM1721_RECIVE();
  115. p[1]= TM1721_RECIVE();
  116. p[2]= TM1721_RECIVE();
  117. return p;       
  118. }
復制代碼

上圖2個文件下載 c代碼(請自行移植到各單片機平臺):
TM1721.zip (1.54 KB, 下載次數: 38)


評分

參與人數 1黑幣 +30 收起 理由
admin + 30 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

無效樓層,該帖已經被刪除
無效樓層,該帖已經被刪除
無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲视频免费在线看 | 国产精品一区二区福利视频 | 免费观看一级特黄欧美大片 | 精品久久久久久红码专区 | 欧美精品电影一区 | 在线观看av不卡 | 综合久久一区 | 天天操天天射天天舔 | 久久久久综合 | 草草视频在线播放 | 自拍偷拍中文字幕 | 亚洲精视频 | 久久久久久高潮国产精品视 | 国产精品久久久久久久久久免费看 | 在线观看日韩精品视频 | 亚洲综合五月天婷婷 | 99久久精品国产毛片 | 一区二区av| 国产一区二区免费 | 美女二区 | 久久国产视频网站 | 91精品久久久久 | 国产aaaaav久久久一区二区 | 欧美一区二区三区在线 | 天天操天天摸天天爽 | 国产一区二区精 | 黄色片免费 | 国产精品视频久久久久久 | av片免费| 天天干天天操天天爽 | 国产一区二区三区在线视频 | 欧美综合在线观看 | 精品国产乱码久久久久久图片 | 九九九久久国产免费 | 国产高清无av久久 | 日本三级在线 | 久久久久久九九九九九九 | 99pao成人国产永久免费视频 | 日本精品在线播放 | h视频在线观看免费 | 精品无码久久久久久国产 |