
#第九届立创电赛#桌面温湿度检测显示仪表-V1.0
简介
主控stm32F103C8设计的桌面温湿度计。
简介:主控stm32F103C8设计的桌面温湿度计。开源协议
:GPL 3.0
描述
* 1、项目功能介绍
一、板载两个用户按键(可自定义)
一个系统复位按键,
USB公母头,当插在电脑上可以外接USB设备。
方便携带,可以插在任意设备的USBA中…
使用0.87寸128*32分辨率的OLED屏幕,阳光下显示同样可以有较高的视觉效果。
使用传感器模块,方便焊接。
*2、项目属性
本项目为个人自创设计,目的是记录学习,同时分享技术经验。
代码可以自行下载修改。
* 3、开源协议
GPL3.0
*4、硬件部分
一、供电单元(USB公头输入,母头输出,ldo降压)
+
二、OLED显示
模块使用0.87寸oled显示,如图
三、MCU最小系统电路
单片机工作的最基本电路原理图,以及电气连线。包括MCU主控,晶振电路,复位电路和滤波电容,以及程序运行选择电阻。
四、用户自定义按键
,使用按键做输入设备,进行屏幕UI的交互。
五、温度采集单元
,选用模块化温湿度传感器,方便焊接。
*5、软件部分
屏幕显示主要内容
OLED_DisplayTurn(1);//0正常显示 1 屏幕镜像显示 2 屏幕镜像显示 3 屏幕翻转显示
OLED_Refresh();
OLED_ShowChinese(5,0,14,16,1); //16*16 第
OLED_ShowChinese(22,0,15,16,1); //16*16 九
OLED_ShowChinese(39,0,16,16,1); //16*16 届
OLED_ShowChinese(56,0,17,16,1); //16*16 立
OLED_ShowChinese(73,0,18,16,1); //16*16 创
OLED_ShowChinese(90,0,19,16,1); //16*16 电
OLED_ShowChinese(107,0,20,16,1); //16*16 赛
OLED_ShowChinese(32,16,11,16,1); //16*16 温
OLED_ShowChinese(49,16,13,16,1); //16*16 湿
OLED_ShowChinese(66,16,12,16,1); //16*16 度
OLED_ShowChinese(83,16,21,16,1); //16*16 计
以下为oled驱动部分。 OLED_WR_Byte(0xAE,OLED_CMD); /*display off*/
OLED_WR_Byte(0x00,OLED_CMD); /*set lower column address*/
OLED_WR_Byte(0x10,OLED_CMD); /*set higher column address*/
OLED_WR_Byte(0x40,OLED_CMD); /*set display start line*/
OLED_WR_Byte(0xB0,OLED_CMD); /*set page address*/
OLED_WR_Byte(0x81,OLED_CMD); /*contract control*/
OLED_WR_Byte(0xc5,OLED_CMD); /*128*/
OLED_WR_Byte(0xA1,OLED_CMD); /*set segment remap 0XA0*/
OLED_WR_Byte(0xA6,OLED_CMD); /*normal / reverse*/
OLED_WR_Byte(0xA8,OLED_CMD); /*multiplex ratio*/
OLED_WR_Byte(0x1F,OLED_CMD); /*duty = 1/32*/
OLED_WR_Byte(0xC0,OLED_CMD); /*Com scan direction 0XC0 */
OLED_WR_Byte(0xD3,OLED_CMD); /*set display offset*/
OLED_WR_Byte(0x00,OLED_CMD); /* 0x20 */
OLED_WR_Byte(0xD5,OLED_CMD); /*set osc division*/
OLED_WR_Byte(0x80,OLED_CMD);
OLED_WR_Byte(0xD9,OLED_CMD); /*set pre-charge period*/
OLED_WR_Byte(0x22,OLED_CMD); /*0x22*/
OLED_WR_Byte(0xDA,OLED_CMD); /*set COM pins*/
OLED_WR_Byte(0x12,OLED_CMD);
OLED_WR_Byte(0xdb,OLED_CMD); /*set vcomh*/
OLED_WR_Byte(0x20,OLED_CMD);
OLED_WR_Byte(0x8d,OLED_CMD); /*set vcomh*/
OLED_WR_Byte(0x15,OLED_CMD); /* Set_Charge_Pump 0x14:9v; 0x15 7.5v */
OLED_Clear();
OLED_WR_Byte(0xAF,OLED_CMD); /*display ON*/
*6、BOM清单
见附件
*7、大赛LOGO验证
* 8、演示您的项目并录制成视频上传
见附件视频。
设计图

BOM


评论