OLED显示秒表

2023-05-16

OLED显示秒表
#include “stm32f10x.h”
#include “sys.h”
#include “delay.h”
#include “relay.h”
#include “oled0561.h”
#include “led.h”
#include “key.h”

#include “tim.h”

extern u16 cnt;
u16 s=0;
u16 m=0;
u16 n=0;
u16 z=0;
int main (void){
delay_ms(500);
RCC_Configuration();
RELAY_Init();
LED_Init();
KEY_Init();

I2C_Configuration();

OLED0561_Init(); 
OLED_DISPLAY_8x16_BUFFER(0,"   TIM TEST     "); 

TIM3_Init(99,7199);

while(1){

s=cnt;
if(s>=10)
{
m++;cnt=0;s=0;
if (m>=10){
n++;m=0;
}
if (n>=60){
n=0;
z++;
}

}
OLED_DISPLAY_8x16(6,48,z+0x30);
  OLED_DISPLAY_8x16(6,5
8,’:’);
OLED_DISPLAY_8x16(6,68,n/10+0x30);//
OLED_DISPLAY_8x16(6,7
8,n%10+0x30);//
 OLED_DISPLAY_8x16(6,88,’:’);
 OLED_DISPLAY_8x16(6,9
8,m+0x30);
OLED_DISPLAY_8x16(6,10*8,s+0x30);//

}

}
以上是主函数,前面的函数初始化直接调用就行,为杜洋产品F1系列的已编写好的函数,在这不再赘述。主要是函数for,以及OLED的显示,也很简单。
下面附上定时器的中断函数
#include “led.h”
#include “tim.h”
u16 cnt=0;
void TIM3_Init(u16 arr,u16 psc){
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStrue;

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);
TIM3_NVIC_Init (); 
      
TIM_TimeBaseInitStrue.TIM_Period=arr; //ÉèÖÃ×Ô¶¯ÖØ×°ÔØÖµ
TIM_TimeBaseInitStrue.TIM_Prescaler=psc; //Ô¤·ÖƵϵÊý
TIM_TimeBaseInitStrue.TIM_CounterMode=TIM_CounterMode_Up; //¼ÆÊýÆ÷ÏòÉÏÒç³ö
TIM_TimeBaseInitStrue.TIM_ClockDivision=TIM_CKD_DIV1; //ʱÖӵķÖƵÒò×Ó£¬Æðµ½ÁËÒ»µãµãµÄÑÓʱ×÷Óã¬Ò»°ãÉèΪTIM_CKD_DIV1
TIM_TimeBaseInit(TIM3,&TIM_TimeBaseInitStrue); //TIM3³õʼ»¯ÉèÖÃ
TIM_ITConfig(TIM3, TIM_IT_Update, ENABLE);//ʹÄÜTIM3ÖÐ¶Ï    
TIM_Cmd(TIM3,ENABLE); //ʹÄÜTIM3

}

void TIM3_NVIC_Init (void){
NVIC_InitTypeDef NVIC_InitStructure;
NVIC_InitStructure.NVIC_IRQChannel= TIM3_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x3;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x3;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}
void TIM3_IRQHandler(void){
if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET){
TIM_ClearITPendingBit(TIM3, TIM_IT_Update);
cnt=cnt+1;

}

}
注释有点乱码不好意思,就不一个个删了,主要就是定时器中断中的cnt。
我这个秒表是精确到0.01s的,因此对定时器的初始化中TIM3_Init(99,7199);
关于这个的计算是(重装载值+1)*(预分频系数+1)/时钟频率,因为时钟频率是72MHz,所以就是100*7200等于720000,然后除以72000000等于0.01s。主要就是这样。第一次写,不好之处清多多包涵,谢谢。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OLED显示秒表 的相关文章

  • Arduino驱动oled

    1 模块介绍 I2C显示屏 xff08 驱动为ssd1306 xff0c 分辨率为128 64 xff09 Arduino nano xff08 Atmega168p xff09 2 模块连接 参考开发板管教定义图可知SCL SDA应该连接
  • 基于I2C/SPI总线的温湿度采集与OLED显示

    目录 一 STM32之基于I2C的温湿度采集 xff08 AHT20 xff09 1 I2C协议2 AHT20温湿度采集程序接线烧录效果视频 二 STM32在oled上显示文字滚动1 了解SPI xff08 串行外设接口 xff09 2 字
  • OLED显示秒表

    OLED显示秒表 include stm32f10x h include sys h include delay h include relay h include oled0561 h include led h include key
  • oled显示乱码解决方法

    有时候oled偶尔发生乱码 xff0c xff08 大多数时候正常 xff0c 偶尔乱码 原因分析 xff0c 由于显示oled时使用的i2c连线较长 xff0c 会出现更大的电感 进而出现振铃现象 解决办法 在时钟线和数据线中串联100欧
  • stm32+mxl90614测温+蓝牙app数据实时显示折线图+syn6288语音播报体温+oled显示

    设计要求 xff1a stm32主控 mxl90614实现测温功能 蓝牙发送数据到手机app界面实时显示数据变换 xff0c 折线图形式 syn6288语音播报当前体温数据 效果展示 qq1633003977 源码 链接 xff1a htt
  • 【STM32】基于SPI的OLED显示屏与DHT20温湿度采集显示数据

    STM32 基于SPI总线的OLED显示屏与DHT20温湿度采集显示数据 一 SPI通讯协议二 关于0 96英寸OLED模块三 硬件连接四 示例代码五 代码修改与撰写六 屏幕歌词滚动1 滚屏设置2 代码撰写 七 展示八 DHT20温湿度采集
  • 基于STM32的0.96寸OLED显示屏显示数据

    文章目录 一 SPI1 简介2 SPI 的物理层和协议层2 1物理层2 2协议层 3 通讯引脚 二 使用0 96寸OLED显示屏显示数据1 显示屏介绍2 题目要求 三 显示学号和姓名1 工程建立2 编译测试3 电路连接4 结果 四 显示AH
  • micropython oled中文_micropython esp8266+ssd1306(OLED) 显示中文(示例)

    1 Adafruit SSD1306 连接示例 库使用示例 gt gt gt from machine import Pin I2C gt gt gt i2c 61 I2C scl 61 Pin 5 sda 61 Pin 4 gt gt g
  • stm32---OLED(SSD1306)

    OLED模块优缺点 优点 xff1a 尺寸小 xff0c 分辨率高 xff0c 低压3 3V就可工作 xff0c 支持多种接口方式 xff0c 该模块提供了总共4种接口包括 xff1a 6800 8080两种并行接口方式 4线的穿行SPI接
  • STM32软件模拟iic驱动oled(显示汉字,图片)(一)

    一 iic驱动模式 1 硬件驱动 xff1a 所谓硬件驱动就是使用STM32板子上固定的iic接口 xff0c 但是由于板载iic数量有限 xff0c 且大多和别的外设有引脚复用 xff0c 在别的外设使用的情况下还得通过重映射引到别的引脚
  • 基于I2C/SPI的温湿度采集与OLED显示

    基于I2C SPI的温湿度采集与OLED显示 一 AHT20温湿度采集1 I2C2 温湿度采集代码效果 二 OLED显示1 显示学号姓名2 诗句显示 三 总结四 参考 一 AHT20温湿度采集 1 I2C 解释什么是 软件I2C 和 硬件I
  • STM32 I2C_OLED显示汉字及屏幕滚动

    STM32 I2C OLED显示汉字及屏幕滚动 文章目录 STM32 I2C OLED显示汉字及屏幕滚动一 I2C以及AHT20温湿度传感器介绍二 用0 96寸OLED屏幕显示数据1 OLED介绍2 样例测试 三 汉字编码原理编码排序A0A
  • ESP32+0.96寸OLED

    ESP32点亮0 96寸LED 考虑在上一篇的写那个项目中添加一个屏幕的显示 xff0c OLED屏幕为淘宝购买的6针型号蓝绿双色的屏幕 xff0c 通过四线SPI与ESP32连接 OLED屏电路图 OLED实物图 这是连接好运行后的图 x
  • STM32 硬件IIC 控制OLED I2C卡死问题

    更新通知 2023 09 06 STM32L151 固件库 使用I2C 太难了 又宕机了 建议不要在固件库版本上尝试硬件IIC 了 一般人真用不了 直接使用软件模拟的 或者不要使用固件库了 用HAL 库吧 据说HAL 库没这么多问题 不死心
  • LCD、OLED、Mini LED、Micro LED和Smart MNT

    LCD OLED Mini LED Micro LED和Smart MNT是当前比较热门的电视显示技术 它们有如下具体区别 LCD LCD Liquid Crystal Display 是液晶显示技术的英文缩写 它是目前应用最广泛的平面显示
  • OLED显示小数

    OLED显示小数并不是很难的 在通用的OLED库中是没有显示小数的 需要自己去写 写的方法大致是这样的 写出0到9的ACSLL值 只需要将小数点后面的位数 一位一位的写数字对应的ACSLL值即可 其中小数点 也是写同样对应的ACSLL值 只
  • ESP8266如何使用u8g2(I2C)驱动SH1106的OLED

    u8g2是一款单色图形库 非常适合12864之类的显示屏 基本上支持了市面上的主流显示控制器 可是偏偏对SH1106不是那么友好 使用起来不是很方便 打开IDE的示例程序可以看到对SH1106列出来的几乎都SPI通信方式 仅仅只有一条是使用
  • 野火STM32F1开发板 IIC 0.96OLED 波形显示

    硬件连接 软件代码 MAIN C include sys h include delay h include usart h include bsp adc h include bsp advanced timer h include bs
  • STM32移植U8g2图形库——玩转OLED显示

    之前的文章 介绍过ESP8266在Arduino IDE环境中使用U8g2库 实现OLED上的各种图形显示 本篇 介绍一下U8g2库如何移植到STM32上 进行OLED的图形显示 本次的实验硬件为 STM32 型号为最常见的STM32F10
  • 制作OLED图标

    制作OLED图标 陈拓 2021 06 24 2021 06 26 1 概述 制作用于OLED显示的图标 获取C语言图像点阵数据 2 图标库 先准备图标图像 可以从图标库中找需要的图案 下面两个是我常用的图标网站 2 1 Font Awes

随机推荐

  • WEB API返回的字符串列表

    参考网址 xff1a https www cnblogs com yuanmo p 10045467 html 开发工具 xff1a vs2015 语言 xff1a C ASP NET 5 第一次弄asp net mvc xff0c 太难了
  • python中把float类型转换成日期

    从excel的某一格中读出日期时 xff0c 发现是一个float类型 xff0c 但它在显示的时候却是一个日期 xff0c 这个就要在代码中处理了 xff0c 如下进行转换 xff1a 44152 0146412037 DateObj 6
  • Java调用C++库dll文件接口(JNI)回传int参数(引用)

    vc写了一个标准的动态库 xff0c 有如下接口 xff1a const WCHAR execCommand const char param int amp errCode java中的接口声明 xff1a VideoUnit java
  • MVC5后台C#无法访问网络共享目录的解决办法

    开发环境 xff1a vs2015 xff0c C xff0c MVC5 做了一个简单的网站 xff0c 其重点是后台需要访问其它电脑上的共享目录 xff0c 在调试的时候一切正常 xff0c 发布版本之后 xff0c 在服务器上无法正常访
  • python-Qt的多个QLineEdit和QComboBox分别绑定同一个槽时的信息获取

    这个标题可能会有点容易让人弄错 xff0c 我只不过是想把QLineEdit和QComboBox的绑定处理放在同一标题可能容易让人看错 xff0c 我只不过是想把QLineEdit和QComboBox的问题放在一篇文章中而已 xff0c 所
  • 鸿蒙App调试入门

    前段时间下载了DevEco Studio xff0c 根据提示创建了一个手机App xff0c 不做任何修改 xff0c 直接调试时 xff0c 总是提示失败 xff0c 不支持 xff0c 如下的样子 xff1a 点左边的三角符号也是一样
  • MFC单文档程序不设置文档标题

    对于MFC单文档 多文档估计也是一样 程序来说 xff0c 创建一个工程后不做任何修改 xff0c 直接编译运行 xff0c 会发现程序标题 xff0c 除了带有程序名称之外 xff0c 还带有 未命名 xff0c 整个标题的样子差不多是这
  • Mvc Web工程中加入Web Api后,Web Api接口无法访问

    用vs2015 C 建立了一个web mvc工程 xff0c 实现了一些简单的功能 xff0c 包括对后台数据库的访问 xff0c 添加 修改数据等普通功能 xff0c 其中有好几个controller xff0c 比如用户管理 任务添加修
  • OpenMP与OpenMPI介绍与简单程序编写

    首先说一下OpenMP与OpenMPI的区别 OpenMP主要是在单机上进行并行 xff0c 是基于共享内存的 xff0c 共享内存就是多个核 xff08 包括单CPU多核和多CPU多核 xff08 都是单机 xff09 xff09 共享一
  • Web Api获取POST中的body数据

    一个普通的web api xff0c 大佬说为了安全 xff0c 上传的参数数据一般是放在Body中的 xff0c 所以后台也要从body中来拿参数 xff0c 这个确实好一些 xff0c 在地址栏中看不到参数 xff0c 相对来说 xff
  • MFC视图中的OnPaint()更新

    今天弄了个工具 xff0c vs2015 mfc 单文档结构的工程 xff0c 没有选择 34 文档 视图体系结构支持 34 xff0c 因为我不需要文档 xff0c 只需要有个视图就行了 后台有个从网络接收数据的服务 xff0c 当收到数
  • vs中加入.h文件后改名为.cpp后,其中的函数无法被链接

    这个问题一般碰不到 一个项目 xff0c 是vs2015 c 43 43 win32类型的 xff0c 项目不大 xff0c 大约有10来个源文件 xff0c 一切都是正常的 后来由于需要添加md5加密 xff0c 所以就从别的项目中拿了一
  • windows下编译opencv 3.4.0

    为了方便后期的调试 xff0c 自己动手编译opencv3 4 0 xff0c 这样有需要的时候还可以自己修改修改源代码 通常来说 xff0c 编译32位比较简单 xff0c 直接用cmake生成编译的工程就行了 xff0c 但64位就比较
  • opencv添加的新接口clearVec()的实现

    自己编译的opencv xff0c 之前文章有说添加了这个接口 xff0c 也有上传3 3 0版本添加这个接口之后编译好的库 xff0c 但是没有把实现过程展现出来 xff0c 导致有些朋友问我如何实现的 xff0c 今天把这个实现放出来
  • Unity 3D代码在vs中无法自动提示的解决办法

    我安装Unity 3D后 xff0c 建立一个工程 xff0c 采用vs2019来编写代码 xff0c 发现没有自动提示功能 xff0c 根据网上说的 xff0c 要在unity中选择vs2019做为编辑器 xff0c 我也选择了 xff0
  • Arduino的全局变量的单独定义

    Arduino语言和C语言很像 xff0c 比如先定义变量再使用 xff0c 也可以采用 define 进行一些预定义等等 xff0c 但又有一些不同 当一个文件中的代码理过多时 xff0c 如果想把它们分开成多个文件 xff0c 则涉及到
  • 苏泊尔电饭煲不工作的维修

    本篇文章与其说是维修 xff0c 倒不如说成是 拆 xff0c 因为维修相对容易 xff0c 但想拆开却很艰难 xff0c 大部分的时间都花在了拆的工作上面 老家伙的样子如下 型号为 xff1a CYSB50FC99 100 xff0c 铭
  • 萨克斯吹不响的解决办法

    刚开始吹萨克斯 xff0c 发现总是吹不响 看各种入门的文章 xff0c 很多都强调口型的重要性 xff0c 各文章说得也都差不多 xff0c 我仔细捉摸 xff0c 不断尝试 xff0c 似乎还是不得要领 特别是安装好之后 xff0c 很
  • webpack是什么

    一 webpack是什么 webpack 是一个用于现代 JavaScript 应用程序的静态模块化打包构建工具 模块化 xff1a 服务端Common js xff08 module exports require xff09 浏览器端E
  • OLED显示秒表

    OLED显示秒表 include stm32f10x h include sys h include delay h include relay h include oled0561 h include led h include key