当前位置:网站首页>【开源工程】STM32C8T6+ADC信号采集+OLED波形显示
【开源工程】STM32C8T6+ADC信号采集+OLED波形显示
2022-07-25 18:41:00 【perseverance52】
【开源工程】STM32C8T6+ADC信号采集+OLED波形显示
- 通过手指皮肤接触探测输入引脚:
PA7
PA8引脚上的方波输出
PB13引脚上的方波输出
PB13和PA8:互补型方波输出引脚
硬件搭建
- OLED屏幕:可以是0.96寸屏幕或者是1.3寸 IIC接口的OLED屏幕
STM32F103C8T6最新系统板一块- 若干导线
工程架构

接线说明
ADC检测引脚:PA7,相关定义在BSP_ADC.h
OLED IIC引脚定义:bsp_i2c_gpio.h
SDA --- PA3
SCL --- PA2
PWM方波输出引脚:BSP_ADVANCED_TIMER.h
PB13和PA8:互补型方波输出引脚,
PB12:低电平
0.96寸屏幕和1.3寸屏幕驱动细节差异说明
在
OLED_I2C.c文件中
- 清屏函数
void OLED_CLS(void)//清屏
{
uint8_t i,j;
for(i=0;i<8;i++)
{
WriteCmd(0xb0+i); //page0-page8
WriteCmd(0x02); //low column start address1.3寸屏幕发送地址是从0x02开始的,0.96屏幕是从0x00地址开始的特别注意个地方!!!!
WriteCmd(0x10); //high column start address
for(j=0;j<128;j++)
{
DataBuffer[i][j]=0x00;
}
}
Write_DataBuffer();
}
- 初始化函数
void OLED_Init(void)
{
i2c_CfgGpio(); /*I2C总线的GPIO初始化*/
Delay_ms(1000); // 1s,这里的延时很重要,上电后延时,没有错误的冗余设计
WriteCmd(0xAE); //display off
WriteCmd(0x20); //Set Memory Addressing Mode
WriteCmd(0x10); //00,Horizontal Addressing Mode;01,Vertical Addressing Mode;10,Page Addressing Mode (RESET);11,Invalid
WriteCmd(0xb0); //Set Page Start Address for Page Addressing Mode,0-7
WriteCmd(0xc8); //Set COM Output Scan Direction
WriteCmd(0x02); //---set low column address1.3寸屏幕发送地址是从0x02开始的,0.96屏幕是从0x00地址开始的
WriteCmd(0x10); //---set high column address
WriteCmd(0x40); //--set start line address
WriteCmd(0x81); //--set contrast control register
WriteCmd(0xff); //亮度调节 0x00~0xff
WriteCmd(0xa1); //--set segment re-map 0 to 127
WriteCmd(0xa6); //--set normal display
WriteCmd(0xa8); //--set multiplex ratio(1 to 64)
WriteCmd(0x3F); //
WriteCmd(0xa4); //0xa4,Output follows RAM content;0xa5,Output ignores RAM content
WriteCmd(0xd3); //-set display offset
WriteCmd(0x00); //-not offset
WriteCmd(0xd5); //--set display clock divide ratio/oscillator frequency
WriteCmd(0xf0); //--set divide ratio
WriteCmd(0xd9); //--set pre-charge period
WriteCmd(0x22); //
WriteCmd(0xda); //--set com pins hardware configuration
WriteCmd(0x12);
WriteCmd(0xdb); //--set vcomh
WriteCmd(0x20); //0x20,0.77xVcc
WriteCmd(0x8d); //--set DC-DC enable
WriteCmd(0x14); //
WriteCmd(0xaf); //--turn on oled panel
}
本代码默认采用的是1.3寸的屏幕驱动显示
资源链接
0C币,0积分,无套路!,0C币,0积分,无套路!,0C币,0积分,无套路!,重要的事情说三遍。
- 带引脚说明注释版
链接:https://pan.baidu.com/s/1uGAJVJs7Z1E4Mb2FSrRGFw
提取码:mrdp
边栏推荐
- Automatic machine learning library: Tpot の learning notes
- You can change this value on the server by setting the 'Max_ allowed_ Packet 'variable error
- Repair process of bad blocks of primary standby database
- Project: serial port receiving RAM storage TFT display (complete design)
- MySQL index optimization introduction
- Software testing -- common testing tools
- 15. Simple salary management system design
- 「跨链互连智能合约」解读
- JVM基础和问题分析入门笔记
- [QNX Hypervisor 2.2用户手册]9.4 dryrun
猜你喜欢

#yyds干货盘点# 面试必刷TOP101:反转链表

关爱一线防疫工作者,浩城嘉业携手高米店街道办事处共筑公益长城

Ceres curve fitting

一周活动速递|深入浅出第8期;Meetup成都站报名进行中

Practice of RTC performance automation tool in memory optimization scenario

CircleIndicator组件,使指示器风格更加多样化

What is the difference between GB and gib disk space units?

从目标检测到图像分割简要发展史

Combined with GHS multi, use Reza E1 simulator to realize the simulation and debugging of Reza rh850 single chip microcomputer

韩国AI团队抄袭震动学界!1个导师带51个学生,还是抄袭惯犯
随机推荐
Osmosis通过与Axelar和Moonbeam的集成将跨链足迹扩展至波卡
单臂路由实验演示(Huawei路由器设备配置)
2022 Robocom 省赛题解
工程师必看的示波器探头安全使用说明书
《21天精通TypeScript-4》-类型推断与语义检查
关爱一线防疫工作者,浩城嘉业携手高米店街道办事处共筑公益长城
中信证券低佣金开户免5是真的吗,安全吗
可视化模型网络连接
JVM基础和问题分析入门笔记
15. Simple salary management system design
Is it true that CITIC Securities' low commission account opening is free of 5? Is it safe
Advanced software testing - test classification
分享六个实用的小程序插件
Save the image with gaussdb (for redis), and the recommended business can easily reduce the cost by 60%
Detailed introduction and application of GaN (comprehensive and complete)
ZFS - 01 - basic operations of creating and expanding zpool
ServletConfig class and ServletContext class
Project: serial port receiving RAM storage TFT display (complete design)
通讯录(一)
Dachang cloud business adjustment, a new round of war turn