在某宝上买了这个四位数码管(3642BS)打算用来做项目,没想到给的例程只有51和arduino的,并没有给出STM32的驱动程序。在阅读了51的程序后大概了解了主要代码思路,花了一点时间把程序移植到了STM32上,写了一个计时的功能。和大家分享下。我手上的单片机是STM32f103C8T6.
我手上的这个四位数码管好像就是单独为时间显示制作的,第一、三、四位都是7段数码管,并非常见的8段数码管。只有第二位是带有时间显示分号的8位数码管。
主程序
//说明:
// ----------------------------------------------------------------
// GND 电源地
// VCC 接5V或3.3v电源
// DIO 接PB12
// RCLK 接PB13
// SCLK 接PB14
// ----------------------------------------------------------------
#include "delay.h"
#include "sys.h"
#include "led4.h"
#include "timer.h"
#include "stm32f10x_tim.h"
int T=0; //记录计时秒数
int main (void);
void led4show(int r,int j,int k,int l);
void ledout(u16 x);
u8 d=40;