標(biāo)題:
基于stm32f103c8t6的智能臺燈源碼
[打印本頁]
作者:
wulikanhua
時(shí)間:
2018-6-8 11:07
標(biāo)題:
基于stm32f103c8t6的智能臺燈源碼
用到的模塊:
紅外遙控 、OLED 屏幕(iic)、ds1302時(shí)鐘模塊、超聲波測距模塊、dht11溫濕度模塊、錄音模塊、MP3模塊、蜂鳴器、LED燈、BH1750光強(qiáng)模塊。
功能:紅外遙控通過pwm波控制LED燈的不同的亮度,外加光強(qiáng)模塊調(diào)節(jié)亮度,OLED 屏幕顯示時(shí)間、溫濕度、可以設(shè)置起床鬧鐘,超聲波測距測量離燈的距離,具有防近視的功能,有語音提示注意保持坐姿,可以通過錄音模塊自己錄制,還增加了MP3播放功能等。
具體代碼在壓縮包中,這里只提供了主函數(shù)的程序。
Keil代碼下載:
智能臺燈.rar
(327.9 KB, 下載次數(shù): 326)
2018-6-9 03:32 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
stm32單片機(jī)源碼:
#include "stm32f10x.h"
#include "gpio.h"
#include "systick.h"
#include "dh11.h"
#include "iic_BH1750.h"
#include "iic.h"
#include "USART.H"
#include "timer3_pwm.h"
#include "timer.h"
#include "timer2.h"
#include "remote.h"
#include "OLED_I2C.h"
#include "wave.h"
#include "RTC.h"
u8 key_date = 0;
int main()
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);
timer_config();
timertwo_confing();
LED_EXTI_cfg();
LED_NVIC_cfg();
timer3_pwm_config(); //調(diào)節(jié)燈的亮度 PA6
I2C_Configuration(); //iic的配置 PB6 -- SCL; PB7 -- SDA
OLED_Init(); //顯示屏的初始化
Remote_Init(); //紅外接收初始化
LED_config(); //燈的初始化 燈PB0 人體紅外PB1
DHT11_Init(); //溫濕度的初始化 PA11溫濕度傳感器
DS1302_config(); //時(shí)鐘模塊的配置 CLK/SCK PB0 DAT/IO PA1 RST PA7
IIC_Init(); //iic初始化 GPIOB14(SCL),GPIOB15(SDA)
OLED_CLS(); //清屏
wave_config(); // 超聲波的配置 tring(控制端) PA4 echo(接收端) PA5 錄音模塊 P-L PB5 P-E PB8
ds1302_init();//DS1302初始化
ds1302_write_time(); //寫入初始值
while(1)
{
BH1750_TX();//光強(qiáng)
DHT11_TX();//溫濕度
delay_ms(500);
OLED_CLS();
DS1302_TX();//時(shí)間 日期 DAT需要上拉電阻
delay_ms(500);
OLED_CLS();
// alarm_set(); //鬧鐘 8:00 PB11
LED_On_Off();//紅外控制等的開關(guān) LED PA6 紅外 PB1
key_date = Remote_Scan(); //返回按鍵值
if(key_date == 0xa2)
{
GPIO_SetBits(GPIOB,GPIO_Pin_0); //燈亮 CH-
}
else if(key_date == 0x62)
GPIO_ResetBits(GPIOB,GPIO_Pin_0); //燈滅 CH
// 燈的亮度調(diào)節(jié)
else if(key_date == 0x30) // 1
set_pwm(200);
else if(key_date == 0x18) // 2
set_pwm(600);
else if(key_date == 0x7a) // 3
set_pwm(1000);
else if(key_date == 0x10) // 4
set_pwm(1400);
else if(key_date == 0x38) // 5
set_pwm(1800);
else if(key_date == 0x5a) // 6
set_pwm(1999);
else if(key_date == 0x68) // 0
set_pwm(0);
if(key_date == 0xe2) //mp3的開關(guān) CH+
GPIO_SetBits(GPIOB,GPIO_Pin_10);
if(key_date == 0xc2)
GPIO_ResetBits(GPIOB,GPIO_Pin_10);
if(key_date == 0x90) //關(guān)閉鬧鐘
GPIO_ResetBits(GPIOB,GPIO_Pin_11);
Wave_StarMeasure(); //測距
Wave_distance();
}
}
復(fù)制代碼
作者:
w1554980424
時(shí)間:
2018-6-19 19:56
怎么用啊
作者:
w1554980424
時(shí)間:
2018-6-19 19:57
怎么使用啊,我怎么打不開
作者:
qqhuacong
時(shí)間:
2018-7-22 20:54
還沒有試驗(yàn) 可以控制風(fēng)扇吧
作者:
1251144
時(shí)間:
2018-10-18 21:43
有電路圖嗎 樓主
作者:
1251144
時(shí)間:
2018-10-18 21:45
樓主 能分享一下智能臺燈的原理圖嗎
作者:
jingboxu
時(shí)間:
2018-10-22 09:47
看起來好厲害的樣子,下來學(xué)習(xí)學(xué)習(xí)
作者:
may-DAY
時(shí)間:
2018-11-18 15:07
請問有原理圖嗎?
作者:
mythboy
時(shí)間:
2019-1-8 12:36
不錯(cuò) 看看~
作者:
1078403
時(shí)間:
2019-3-23 16:34
同問有原理圖嗎?求
作者:
zs33521
時(shí)間:
2019-3-24 22:00
學(xué)習(xí)學(xué)習(xí)
作者:
阿瑟東a
時(shí)間:
2019-7-23 16:16
頂起,蠻好用的
作者:
laylalala
時(shí)間:
2020-2-1 20:05
可以看成品的視頻嗎?
作者:
sssqqqeee
時(shí)間:
2023-6-8 23:20
有PCB文件嗎?
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1