eecs-bsp-test-code-2/inc/EXT.h

64 lines
4.1 KiB
C
Raw Permalink Normal View History

2022-08-23 16:16:38 +08:00
/********************************** EXT V1.0 说明 ***********************************************
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
EXT模块用于控制STC-B学习板EXT上相关操作
EXT模块根据应用需要API函数
EXT模块这里提供1个驱动函数和若干个应用层API函数
EXT模块的API函数不是同时有效的
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
(1) void EXTInit(char EXTfunction)EXT初始化函数
EXTfunctionEXT接口功能
EXTfunction enumEXTWeightHX710HX711组成的电子秤
enumEXTPWM
enumEXTDecode
enumEXTUltraSonic
EXT扩展接口用于串口2时TTL Uart使Uart2Init()EXT后使EXTInit()
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
(2)API函数
(a) EXTInit(char EXTfunction)使enumEXTWeight参数时GetWeight函数有效
int GetWeight(void) //获取电子秤ADC秤重数据16bit带符号整数。未清零、未标定。参见HX710、HX711数据手册高16bit
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
(b) PWM脉宽调制输出EXTInit(char EXTfunction)使enumEXTPWM参数时SetPWM函数有效
2022-08-22 14:51:00 +08:00
void SetPWM(unsigned char PWM1, unsigned char freq1, unsigned char PWM2, unsigned char freq2);
2022-08-23 16:16:38 +08:00
//设置EXT上输出PWM参数PWM为占空比输出高电平时间的比例0100,单位%。freqx为频率1255Hz
//实际频率 = 1000/int(1000/freqx)。即1000/i=456...1000或2502001671431251111009183...1
//可用于控制直流电机正反转、转速配合H型桥式电路灯亮度
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
(c) EXTInit(char EXTfunction)使enumEXTDecode参数时GetDecode函数有效
int GetDecode(void); //获取增量编码器增量值(相对上次读取后的新增量)
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
(d) EXTInit(char EXTfunction)使enumEXTUltraSonic参数时GetUltraSonic函数有效
int GetUltraSonic(void); //获取超声波测距值每秒5次测量返回值单位cm
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
(e) RFID读卡
(g) 2
(h) ADC
2022-08-22 14:51:00 +08:00
2022-08-23 16:16:38 +08:00
18008400450 2021824
2022-08-22 14:51:00 +08:00
*/
#ifndef _EXT_H_
#define _EXT_H_
2022-08-23 16:16:38 +08:00
extern void EXTInit(char EXTfunction); //扩展接口初始化
enum EXTname {enumEXTWeight //电子秤
,enumEXTPWM //PWM控制直流电机转动方向、快慢
,enumEXTDecode //增量式计数(旋转编码器)
,enumEXTUltraSonic //超声波测距
//串口2蓝牙见uart2模块
//气敏、数据采集、电子尺、额温枪等见ADC
2022-08-22 14:51:00 +08:00
};
2022-08-23 16:16:38 +08:00
extern int GetWeight(void); //获取电子秤ADC秤重数据HX710、HX711输出高16bit带符号数整数。未清零、未标定
extern int GetDecode(void); //获取增量编码器增量值(相对上次读取后的新增量)
extern int GetUltraSonic(void); //获取超声波测距值每秒5次测量返回值单位cm
2022-08-22 14:51:00 +08:00
extern void SetPWM(unsigned char PWM1, unsigned char freq1, unsigned char PWM2, unsigned char freq2);
2022-08-23 16:16:38 +08:00
//设置EXT上输出PWM参数PWM为占空比输出高电平时间的比例0100,单位%。freqx为频率1255Hz
//实际频率 = 1000/int(1000/freqx)。即1000/i=456...1000或2502001671431251111009183...1
//可用于控制直流电机正反转、转速配合H型桥式电路灯亮度
2022-08-22 14:51:00 +08:00
#endif