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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3986|回復: 1
收起左側

esp8266驅動FD1642芯片的四位數碼管程序

[復制鏈接]
ID:305003 發表于 2021-4-24 10:52 | 顯示全部樓層 |閱讀模式
esp8266小巧便宜適合各種DIY,網上買了一片FD1642芯片的四位數碼管,橙色的暖色很好看。只是這個芯的的驅動不好找,網上找了幾個51用的驅動。在esp8266上很不好用,網上程序各種坑。折騰了一天,參考官網芯片時序圖及說明終于改好了能用的驅動。以后慢慢的做個網絡對時時鐘也不錯哈哈。現將相關程序附上:.
#define  P_CT_CLK  14 //CLK接口
#define  P_CT_DATA  13 //DATA 接口
const uint8 Lcd_tab[17] =
{0xFC, 0x60, 0xDA, 0xF2, 0x66, 0xB6, 0xBE, 0xE0, 0xFE, 0xF6, 0xEE, 0x3E, 0x9C, 0x7A, 0x9E, 0x8E}; //共陰極
//Q2接seg A  Q9 接seg G 中間按順序接
int numb=888;  //測試顯示初始數字
void setup()
{
  pinMode(P_CT_DATA, OUTPUT);
  pinMode(P_CT_CLK, OUTPUT);
  digitalWrite(P_CT_DATA, HIGH);
  digitalWrite(P_CT_CLK, LOW);


}


void Nop(uint8 T_Dly)
{
  while (T_Dly--);
  return ;
}


void ct1642_send_data(uint8 ct_dis_data, uint8 ct_com)
{
  uint8 ct_addr;                   //存儲數碼管位置
  uint8 i;
  switch (ct_com)
  {
    case 0: {
        ct_addr = 0xee; //顯示C1位數據 數碼管為共陰極,將要點亮的COM置0以顯示該COM
        break;
      }


    case 1: {
        ct_addr = 0xed;   //顯示C2位數據
        break;
      }
    case 2: {
        ct_addr = 0xeb; //顯示C3位數據
        break;
      }
    case 3: {
        ct_addr =  0xe7; //顯示C4位數據
        break;
      }
    case 4: {
        ct_addr = 0xff;  //掃描鍵盤,關閉COM1
        break;
      }
    default: {
        ct_addr = 0xff;
        ct_dis_data = 0x00;
        break;
      }
  }


  for (i = 0; i < 8; i++)            //發送8位地址
  {
    digitalWrite(P_CT_CLK, LOW);
    if ( (ct_addr >> i) & 0x01 )
    {
      digitalWrite(P_CT_DATA, HIGH);
      Nop(1);  //此處根據單片機的指令周期而定
    }
    else
    {
      digitalWrite(P_CT_DATA, LOW);
      Nop(1);
    }
    digitalWrite(P_CT_CLK, HIGH); //上升沿輸出一位
    Nop(1);
  }
  //發送兩個空位,補足要發送的18位
  digitalWrite(P_CT_CLK, LOW);
  digitalWrite(P_CT_DATA, HIGH);
  Nop(1);
  digitalWrite(P_CT_CLK, HIGH);
  Nop(1);
  digitalWrite(P_CT_CLK, LOW);
  Nop(1);
  digitalWrite(P_CT_CLK, HIGH);
  Nop(1);
  for (i = 0; i < 8; i++) //發送8位數據
  {
    digitalWrite(P_CT_CLK, LOW);
    if ( (ct_dis_data << i) & 0x80)
    {
      digitalWrite(P_CT_DATA, HIGH);
      Nop(1);
    }
    else
    {
      digitalWrite(P_CT_DATA, LOW);
      Nop(1);
    }
    digitalWrite(P_CT_CLK, HIGH);
    Nop(1);
  }
  digitalWrite(P_CT_CLK, HIGH); //輸出數據
  digitalWrite(P_CT_DATA, LOW);
  Nop(1);
  digitalWrite(P_CT_DATA, HIGH);
  Nop(1);
  digitalWrite(P_CT_CLK, LOW);
  digitalWrite(P_CT_DATA, LOW);
  Nop(1);
  digitalWrite(P_CT_DATA, HIGH);
  Nop(2);
  return;
}
void FD1642_display(unsigned int k)
{
  ct1642_send_data(Lcd_tab[k % 10], 0);
      k /= 10;
      if (k != 0)
      {
        ct1642_send_data(Lcd_tab[k % 10], 1);
        k /= 10;
        if (k != 0)
        {
          ct1642_send_data(Lcd_tab[k % 10], 2);
          k /= 10;
          if (k != 0)
          {
            ct1642_send_data(Lcd_tab[k % 10], 3);
          }
        }
      }
  }


void loop()
{
  int p=0;
  while(p<5000)
  {
  FD1642_display(numb);
  p++;
  }
numb++;
}

評分

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

查看全部評分

回復

使用道具 舉報

ID:701805 發表于 2021-6-2 21:45 來自觸屏版 | 顯示全部樓層
效果圖呢
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久九九99 | 欧美激情一区二区 | 国产超碰人人爽人人做人人爱 | 91精品国产一区二区三区 | 中文字幕一区二区三区在线乱码 | 一本色道精品久久一区二区三区 | 久久人| 四虎永久在线精品免费一区二 | 天天干天天操天天爽 | 精品福利一区二区三区 | 免费精品 | 特黄视频 | 区一区二区三在线观看 | 国产精品区二区三区日本 | 国内自拍偷拍视频 | 亚洲欧美中文字幕在线观看 | 天天操天天操 | 成人免费观看男女羞羞视频 | 国产原创在线观看 | 亚洲国产精品久久久 | 欧美激情久久久 | 日韩a | 超碰免费在线 | 国产.com | 在线视频h| 久久精品99 | 一级毛片成人免费看a | www免费视频 | 一区二区在线观看免费视频 | 精品国产一区二区三区性色 | 日本一道本视频 | 毛片一区二区三区 | 久久久99国产精品免费 | 国产美女精品视频 | 午夜精品一区二区三区在线 | 日韩av一区二区在线观看 | 日本成人在线免费视频 | 国内自拍偷拍 | 欧美国产激情二区三区 | 亚洲综合色视频在线观看 | 亚洲一区中文字幕 |