42 lines
1.1 KiB
C
42 lines
1.1 KiB
C
#ifndef __LED_DIGITAL_TUBE_H
|
|
#define __LED_DIGITAL_TUBE_H
|
|
|
|
/*
|
|
* 74HC138 译码器
|
|
* 地址输入三条,输出 八根线
|
|
* 输入:
|
|
* HC138 A0 ---> PC11
|
|
* HC138 A1 ---> PC12
|
|
* HC138 A2 ---> PD2
|
|
* 输出:
|
|
* Y0 --> CH1
|
|
* Y1 --> CH2
|
|
* Y2 --> CH3
|
|
* Y3 --> CH4
|
|
* Y4~Y7 --> CH1
|
|
*
|
|
* 74HC595
|
|
* 输入:
|
|
* 时钟输入: HC595 SCLK11(SH_CP) --> PB5
|
|
* 时钟输入: HC595 LCLK12(ST_CP) --> PB4(JNTRST)
|
|
* 数据输入: HC595 DATA(DS) --> PB3(PB3/JTDO/TRACESWO)
|
|
* 输出:
|
|
* QA-QH(共八根线)
|
|
*
|
|
*/
|
|
|
|
#include <stm32f10x_conf.h>
|
|
|
|
// 初始化数码管
|
|
void led_digital_tube_init(void);
|
|
// hc138 设置地址
|
|
void hc138_out_data(u8 data);
|
|
// hc595 发送数据
|
|
void hc595_send_data(u8 data);
|
|
// 数码管显示 4 位整数(低四位)
|
|
void led_digital_show_interger(int data);
|
|
// 数码管显示 4 位小数(ndigit 表示小数点后保留有数位数 0~3 位)
|
|
void led_digital_show_float(float value, int ndigit/* 小数位数 0~3 */);
|
|
|
|
#endif // __LED_DIGITAL_TUBE_H
|