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

標題: TLC2543+51單片機數(shù)字電壓表Proteus仿真程序 [打印本頁]

作者: v帆帆帆帆    時間: 2019-7-24 10:23
標題: TLC2543+51單片機數(shù)字電壓表Proteus仿真程序
本文介紹了基于STC89C51單片機為核心的,以AD0809數(shù)模轉(zhuǎn)換芯片作為采樣,以四位八段數(shù)碼管作為顯示的具有測量功能的具有一定精度的數(shù)字電壓表。在實現(xiàn)基礎功能的情況下,另外還可以擴展串行口通信,時鐘,等其他一系列功能,使系統(tǒng)達到了良好的設計效果和要求。本課題主要解決A/D轉(zhuǎn)換,數(shù)據(jù)處理及顯示控制等三個模塊。
主要系統(tǒng):STC89C51;數(shù)字電壓表;模數(shù)轉(zhuǎn)換;數(shù)字信號
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #define TLC2543_GLOBAL
  2. #include "TLC2543.h"

  3. uint read_TLC2543(uchar channel)
  4. {
  5.     register uchar i;
  6.     uint tempAD = 0;

  7.     while(!TLC2543GetEoc());        //wait TLC2543 free
  8.         _delay_us(3);
  9.     channel <<= 4;

  10.     TLC2543Clk(TLC2543_CLR);
  11.     TLC2543_Cs(TLC2543_SET);
  12.     TLC2543_Cs(TLC2543_CLR);                //_CS TLC2543 select

  13.         _delay_us(3);
  14.     for( i = 0; i < 12; i ++ )
  15.     {
  16.         tempAD <<= 1;
  17.         if( TLC2543GetDo() )        //read value
  18.         {
  19.             tempAD |= 0x01;
  20.         }
  21.         if( channel&0x80 )
  22.         {
  23.             TLC2543Di(TLC2543_SET);
  24.         }
  25.         else
  26.         {
  27.             TLC2543Di(TLC2543_CLR);
  28.         }
  29.         channel <<= 1;
  30.         TLC2543Clk(TLC2543_SET);
  31.         nop();
  32.         TLC2543Clk(TLC2543_CLR);
  33.     }

  34.     TLC2543_Cs(TLC2543_SET);                //TLC2543 close
  35.         _delay_us(1);

  36.     return tempAD;
  37. }
  38. void _delay_us(uint us)
  39. {
  40.    uchar delayi;
  41.    while(--us)
  42.    {
  43.          for(delayi=0;delayi<10;delayi++);
  44.    }
  45. }                                                                                                                          
復制代碼
  1. #include "led.h"
  2. #include "TLC2543.h"
  3. const uchar code displayMode=0x0f;
  4. uchar displayBuff[4]={0x7e,0x7e,0x7e,0x7e};   //數(shù)碼管顯示緩沖區(qū),低兩位為時間,最高位為搶答號
  5. const uchar code digitalNumber[10]={0x7e,0x06,0x6d,0x79,0x33,0x5b,0x5f,0x70,0x7f,0x73};
  6. void main()
  7. {         
  8.   uint voltageReadTemp;
  9.   uint voltageRead;
  10.   uchar temp;
  11.   uchar i,j;
  12.   init_led();
  13.   while(1)
  14.   {
  15.     ledSweepDisplay(displayBuff,displayMode,4);
  16.     voltageRead=read_TLC2543(0x05);
  17.         voltageRead=voltageRead*0x05;
  18.         for(i=4;i>0;i--)
  19.         {
  20.           temp=(uchar)(voltageRead/0x0fff);
  21.           if(i==4)
  22.             displayBuff[i-1]=digitalNumber[temp]|0x80;
  23.           else
  24.             displayBuff[i-1]=digitalNumber[temp];
  25.           voltageRead=voltageRead%0x0fff;
  26.           voltageReadTemp=voltageRead<<1;
  27.           voltageRead=0x0000;
  28.           for(j=0;j<5;j++)
  29.             voltageRead+=voltageReadTemp;//voltageRead=voltageRead*10
  30.           
  31.         }

  32.   }

  33. }
復制代碼


所有資料51hei提供下載:
數(shù)字電壓表.zip (25.75 KB, 下載次數(shù): 66)



作者: lgh987    時間: 2020-5-12 19:34
垃圾,什么玩意了




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲激情专区 | 香蕉视频在线播放 | 97在线观看 | 免费黄色片在线观看 | 午夜精品一区二区三区在线观看 | 国产一区二区电影 | 国产乱码精品1区2区3区 | 一级免费毛片 | 欧美8一10sex性hd | 亚洲精品欧洲 | 午夜性视频 | 免费特级黄毛片 | 性做久久久久久免费观看欧美 | 五月婷婷中文 | 欧美一级淫片007 | 国产亚洲精品精品国产亚洲综合 | 亚洲精品电影网在线观看 | 99精品亚洲国产精品久久不卡 | 五月天国产在线 | 日韩中文字幕高清 | 国产一区二区三区久久久久久久久 | 国产欧美一区二区三区日本久久久 | 亚洲精品久久久一区二区三区 | 成人免费一区二区 | 免费的黄色片子 | 成人影院在线观看 | 欧美日韩在线一区二区 | 国产精彩视频 | 免费观看视频www | 国产成人综合在线 | 国产亚洲精品久久久久久牛牛 | 久久久久久久久久久久久91 | 国产精品久久久久久久久久久久冷 | 91超碰在线观看 | 91精品国产91久久综合桃花 | 精品日韩一区二区三区av动图 | 国产一区二区观看 | 九九热免费在线观看 | 日韩一区二区三区av | 国产东北一级毛片 | 在线看片国产精品 |