stm32之传感器DHT11.zip
标签:
•
文件类型: .zip
•
文件大小: 1.55MB
•
下载次数: 1
•
stm32开发之传感器DHT11,读取温度和湿度
,包括proteus仿真程序以及keil程序(没什么好说的了)
,包括proteus仿真程序以及keil程序(没什么好说的了)
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-03-22 16:05 Keil5
文件 0 2020-03-10 11:37 Keil5LED.uvmpw
文件 94435 2020-03-22 16:05 Keil5LED1.uvguix.摄心为戒
文件 20251 2020-03-22 14:04 Keil5LED1.uvoptx
文件 19212 2020-03-14 15:46 Keil5LED1.uvprojx
目录 0 2020-03-18 11:11 Keil5Listings
文件 73729 2020-03-22 14:06 Keil5ListingsLED1.map
文件 68267 2020-03-22 13:55 Keil5Listingsstartup_stm32f401xx.lst
文件 7505 2020-03-23 16:28 Keil5main.c
目录 0 2020-03-22 14:06 Keil5objects
文件 344648 2020-03-22 13:55 Keil5objectsexti_stm32f4xx.crf
文件 1939 2020-03-22 13:55 Keil5objectsexti_stm32f4xx.d
文件 342960 2020-03-22 13:55 Keil5objectsexti_stm32f4xx.o
文件 263936 2020-03-22 14:06 Keil5objectsLED1.axf
文件 4116 2020-03-22 14:06 Keil5objectsLED1.build_log.htm
文件 6290 2020-03-22 14:06 Keil5objectsLED1.hex
文件 21 2020-03-22 14:09 Keil5objectsLED1.hex.asm
文件 46133 2020-03-22 14:06 Keil5objectsLED1.htm
文件 520 2020-03-22 14:06 Keil5objectsLED1.lnp
文件 494 2020-03-11 22:27 Keil5objectsLED1.sct
文件 16623 2020-03-22 14:06 Keil5objectsLED1_Target 1.dep
文件 312876 2020-03-22 14:06 Keil5objectsmain.crf
文件 1522 2020-03-22 14:06 Keil5objectsmain.d
文件 332280 2020-03-22 14:06 Keil5objectsmain.o
文件 306826 2020-03-22 13:55 Keil5objectsmisc.crf
文件 1631 2020-03-22 13:55 Keil5objectsmisc.d
文件 319680 2020-03-22 13:55 Keil5objectsmisc.o
文件 79 2020-03-22 13:55 Keil5objectsstartup_stm32f401xx.d
文件 6920 2020-03-22 13:55 Keil5objectsstartup_stm32f401xx.o
文件 307293 2020-03-22 13:55 Keil5objectsstm32f4xx_exti.crf
文件 1831 2020-03-22 13:55 Keil5objectsstm32f4xx_exti.d
............此处省略27个文件信息
#include //单片机工程可以不用
#include //这个头文件一定要包含 ---这个头文件官方帮我们定义好了所有寄存器的地址
#define LCD_RS GPIO_Pin_0
#define LCD_RW GPIO_Pin_1
#define LCD_EA GPIO_Pin_2
int Tem = 8;
int Hum;
unsigned char table[]=“Tem 00 Hum 00“;
/*----systick定时器模块,用于精准延时------------------------------------------------------------------*/
void systick_init(void)
{
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
}
void delay_us(unsigned int us)
{
unsigned int set_time = us*84;//得到设定值 us*84<16777215 us<199728
unsigned int tmp;
//初始化
SysTick->LOAD = set_time;//把当前获取需要的延时的时间设定值丢给LOAD寄存器 24bit
SysTick->VAL = 0;//先清空计数器的当前值 写0 之后再开启定时器后 会将LOAD的设定值自动装载进VAL
//开滴答定时器
SysTick->CTRL |= 0x01;//给最低位1 开滴答定时器
while(1)
{
tmp = SysTick->CTRL;//读取
//只要该条件为非零 就表示已经递减计数到0
if(tmp & 0x10000)
{
break;//跳出
}
}
SysTick->VAL = 0;//把计数值清零
SysTick->CTRL &= (~0x01) ;//关闭定时器 0xFFFFFFFE 1110
//0|任何位不会改变该位
//1|任何位都会变为1
}
void delay_ms(unsigned int ms)
{
unsigned int set_time = ms*84000;//得到设定值 us*84000<16777215 us<199.728 最高这一次延时
unsigned int tmp;
//初始化
SysTick->LOAD = set_time;//把当前获取需要的延时的时间设定值丢给LOAD寄存器 24bit
SysTick->VAL = 0;//先清空计数器的当前值 写0 之后再开启定时器后 会将LOAD的设定值自动装载进VAL
//开滴答定时器
SysTick->CTRL |= 0x01;//给最低位1 开滴答定时器
while(1)
{
tmp = SysTick->CTRL;//读取
//只要该条件为非零 就表示已经递减计数到0
if(tmp & 0x10000)
{
break;//跳出
}
}
SysTick->VAL = 0;//把计数值清零
SysTick->CTRL &= (~0x01) ;//关闭定时器 0xFFFFFFFE 1110
//0|任何位不会改变该位
//1|任何位都会变为1
}
void delay_s(unsigned int s)
{
while(--s)
{
delay_ms(100);
delay_ms(100);
delay_ms(100);
delay_ms(100);
delay_ms(100);
delay_ms(100);
delay_ms(100);
delay_ms(100);
delay_ms(100);
delay_ms(100);
}
}
/*----DHT11传感器模块,读取温度和湿度------------------------------------------------------------------*/
void GPIO_INIT(void)
{
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC ENABLE);
GPIO_InitTypeDef aaa;
aaa.GPIO_Pin = GPIO_Pin_All;//引脚号选择 PA0 也要按照官方的填法 怎么填 去头文件 stm32f4xx_gpio.h
aaa.GPIO_Mode = GPIO_Mode_OUT;//输出模式
aaa.GPIO_OType = GPIO_OType_PP;//推挽输出
aaa.GPIO_Speed = GPIO_High_Speed;//高速
//写入
GPIO_Init(GPIOC&aaa);//&
//控制引脚
GPIO_WriteBit(GPIOC GPIO_Pin_All 1);
}
//初始化PD0为输出模式
void DATAPin_ModeOut(void)
{
GPIO_InitTypeDef aaa;//定义一个结构体变量
//1、使能指定的GPIO模块时钟--默认复位后开机时钟不会全部提供给各个模块 使用时需要自己开启
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD ENABLE);
//2、初始化引脚
aaa.GPIO_Pin = GPIO_Pin_0;//引脚号选择 PA0 也要按照官方的填法 怎么填 去头文件 stm32f4xx_gpio.h
aaa.GPIO_Mode = GPIO_Mode_OUT;//输出模式
aaa.GPIO_OType = GPIO_OType_PP;//推挽输出 低功率设备驱动
aaa.GPIO_PuPd = GPIO_PuPd_UP;//内部上拉使能
aaa.GPIO_Speed = GPIO_High_Speed;//高速
GPIO_Init(GPIOD&aaa);//&
}
//初始化PD0为输入模式
void DATAPin_ModeIn(void)
{
GPIO_InitTypeDef aaa;//定义一个结构体变量
//1、使能指定的GPIO模块时钟--默认复位后开机时钟不会全部提供给各个模块 使用时需要自己开启
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_G
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-03-22 16:05 Keil5
文件 0 2020-03-10 11:37 Keil5LED.uvmpw
文件 94435 2020-03-22 16:05 Keil5LED1.uvguix.摄心为戒
文件 20251 2020-03-22 14:04 Keil5LED1.uvoptx
文件 19212 2020-03-14 15:46 Keil5LED1.uvprojx
目录 0 2020-03-18 11:11 Keil5Listings
文件 73729 2020-03-22 14:06 Keil5ListingsLED1.map
文件 68267 2020-03-22 13:55 Keil5Listingsstartup_stm32f401xx.lst
文件 7505 2020-03-23 16:28 Keil5main.c
目录 0 2020-03-22 14:06 Keil5ob
文件 344648 2020-03-22 13:55 Keil5ob
文件 1939 2020-03-22 13:55 Keil5ob
文件 342960 2020-03-22 13:55 Keil5ob
文件 263936 2020-03-22 14:06 Keil5ob
文件 4116 2020-03-22 14:06 Keil5ob
文件 6290 2020-03-22 14:06 Keil5ob
文件 21 2020-03-22 14:09 Keil5ob
文件 46133 2020-03-22 14:06 Keil5ob
文件 520 2020-03-22 14:06 Keil5ob
文件 494 2020-03-11 22:27 Keil5ob
文件 16623 2020-03-22 14:06 Keil5ob
文件 312876 2020-03-22 14:06 Keil5ob
文件 1522 2020-03-22 14:06 Keil5ob
文件 332280 2020-03-22 14:06 Keil5ob
文件 306826 2020-03-22 13:55 Keil5ob
文件 1631 2020-03-22 13:55 Keil5ob
文件 319680 2020-03-22 13:55 Keil5ob
文件 79 2020-03-22 13:55 Keil5ob
文件 6920 2020-03-22 13:55 Keil5ob
文件 307293 2020-03-22 13:55 Keil5ob
文件 1831 2020-03-22 13:55 Keil5ob
............此处省略27个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)