欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

這個單片機程序為什么運行不了的 做不了仿真我用實物做的 用stc90c58ad做ad590的測溫

[復制鏈接]
跳轉到指定樓層
樓主
ID:751319 發表于 2020-5-14 00:23 來自觸屏版 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
實物就這么接的因為仿真里沒有stc90c58ad 這種內部轉換的 實物要怎么驗證呢 放大器出來ad轉換口我直接了一個還是沒反應。求大神指導啊
#include <reg52.H>
//定義與ADC有關的特殊功能寄存器
sfr ADC_CONTR =0xC5;
sfr ADC_DATA  =0xC6;
sfr ADC_LOW2  =0xBE;
sfr P1M0  =0x91;
sfr P1M1  =0x92;

sbit P24 = P0^0; //個位
sbit P25 = P0^1; //十位
sbit P26 = P0^2; //百位
sbit P27 = P0^3; //千位
sbit P07 = P2^7; //小數點

int DATA_LED[11] =
{
        0X3F,/*0*/
        0X06,/*1*/
        0X5B,/*2*/
        0X4F,/*3*/
        0X66,/*4*/
        0X6D,/*5*/
        0X7D,/*6*/
        0X07,/*7*/
        0X7F,/*8*/
        0X6F,/*9*/

        0xFF
};

void delay(int timer)                           //延時函數
{
        while(timer--);
}

void led(int n)                                                 //數碼管顯示及數據處理程序
{
//        P2 = 0x39;                                                 //C
        P2 = DATA_LED[n % 10];                  //個位         
        P07=0;
        P27 = 1;
        delay(500);
        P27 = 0;
  
        P2 = 0xFF;
        P2 = DATA_LED[n / 10 % 10];                //十位
        P07=0;
        P26 = 1;
        delay(500);
        P26 = 0;
  
        P2 = 0xFF;
        P2 = DATA_LED[n / 100 % 10];        //百位
        P07=1;
        P25 = 1;
        delay(500);
        P25 = 0;
  
        P2 = 0xff;
        P2 = DATA_LED[n / 1000 % 10];        //千位         
        P07=0;
        P24 = 1;
        delay(500);
        P24 = 0;
}

int Ad_Change(char channel)                     //AD轉換
{
        int AD_Result_Temp = 0 ;
        P1 = 0xff;                                         //將P1口置高,為A/D轉換作準備
        ADC_CONTR = ADC_CONTR|0x80;                 //1000,0000打開A/D轉換電源
        P1M0 = 0x03;                                //0000,0011用于A/D轉換的P1.x口,先設為開漏
        P1M1 = 0x03;                                //0000,0011P1.0--P1.1先設為開漏。斷開內部上拉電阻
        delay(20);                             //20

        ADC_CONTR = ADC_CONTR&0xE0;                 //1110,0000 清ADC_FLAG,ADC_START位和低3位
        ADC_CONTR = ADC_CONTR|(channel);        //設置當前通道號

        delay(1);                    //延時使輸入電壓達到穩定
        ADC_DATA = 0;                                      //清A/D轉換結果寄存器
        ADC_LOW2 = 0;
        ADC_CONTR = ADC_CONTR|0x08;                 //0000,1000ADCS = 1,啟動轉換

        do { ; }   
        while((ADC_CONTR & 0x10)==0);           //0001,0000等待A/D轉換結束

        ADC_CONTR = ADC_CONTR&0xE7;                 //1110,0111清ADC_FLAG位,停止A/D轉換
        AD_Result_Temp = 0 ;
        AD_Result_Temp = ((AD_Result_Temp|ADC_DATA)<<2)|(ADC_LOW2&0x03);
                                                                                //保存返回AD轉換的 結果
        delay(1);                            //
        return AD_Result_Temp;
}
main()
{
        int ADC_result;
        while(1)
        {
                ADC_result = Ad_Change(0);                 //通道P1.0
                ADC_result = ADC_result*4.6 ;         //顯示數值。AD轉換系數:原公式是ADC_result/(2^10)*5000mV
                led(ADC_result);led(ADC_result);led(ADC_result);
                led(ADC_result);led(ADC_result);led(ADC_result);
        }

}

2536B2FB-E7C7-4ED5-A754-6FFF998F6402.png (46.24 KB, 下載次數: 84)

2536B2FB-E7C7-4ED5-A754-6FFF998F6402.png

6C35CCF8-923C-4FA1-95E6-0B7B54FF1F69.jpeg (91.73 KB, 下載次數: 87)

6C35CCF8-923C-4FA1-95E6-0B7B54FF1F69.jpeg
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:584814 發表于 2020-5-14 09:47 | 只看該作者
實物做的沒看到你的12V和5V是怎么處理的,而且P1口為啥要并聯 ?
回復

使用道具 舉報

板凳
ID:751319 發表于 2020-5-14 11:27 來自觸屏版 | 只看該作者
12v 5v用電源模塊給電 然后傳感器輸出電流信號串聯個電阻轉換成電壓信號,并聯接一個運算放大器使得后面的放大信號電路不影響前面的傳感器信號轉換電路
回復

使用道具 舉報

地板
ID:751319 發表于 2020-5-14 11:58 來自觸屏版 | 只看該作者
這個為什么實物做不出呢
回復

使用道具 舉報

5#
ID:751319 發表于 2020-5-16 19:42 來自觸屏版 | 只看該作者
man1234567 發表于 2020-5-14 09:47
實物做的沒看到你的12V和5V是怎么處理的,而且P1口為啥要并聯 ?

12v 5v電源該怎么處理
回復

使用道具 舉報

6#
ID:751319 發表于 2020-5-16 19:43 來自觸屏版 | 只看該作者
man1234567 發表于 2020-5-14 09:47
實物做的沒看到你的12V和5V是怎么處理的,而且P1口為啥要并聯 ?

你怎么聯系 我想問你一些問題拜托了
回復

使用道具 舉報

7#
ID:213173 發表于 2020-5-16 21:37 | 只看該作者
樓主這個測溫設備有什么特殊要求?測溫范圍,精度指標。既使用高等級的傳感器ad590,又使用普通運放LM358,以及10位AD的stc90c58ad芯片,感覺檔次不搭配。你這程序確實有問題,不知你從哪里找到的參考資料。對比STC官方示例差距不小。由于手上沒有這種老芯片,無法驗證你的程序。從你的原理圖看,雖然圖中錯誤不少,但可以看出其功能挺簡單的。只是一個數顯溫度計。如果不是做高檔特殊設備,建議采用普通NTC熱敏電阻+STC8系列芯片。
回復

使用道具 舉報

8#
ID:213173 發表于 2020-5-16 22:02 | 只看該作者
昨天發給你的參考資料不知什么原因被和諧掉了。另外發一個應用實例給你參考。 -30~150度數碼管溫度計(對分查表).zip (31.12 KB, 下載次數: 16)

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表