亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? stc系列單片機內部ad的應用.txt

?? sTC系列單片機內部AD的應用 STC89LE52AD、54AD、58AD、516AD這幾款89系列的STC單片機內部自帶有8路8位的AD轉換器
?? TXT
字號:

STC系列單片機內部AD的應用
STC89LE52AD、54AD、58AD、516AD這幾款89系列的STC單片機內部自帶有8路8位的AD轉換器,分布在P1口的8位上,當時鐘在40MHz以下時,每17個機器周期可完成一次AD轉換。

         與AD相關的幾個寄存器如表1所示。
表1 STC89系列單片機AD相關寄存器
名稱 地址 功能描述 D7 D6 D5 D4 D3 D2 D1 D0 復位值 
P1_ADC_EN 97H 允許P1.X成為AD口 AD_P17 AD_P16 AD_P15 AD_P14 AD_P13 AD_P12 AD_P11 AD_P10 0000 0000 
ADC_CONTR C5H AD轉換控制寄存器 -- -- -- ADC_FLAG ADC_START CHS2 CHS1 CHS0 xxx0 0000 
ADC_DATA C6H AD轉換結果寄存器 -- -- -- -- -- -- -- -- 0000 0000 

         P1_ADC_EN:P1.X口的AD使能寄存器。
                   相應位設置為“1”時,對應的P1. X口作為AD轉換使用,內部上拉電阻自動斷開。
         ADC_CONTR:AD 轉換控制寄存器。
                   ADC_START:AD轉換啟動控制位,設置為“1”時,AD開始轉換。
                  ADC_FLAG:AD轉換結束標志位,當AD轉換完成后,ADC_FLAG=1。
                   CHS2、CHS1、CHS0:為模擬輸入通道選擇,如表2所示。
表2  STC89系列單片機AD模擬通道選擇設置
CHS2 CHS1 CHS0 模擬輸入通道選擇 
0 0 0 選擇P1.0作為AD輸入來用 
0 0 1 選擇P1.1作為AD輸入來用 
0 1 0 選擇P1.2作為AD輸入來用 
0 1 1 選擇P1.3作為AD輸入來用 
1 0 0 選擇P1.4作為AD輸入來用 
1 0 1 選擇P1.5作為AD輸入來用 
1 1 0 選擇P1.6作為AD輸入來用 
1 1 1 選擇P1.7作為AD輸入來用 

    ADC_DATA:AD 轉換結果寄存器。模擬/數字轉換結果計算公式如下:
結果=256×Vin / Vcc
         Vin為模擬輸入通道輸入電壓,Vcc為單片機實際工作電壓,用單片機工作電壓作為模擬參考電壓。
         下面一個例程演示STC89LE516AD/X2系列單片機的A/D轉換功能。 時鐘11.0592MHz, 轉換結果以16進制形式輸出到串行口,可以用串行口調試程序觀察輸出結果。(本代碼摘自宏晶科技芯片手冊,經作者調試可正常運行)。
         新建文件part3.4.5.c,程序代碼如下:
                  #include <reg52.H>
#include <intrins.H>
// 定義與 ADC 有關的特殊功能寄存器
sfr P1_ADC_EN = 0x97; //A/D轉換功能允許寄存器
sfr ADC_CONTR = 0xC5; //A/D轉換控制寄存器
sfr ADC_DATA = 0xC6; //A/D轉換結果寄存器
typedef unsigned char INT8U;
typedef unsigned int INT16U;
void delay(INT8U delay_time) // 延時函數
{
         INT8U n;
         INT16U m;
         for (n=0;n<delay_time;n++)
                  {
                            for(m=0;m<10000;m++);
                  }
}
void initiate_RS232(void) //串口初始化
{
         ES = 0;       // 禁止串口中斷
         SCON = 0x50;   // 0101,0000 8 位數據位,無奇偶校驗
         T2CON = 0x34; // 0011,0100,由T2 作為波特率發生器
         RCAP2H = 0xFF; // 時鐘11.0592MHz, 9600 波特率
         RCAP2L = 0xDB;
         ES = 1;        // 允許串口中斷
}
void Send_Byte(INT8U one_byte) // 發送一個字節
{
         TI = 0;        // 清零串口發送中斷標志
         SBUF = one_byte;
         while (TI == 0);
         TI = 0;        // 清零串口發送中斷標志
}
INT8U get_AD_result(INT8U channel)
{
         INT8U AD_finished = 0; // 存儲 A/D 轉換標志
         ADC_DATA = 0;
         ADC_CONTR = channel; // 選擇 A/D 當前通道
         delay(1);                      //使輸入電壓達到穩定
         ADC_CONTR |= 0x08; //0000,1000 令 ADC_START = 1, 啟動A/D 轉換
         AD_finished = 0;
         while ( AD_finished == 0 ) // 等待A/D 轉換結束
         {
                  AD_finished = (ADC_CONTR & 0x10); //0001,0000, ADC_FLAG ==1測試A/D轉                  換結束否
         }
         ADC_CONTR &= 0xF7; //1111,0111 令 ADC_START = 0, 關閉A/D 轉換,
         return (ADC_DATA); // 返回 A/D 轉換結果
}
void main()
{
         initiate_RS232();
         P1 = P1 | 0x63; // 0110,0011,要設置為 A/D 轉換的P1.x 口,先設為高
         P1_ADC_EN = 0x63; //0110,0011, P1 的P1.0,P1.1,P1.5,P1.6 設置為 A/D 轉換輸入腳
         // 斷開P1.0,P1.1,P1.5,P1.6 內部上拉電阻
         while(1)
         {
                  Send_Byte(get_AD_result(0)); //P1.0 為 A/D 當前通道, 測量并發送結果
                  delay(0x200);
                  Send_Byte(get_AD_result(1)); //P1.1 為 A/D 當前通道, 測量并發送結果
                  delay(0x200);
                  Send_Byte(get_AD_result(5)); //P1.5 為 A/D 當前通道, 測量并發送結果
                  delay(0x200);
                  Send_Byte(get_AD_result(6)); //P1.6 為 A/D 當前通道, 測量并發送結果
                  delay(0x200);
                  Send_Byte(0); // 連續發送 4 個 00H, 便于觀察輸出顯示
                  Send_Byte(0);
                  Send_Byte(0);
                  Send_Byte(0);
                  delay(0x200); // 延時
                  delay(0x200);
                  delay(0x200);
                  delay(0x200);
                  delay(0x200);
                  delay(0x200);
         }
}
    知識點:typedef與#define的區別
              typedef:類型定義,其功能是用戶為已有數據類型取“別名”。
              如:typedef  int  INT; 意思是將int重新定義為INT,以后使用INT a;就相當于int       a;
       用typedef定義數組、指針、結構等類型將帶來很大的方便,不僅使程序書寫簡單,而且使意義更為明確,因而增強了可讀性。例如:typedef int a[10];表示a是整型數組類型,數組長度為10,然后就可用a定義變量,如:a s1,s2;完全等效于:int s1[10],s2[10];
define:宏定義。
       如:#define PI 3.14 意思是以后程序中出現PI的地方將用3.14代替,這個替換是在編譯預處理階段完成的,注意#define最后沒有分號,否則編譯時將分號一同帶入PI中。

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合久久久久网| 国产精品欧美一区喷水| 91久久精品一区二区三| av毛片久久久久**hd| www.日本不卡| 91亚洲大成网污www| 91影视在线播放| 91国产福利在线| 欧美揉bbbbb揉bbbbb| 欧美绝品在线观看成人午夜影视| 在线观看视频一区二区欧美日韩| 色婷婷av一区二区| 欧美精品一卡两卡| 日韩一级片网址| 国产亚洲午夜高清国产拍精品| 久久精品欧美一区二区三区不卡 | 日韩欧美国产高清| 欧美精品一区二区在线观看| 久久久久久一二三区| 国产精品每日更新在线播放网址| 自拍视频在线观看一区二区| 亚洲成人综合网站| 国产剧情一区二区| 9人人澡人人爽人人精品| 欧美日韩性生活| 精品成人在线观看| 亚洲免费观看高清在线观看| 丝袜诱惑制服诱惑色一区在线观看| 蜜桃av噜噜一区| 9人人澡人人爽人人精品| 欧美日韩一区在线观看| 欧美成人国产一区二区| 18欧美乱大交hd1984| 日韩影视精彩在线| 成人黄色av网站在线| 欧美日韩高清影院| 亚洲国产精品v| 日韩成人午夜电影| www.爱久久.com| 日韩女优制服丝袜电影| 亚洲欧美另类在线| 国产在线视频一区二区三区| 色伊人久久综合中文字幕| 2020国产精品自拍| 亚洲成人在线网站| 成人免费视频视频在线观看免费 | 精品日韩一区二区三区| 亚洲人妖av一区二区| 激情丁香综合五月| 欧美久久婷婷综合色| 国产精品国产三级国产a| 日本最新不卡在线| 91九色最新地址| 欧美激情综合在线| 久久激五月天综合精品| 欧美三级韩国三级日本三斤| 中文字幕免费不卡在线| 另类小说视频一区二区| 欧美日韩一卡二卡| 国产精品久久久久7777按摩| 国产精品白丝jk黑袜喷水| 337p亚洲精品色噜噜噜| 亚洲图片一区二区| 91亚洲精华国产精华精华液| 日本一区二区不卡视频| 国产一区二区精品久久99| 欧美xxxxxxxx| 国内精品自线一区二区三区视频| 欧美一区二区三区在线| 性久久久久久久| 欧美性受xxxx黑人xyx| 亚洲女同女同女同女同女同69| 成人免费毛片a| 国产亚洲综合性久久久影院| 国产一区二区精品久久| 国产香蕉久久精品综合网| 韩国av一区二区三区在线观看| 91精品国产品国语在线不卡| 日本中文字幕一区二区视频| 欧美日韩一区二区在线观看| 一区二区三区日韩在线观看| 91丨porny丨国产| 亚洲女人****多毛耸耸8| www.爱久久.com| 一区二区三区丝袜| 欧美区在线观看| 美女www一区二区| 精品少妇一区二区三区在线视频| 韩国成人在线视频| 欧美成人精精品一区二区频| 国产精品影视天天线| 国产日产欧美一区| 不卡的av网站| 亚洲最新在线观看| 欧美一区二区三区思思人| 麻豆成人久久精品二区三区小说| 日韩欧美色综合网站| 国产自产2019最新不卡| 国产精品丝袜黑色高跟| 欧洲激情一区二区| 免费观看30秒视频久久| 国产三级一区二区| 91麻豆国产在线观看| 日韩高清在线不卡| 亚洲精品一线二线三线无人区| 久久国产精品99精品国产 | 国产高清不卡一区| 亚洲图片欧美激情| 91精品国产色综合久久ai换脸 | 国产精品欧美久久久久无广告| 99精品1区2区| 免费欧美日韩国产三级电影| 国产欧美日韩三区| 欧美日免费三级在线| 国产激情一区二区三区四区| 亚洲女女做受ⅹxx高潮| 欧美精品一区二区在线观看| 色哟哟国产精品免费观看| 美女尤物国产一区| 综合激情成人伊人| 欧美不卡激情三级在线观看| www.激情成人| 黑人精品欧美一区二区蜜桃| 一区二区三区四区av| 精品对白一区国产伦| 欧美三级在线播放| 成人蜜臀av电影| 六月丁香综合在线视频| 亚洲人精品午夜| 久久精品欧美一区二区三区不卡| 欧美精品色综合| 91在线视频18| 风间由美一区二区av101| 精品一区二区日韩| 亚洲成人av在线电影| 中文字幕综合网| 国产精品无码永久免费888| 欧美第一区第二区| 欧美日韩国产精品成人| 色先锋aa成人| 91网址在线看| 91免费精品国自产拍在线不卡| 国产精品正在播放| 激情久久久久久久久久久久久久久久| 亚洲狠狠爱一区二区三区| 日韩综合在线视频| 中文字幕的久久| www成人在线观看| 日韩欧美国产一二三区| 7777精品伊人久久久大香线蕉完整版 | 高清不卡一区二区| 六月丁香婷婷久久| 麻豆精品一二三| 另类成人小视频在线| 免费观看30秒视频久久| 另类的小说在线视频另类成人小视频在线 | 亚洲国产一区视频| 亚洲自拍欧美精品| 亚洲一区二区三区四区五区黄| 亚洲人成网站精品片在线观看| 中文字幕在线不卡一区二区三区| 国产精品三级av在线播放| 中文字幕高清不卡| 亚洲视频一区在线| 亚洲图片欧美综合| 日本美女一区二区三区视频| 日本成人在线视频网站| 黄色日韩三级电影| 国产一区二区三区观看| 国产91精品一区二区麻豆网站| 国产传媒欧美日韩成人| 97se亚洲国产综合自在线不卡| 99国产精品视频免费观看| 色播五月激情综合网| 欧美日韩国产一二三| 日韩一级大片在线| 国产欧美一区二区在线| 亚洲欧美日韩一区二区 | 欧美成人女星排名| 欧美激情中文字幕| 一区二区三区色| 久久成人久久爱| av一区二区三区| 91精品国产综合久久精品app| 精品国产髙清在线看国产毛片| 中文字幕精品在线不卡| 午夜精品久久久久久久久久久| 精品一区二区日韩| 91麻豆免费观看| 欧美大片日本大片免费观看| 国产精品丝袜久久久久久app| 亚洲国产精品久久一线不卡| 久久国产精品99久久人人澡| 99精品久久只有精品| 欧美一区二区三区性视频| 中文字幕亚洲一区二区av在线| 偷拍日韩校园综合在线| 成人午夜精品一区二区三区| 欧美日本精品一区二区三区| 欧美激情中文字幕|