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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

NTC10K熱敏電阻溫度計單片機程序,謝謝各位師博幫忙看看!

  [復制鏈接]
回帖獎勵 10 黑幣 回復本帖可獲得 10 黑幣獎勵! 每人限 1 次
跳轉到指定樓層
樓主
ID:17109 發表于 2019-5-9 11:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
熱敏電阻程序定義是P1.7,想改成P1.6的要什么改才有效,謝謝各位師博幫忙看看
#include <reg52.h>

sfr ADC_CONTR = 0XBC;        //轉換控制寄存器
sfr ADC_RES = 0XBD;                //轉換結果高8位
sfr ADC_LOW2 = 0XBE;        //轉換結果低2位
sfr P1ASF = 0X9D;                        //I/O口模式

#define ADC_POWER 0X80                //電源位
#define ADC_FLAG         0X10                //標置位
#define ADC_START 0X08                //開啟位

//=======延時============
void ADdelay(unsigned char i)
{
        while(i--);
}
//=======初始化=========
void InitADC()
{
        P1ASF=0xC0;                                    //設P1.6和P1.7為ADC轉換
        ADC_RES=0;
        ADC_CONTR=ADC_POWER; //啟動ADC電源
        ADdelay(200);        
}
//=======P1AD轉換啟動=======
void ADCP1STA(unsigned char lch)
{
        ADC_CONTR=ADC_POWER|ADC_START|lch; //選擇一路啟動轉換采集
}
//=======獲取轉換結果=======
unsigned char GetADC(void)
{
        while(!(ADC_CONTR&ADC_FLAG));
        ADC_CONTR&=~ADC_FLAG;      //停止AD轉換
        return ADC_RES;
}


NTC10K溫度計.rar

38.61 KB, 下載次數: 178

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

使用道具 舉報

沙發
ID:487604 發表于 2019-5-9 12:22 | 只看該作者
//=======初始化=========
void InitADC()
{
        P1ASF=0xC0;                                    //設P1.6和P1.7為ADC轉換
        ADC_RES=0;
        ADC_CONTR=ADC_POWER; //啟動ADC電源
        ADdelay(200);        
}
//=======P1AD轉換啟動=======
void ADCP1STA(unsigned char lch)
{
        ADC_CONTR=ADC_POWER|ADC_START|lch; //選擇一路啟動轉換采集
}
這是你的源代碼,InitADC()函數已經把P1.6和P1.7設為模擬輸入,也就是ADC轉換通道,啟動ADC轉換的時候調用ADCP1STA(unsigned char lch)函數,lch的輸入6就是對P1.6進行ADC轉換,lch的輸入7就是對P1.7進行ADC轉換,

下面是改過的代碼

//=======初始化=========
void InitADC()
{     /*****下面3行代碼用哪,就把不用的屏蔽**********************/
        P1ASF=0xC0;                                    //設P1.6和P1.7為ADC轉換
     //   P1ASF=0x40;                                    //只設P1.6為ADC轉換
     //   P1ASF=0x80;                                    //只設P1.7為ADC轉換   /********************************************************/

        ADC_RES=0;
        ADC_CONTR=ADC_POWER; //啟動ADC電源
        ADdelay(200);        
}



STC12系列官方資料,第九章是AD轉換
回復

使用道具 舉報

板凳
ID:518085 發表于 2019-5-9 13:14 | 只看該作者
P1ASF=0xC0;   改為 P1ASF=0x40;   作為A/D使用的口需先將P1ASF特殊功能寄存
器中的相應位置為‘1’,將相應的口設置為模擬功能。
回復

使用道具 舉報

地板
ID:94031 發表于 2019-5-9 13:59 | 只看該作者
傳統51是不帶AD的,你得說明你用的是什么型號的單片機。
回復

使用道具 舉報

5#
ID:123289 發表于 2019-5-9 15:33 | 只看該作者
1、端口號改一下。(定義P1.7的變量改定義為P1.6)
2、采樣通道號改一下。(采樣命令下達的命令代碼由通道7改為通道6)
回復

使用道具 舉報

6#
ID:213173 發表于 2019-5-9 15:58 | 只看該作者
改這樣P1.6或P1.7隨便用,只要在主程序改        ADCP1STA(6);//啟動AD轉換 或 ADCP1STA(7); //啟動AD轉換

  1. #include <reg52.h>

  2. sfr ADC_CONTR = 0XBC;        //轉換控制寄存器
  3. sfr ADC_RES = 0XBD;                //轉換結果高8位
  4. sfr ADC_LOW2 = 0XBE;        //轉換結果低2位
  5. sfr P1ASF = 0X9D;                        //I/O口模式

  6. #define ADC_POWER 0X80                //電源位
  7. #define ADC_FLAG         0X10                //標置位
  8. #define ADC_START 0X08                //開啟位

  9. //=======延時============
  10. void ADdelay(unsigned char i)
  11. {
  12.         while(i--);
  13. }
  14. //=======初始化=========
  15. void InitADC()
  16. {
  17.         P1M1 = 0xc0;                                 //設置P1.6,P1.7高阻
  18.         P1M0 = 0x00;
  19.         P1ASF=0xC0;                                    //設P1.6和P1.7為ADC轉換
  20.         ADC_RES=0;
  21.         ADC_CONTR=ADC_POWER; //啟動ADC電源
  22.         ADdelay(200);       
  23. }
  24. //=======P1AD轉換啟動=======
  25. void ADCP1STA(unsigned char lch)
  26. {
  27.         ADC_CONTR=ADC_POWER|ADC_START|lch; //選擇一路啟動轉換采集
  28. }
  29. //=======獲取轉換結果=======
  30. unsigned char GetADC(void)
  31. {
  32.         while(!(ADC_CONTR&ADC_FLAG));
  33.         ADC_CONTR&=~ADC_FLAG;      //停止AD轉換
  34.         return ADC_RES;
  35. }
復制代碼
回復

使用道具 舉報

7#
ID:155507 發表于 2019-5-9 19:04 | 只看該作者
//頭文件:
#include <reg52.h>
#include "SMG4.h"
#include "STCADC.h"

//常量表                               
code unsigned char tempbuf[] ={188,186,184,181,179,177,175,172,170,168,166,165,164,163,
                                                                                                                                161,158,155,152,149,146,143,139,136,133,130,128,125,122,
                                                                                                                                119,117,115,112,110,108,105,103,101,99,97,95,93,91,89,87,
                                                                                                                                85,83,81,79,77,76,74};                //0~50度的對應值,通過熱敏電阻的B值表計算所得
//變量定義
unsigned char ly_temp=0;                        //保存溫度值

//主函數       
void main(void)  
{
        unsigned char i;
        InitADC();
               
        while(1){               
                ADCP1STA(7);                      //啟動AD轉換  <------ 想改成P1.6的要改成ADCP1STA(6)才有效
                ly_temp=GetADC();                        //讀取AD轉換值
               
                for(i=0;i<50;i++)                        //比較獲得正確的溫度值
                {
                        if(ly_temp>tempbuf[i])
                                break;
                }
                ly_temp=--i;
                       
                ly_SMGcp[2]=1;          //在第三位數碼上顯示點       
                ly_SMGbuf[2]=11;        //顯示單位C
                ly_SMGbuf[3]=10;        //第四位不顯示
               
                ly_SMGbuf[0]=ly_temp/10;                //溫度的十位和個位分開                       
                ly_SMGbuf[1]=ly_temp%10;
                       
                DisPlayS(10000);        //調用顯示函數
        }
}

回復

使用道具 舉報

8#
ID:17109 發表于 2019-5-9 23:48 來自觸屏版 | 只看該作者
angmall 發表于 2019-5-9 19:04
//頭文件:
#include
#include "SMG4.h"

師傅你好這個溫度計能測0~50度能否可以修改增加到99度嗎
回復

使用道具 舉報

9#
ID:155507 發表于 2019-5-10 06:40 | 只看該作者
ll13536121668 發表于 2019-5-9 23:48
師傅你好這個溫度計能測0~50度能否可以修改增加到99度嗎

可以修改

//        MF52E 10K at 25, B = 3950, ADC = 12 bits
u16 code temp_table[]={
                140,        //;-40        0
                149,        //;-39        1
                159,        //;-38        2
                168,        //;-37        3
                178,        //;-36        4
                188,        //;-35        5
                199,        //;-34        6
                210,        //;-33        7
                222,        //;-32        8
                233,        //;-31        9
                246,        //;-30        10
                259,        //;-29        11
                272,        //;-28        12
                286,        //;-27        13
                301,        //;-26        14
                317,        //;-25        15
                333,        //;-24        16
                349,        //;-23        17
                367,        //;-22        18
                385,        //;-21        19
                403,        //;-20        20
                423,        //;-19        21
                443,        //;-18        22
                464,        //;-17        23
                486,        //;-16        24
                509,        //;-15        25
                533,        //;-14        26
                558,        //;-13        27
                583,        //;-12        28
                610,        //;-11        29
                638,        //;-10        30
                667,        //;-9        31
                696,        //;-8        32
                727,        //;-7        33
                758,        //;-6        34
                791,        //;-5        35
                824,        //;-4        36
                858,        //;-3        37
                893,        //;-2        38
                929,        //;-1        39
                965,        //;0        40
                1003,        //;1        41
                1041,        //;2        42
                1080,        //;3        43
                1119,        //;4        44
                1160,        //;5        45
                1201,        //;6        46
                1243,        //;7        47
                1285,        //;8        48
                1328,        //;9        49
                1371,        //;10        50
                1414,        //;11        51
                1459,        //;12        52
                1503,        //;13        53
                1548,        //;14        54
                1593,        //;15        55
                1638,        //;16        56
                1684,        //;17        57
                1730,        //;18        58
                1775,        //;19        59
                1821,        //;20        60
                1867,        //;21        61
                1912,        //;22        62
                1958,        //;23        63
                2003,        //;24        64
                2048,        //;25        65
                2093,        //;26        66
                2137,        //;27        67
                2182,        //;28        68
                2225,        //;29        69
                2269,        //;30        70
                2312,        //;31        71
                2354,        //;32        72
                2397,        //;33        73
                2438,        //;34        74
                2479,        //;35        75
                2519,        //;36        76
                2559,        //;37        77
                2598,        //;38        78
                2637,        //;39        79
                2675,        //;40        80
                2712,        //;41        81
                2748,        //;42        82
                2784,        //;43        83
                2819,        //;44        84
                2853,        //;45        85
                2887,        //;46        86
                2920,        //;47        87
                2952,        //;48        88
                2984,        //;49        89
                3014,        //;50        90
                3044,        //;51        91
                3073,        //;52        92
                3102,        //;53        93
                3130,        //;54        94
                3157,        //;55        95
                3183,        //;56        96
                3209,        //;57        97
                3234,        //;58        98
                3259,        //;59        99
                3283,        //;60        100
                3306,        //;61        101
                3328,        //;62        102
                3351,        //;63        103
                3372,        //;64        104
                3393,        //;65        105
                3413,        //;66        106
                3432,        //;67        107
                3452,        //;68        108
                3470,        //;69        109
                3488,        //;70        110
                3506,        //;71        111
                3523,        //;72        112
                3539,        //;73        113
                3555,        //;74        114
                3571,        //;75        115
                3586,        //;76        116
                3601,        //;77        117
                3615,        //;78        118
                3628,        //;79        119
                3642,        //;80        120
                3655,        //;81        121
                3667,        //;82        122
                3679,        //;83        123
                3691,        //;84        124
                3702,        //;85        125
                3714,        //;86        126
                3724,        //;87        127
                3735,        //;88        128
                3745,        //;89        129
                3754,        //;90        130
                3764,        //;91        131
                3773,        //;92        132
                3782,        //;93        133
                3791,        //;94        134
                3799,        //;95        135
                3807,        //;96        136
                3815,        //;97        137
                3822,        //;98        138
                3830,        //;99        139
                3837,        //;100        140
                3844,        //;101        141
                3850,        //;102        142
                3857,        //;103        143
                3863,        //;104        144
                3869,        //;105        145
                3875,        //;106        146
                3881,        //;107        147
                3887,        //;108        148
                3892,        //;109        149
                3897,        //;110        150
                3902,        //;111        151
                3907,        //;112        152
                3912,        //;113        153
                3917,        //;114        154
                3921,        //;115        155
                3926,        //;116        156
                3930,        //;117        157
                3934,        //;118        158
                3938,        //;119        159
                3942        //;120        160
};
回復

使用道具 舉報

10#
ID:17109 發表于 2019-5-10 12:39 來自觸屏版 | 只看該作者
angmall 發表于 2019-5-10 06:40
可以修改

//        MF52E 10K at 25, B = 3950, ADC = 12 bits

師傅能上傳上面這條代碼的,打包好的源程序嗎謝謝!
回復

使用道具 舉報

11#
ID:155507 發表于 2019-5-10 17:31 | 只看該作者
ll13536121668 發表于 2019-5-10 12:39
師傅能上傳上面這條代碼的,打包好的源程序嗎謝謝!

打包好的源程序

NTC測溫度-C和匯編.zip

91.5 KB, 下載次數: 188

回復

使用道具 舉報

12#
ID:17109 發表于 2019-5-11 11:12 | 只看該作者
angmall 發表于 2019-5-10 17:31
打包好的源程序

師傅上傳一個1寸時鐘的資料給你看看,帶有四位LED的數字鐘,帶兩只按鍵可以切換NTC溫度計顯示的,測溫很準,程序里面看不到有NTC阻值表,看看能不能把NTC溫度修改分離充電就顯示溫度計
回復

使用道具 舉報

13#
ID:17109 發表于 2019-5-11 11:14 | 只看該作者
師傅上傳一個1寸時鐘的資料給你看看,帶有四位LED的數字鐘,帶兩只按鍵可以切換NTC溫度計顯示的,測溫很準,程序里面看不到有NTC阻值表,看看能不能把NTC溫度修改分離充電就顯示溫度計

1寸時鐘資料.rar

810.12 KB, 下載次數: 86

回復

使用道具 舉報

14#
ID:17109 發表于 2019-5-11 11:15 | 只看該作者
本帖最后由 ll13536121668 于 2019-5-11 17:15 編輯
angmall 發表于 2019-5-10 17:31
打包好的源程序

師傅上傳一個1寸時鐘的資料給你看看,帶有四位LED的數字鐘,帶兩只按鍵可以切換NTC溫度計顯示的,測溫很準,程序里面看不到有NTC阻值表,看看能不能把NTC溫度修改分離充電就顯示溫度計
回復

使用道具 舉報

15#
ID:149451 發表于 2019-5-12 07:28 | 只看該作者
我覺得12樓的靠譜,不錯的........
回復

使用道具 舉報

16#
ID:17109 發表于 2019-5-12 18:43 來自觸屏版 | 只看該作者
angmall 發表于 2019-5-10 17:31
打包好的源程序

師博修改成顯示溫度的可以嗎上傳看看
回復

使用道具 舉報

17#
ID:79544 發表于 2019-6-24 16:14 | 只看該作者
學習啦。。。。。。。。。。。
回復

使用道具 舉報

18#
ID:171556 發表于 2019-6-25 16:14 | 只看該作者
公式計算方便地
回復

使用道具 舉報

19#
ID:573568 發表于 2019-10-11 08:59 | 只看該作者
學習一下,正好在弄這方面的。
回復

使用道具 舉報

20#
ID:361422 發表于 2020-2-24 16:00 | 只看該作者
謝謝各位師傅,學習了
回復

使用道具 舉報

21#
ID:697350 發表于 2020-2-26 11:28 | 只看該作者

謝謝各位師傅,長見識 了。
回復

使用道具 舉報

22#
ID:725316 發表于 2020-5-10 09:45 | 只看該作者
大家好,我用P1.6腳作ADC輸出,測P1其余腳均只有1.1V左右,無法作作I/O腳用,請問怎么解決?
回復

使用道具 舉報

23#
ID:725316 發表于 2020-5-10 09:54 | 只看該作者
大家好,請問P1口其他腳可以作I/O腳用嗎?
回復

使用道具 舉報

24#
ID:725316 發表于 2020-5-10 09:56 | 只看該作者
775144281 發表于 2020-2-26 11:28
謝謝各位師傅,長見識 了。

新手報到!請各位高手指教
回復

使用道具 舉報

25#
ID:741634 發表于 2020-5-10 13:29 | 只看該作者
謝謝各位師傅,又漲了一點見識
回復

使用道具 舉報

26#
ID:748312 發表于 2020-5-10 14:25 | 只看該作者
謝謝分享資料
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久久久久婷婷天堂 | 超碰97人人人人人蜜桃 | 神马九九| 国产一区二区三区视频免费观看 | 99影视 | 日本成人在线免费视频 | 国产二区在线播放 | 国产探花在线精品一区二区 | 99国产精品99久久久久久 | 成人一区二区电影 | 日韩精品视频在线观看一区二区三区 | 91就要激情| 成人免费影院 | 在线精品亚洲欧美日韩国产 | 国产欧美视频一区二区三区 | 成年人网站免费视频 | 中文在线播放 | 久久网日本 | 视频在线观看一区 | 国产精品久久久久久久久大全 | 午夜国产羞羞视频免费网站 | 久久久久久国产精品 | 国产精品99久久久久久久vr | 国产一区二区精品在线 | 美日韩精品| 三级av网址 | www.亚洲成人网| 日韩电影中文字幕 | 久久精品国产一区二区电影 | 精品一区久久 | 伊人二区| 国产美女在线观看 | 欧美一级二级视频 | 国产欧美综合在线 | 国产精品夜夜春夜夜爽久久电影 | 国产99精品| 成人九区 | 亚洲欧美日韩国产 | 久久久无码精品亚洲日韩按摩 | 殴美一级片| 91麻豆精品一区二区三区 |