数字温度计keil代码和proteus仿真图
时间: 2024-03-31 09:36:36 浏览: 78
数字温度计代码
以下是一个基于STM32F103C8T6的数字温度计的Keil代码和Proteus仿真图。
Keil代码:
```c
#include "stm32f10x.h"
#include "stdio.h"
#include "stdlib.h"
#include "delay.h"
#include "lcd1602.h"
#include "ds18b20.h"
#define DS18B20_GPIO GPIOA
#define DS18B20_GPIO_PIN GPIO_Pin_1
int main(void)
{
float temp;
char temp_str[16];
SystemInit();
delay_init(72);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
LCD_Init();
DS18B20_Init(DS18B20_GPIO, DS18B20_GPIO_PIN);
while (1)
{
temp = DS18B20_GetTemp();
sprintf(temp_str, "%.1fC", temp);
LCD_ShowString(0, 0, "Temp:");
LCD_ShowString(5, 1, temp_str);
delay_ms(1000);
}
}
```
Proteus仿真图:
![Proteus仿真图](https://img-blog.csdn.net/20180514200656865?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3JlYWxseWluZ19qaWFu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/80)
注:DS18B20使用单总线协议,连接在PA1引脚上。LCD1602显示温度,连接在STM32的I2C总线上。
阅读全文