標(biāo)題: 基于stm32的oled溫度采集源程序Proteus仿真 [打印本頁]

作者: 雨后無語    時間: 2021-4-18 16:19
標(biāo)題: 基于stm32的oled溫度采集源程序Proteus仿真
這是我最近剛做的oled仿真設(shè)計,基于proteus8.11版本(其他版本打不開的),能夠顯示溫度、調(diào)節(jié)閾值。

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


部分單片機(jī)代碼如下:

#include "sys.h"
#include "usart.h"               
#include "delay.h"        
#include "led.h"
#include "key.h"
#include "oled.h"
#include "beep.h"
#include "rtc.h"
#include "ds18b20.h"

u8 year_buf[4];
u8 month_buf[2];
u8 day_buf[2];
u8 temp_buf[4];
u8 war[8];
u8 text[8];
u8 yuzhi=30;
int main(void)
{               
        short tem,tem1;
        u8 B1_Flag=0;
        u16 temp;
        u8 key;
        delay_init();             //延時初始化
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置中斷優(yōu)先級分組為組2:2位搶占優(yōu)先級,2位響應(yīng)優(yōu)先級
  Gpio_IIC_Init();
        beep_Init();
        Key_Init();
        OLED_Init();
        delay_ms(200);
        OLED_CLS();
        OLED_Refresh();

        while(1)
        {
                tem = DS18B20_Get_Temp_Pin_11();        //獲取溫度
                if(        tem>0)
                {        
                        sprintf((char *)war,"Tem:%d%d.%d",tem/100,tem%100/10,tem%10);
                }
                else
                {        
                        tem1=(int)tem;
                        tem1=abs(tem1);
                        tem1=-(tem);
                        tem1=tem1+1;
                        sprintf((char *)war,"Tem:-%d%d.%d",tem1/100,tem1%100/10,tem1%10);
               
                }
                OLED_P8x16Str(8,2,war);

                sprintf((char *)war,"yuzhi:%d",yuzhi);
                OLED_P8x16Str(8,0,war);
                if(tem>yuzhi*10)
                {
                        PBeep=0;
                }
                if(tem<=yuzhi*10)
                {
                        PBeep=1;
                }


                key=KEY_Scan();
                if(key!=0)
                {
                        switch(key)
                        {
                                case 1:
                                                                                        yuzhi++;        
                        }

Keil代碼與Proteus8.13仿真下載:
程序.7z (230.27 KB, 下載次數(shù): 631)
仿真.zip (80.98 KB, 下載次數(shù): 673)



作者: Kevin123321    時間: 2021-5-7 13:11
找了很久終于找到了,感謝樓主!
作者: 殊榮125    時間: 2021-5-25 15:46
protues8.11的安裝包哪里找啊

作者: 51mcu    時間: 2021-6-13 21:15
仿真可以,但是實(shí)物溫度顯示為0,求大佬指導(dǎo)一下
作者: 641572636    時間: 2021-6-15 18:42
51mcu 發(fā)表于 2021-6-13 21:15
仿真可以,但是實(shí)物溫度顯示為0,求大佬指導(dǎo)一下

我的實(shí)物溫度顯示也一直為0,我以為是DS18B20壞了,然后我換了兩個都顯示不出來
作者: 51mcu    時間: 2021-7-9 12:54
641572636 發(fā)表于 2021-6-15 18:42
我的實(shí)物溫度顯示也一直為0,我以為是DS18B20壞了,然后我換了兩個都顯示不出來

試驗(yàn)了一下,是程序問題。
作者: TK加菲    時間: 2021-10-4 13:28
請問一下 元件庫里沒有OLED12864I2C怎么辦
作者: TK加菲    時間: 2021-10-4 13:29
請問一下 元件庫里沒有OLED12864I2C 怎么辦 需要去哪里下載
作者: liuyiyi    時間: 2021-12-3 15:52
樓主,提示要Proteus8.11才能打開呢
作者: 輕染    時間: 2021-12-21 19:54
TK加菲 發(fā)表于 2021-10-4 13:29
請問一下 元件庫里沒有OLED12864I2C 怎么辦 需要去哪里下載

兄弟你在元器件庫找到了嗎
作者: SJH0206    時間: 2022-4-20 20:44
為什么一打開OLED顯示日期,怎么才能顯示溫度啊
作者: zhaxiaobian_er    時間: 2022-5-1 07:43
為你的分享精神點(diǎn)贊,謝謝你。
作者: mick32    時間: 2022-5-1 17:07
Working nice with Proteus 8.12 sp0 Load 65%
Thanks for project
作者: kr2199    時間: 2022-9-24 09:30
樓主有沒有日歷時鐘的代碼

捕獲.PNG (13.08 KB, 下載次數(shù): 127)

捕獲.PNG

作者: cooldog123pp    時間: 2022-10-30 09:04
多謝分享,比較一下代碼和我自己有什么區(qū)別
作者: bikerljl23    時間: 2023-1-12 16:40
請問一下,oled的仿真文件是在哪里找的得嘞,能不能分享下嘞
作者: BenAndrew    時間: 2023-1-14 11:47
有人元器件解決了嗎

作者: 已飛的鷹    時間: 2023-4-12 12:23
641572636 發(fā)表于 2021-6-15 18:42
我的實(shí)物溫度顯示也一直為0,我以為是DS18B20壞了,然后我換了兩個都顯示不出來

程序是閹割版,程序不完整
作者: cza520    時間: 2024-3-28 21:28
51mcu 發(fā)表于 2021-6-13 21:15
仿真可以,但是實(shí)物溫度顯示為0,求大佬指導(dǎo)一下

你們解決了嗎

作者: kk17328    時間: 2024-3-29 18:38
51mcu 發(fā)表于 2021-6-13 21:15
仿真可以,但是實(shí)物溫度顯示為0,求大佬指導(dǎo)一下

你是用8.11嗎?我用8.15打開,采樣都是0,還以為是8.15不匹配。是程序的問題嗎?

作者: 有半島鐵盒    時間: 2024-4-8 22:06
TK加菲 發(fā)表于 2021-10-4 13:29
請問一下 元件庫里沒有OLED12864I2C 怎么辦 需要去哪里下載

兄弟 componentsearchengine這里可以下載模型 原理圖都可以顯示 添加入庫后 但是仿真報錯

作者: zx1314520    時間: 2024-8-29 11:22
51mcu 發(fā)表于 2021-6-13 21:15
仿真可以,但是實(shí)物溫度顯示為0,求大佬指導(dǎo)一下

我仿真也不可以,求樓主指導(dǎo)
作者: zx1314520    時間: 2024-8-29 19:23
cza520 發(fā)表于 2024-3-28 21:28
你們解決了嗎

大佬解決了嗎




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1