K_A16_001 基于STM32等单片机驱动HX711称重模块 串口与OLED0.96双显示

K_A16_001 基于STM32等单片机驱动HX711称重模块 串口与OLED0.96双显示

  • 一、资源说明
  • 二、基本参数
  • 参数
  • 引脚说明
  • 三、驱动说明
  • 对应程序:
  • 四、部分代码说明
  • 1、接线引脚定义
  • 1.1、STC89C52RC+HX711称重模块
  • 1.2、STM32F103C8T6+HX711称重模块
  • 五、基础知识学习与相关资料下载
  • 六、视频效果展示与程序资料获取
  • 七、注意事项
  • 八、接线说明
  • STC89C52RC
  • STM32F103C8T6
  • 请添加图片描述

    一、资源说明

    单片机型号 测试条件 模块名称 代码功能
    STC89C52RC 晶振11.0592M HX711称重模块 STC89C52RC驱动HX711称重模块 串口与OLED0.96双显示
    STM32F103C8T6 晶振8M/系统时钟72M HX711称重模块 STM32F103C8T6驱动HX711称重模块参数 串口与OLED0.96双显示

    其他资料目录 直戳跳转

    二、基本参数

    参数

    HX711参数
    1.两路可选择差分输入
    2.片内低噪声可编程放大器,可选增益为 32,64 和 128
    3.片内稳压电路可直接向外部传感器和芯片内 A/D 转换器提供电源
    4.片内时钟振荡器无需任何外接器件,必要时 也可使用外接晶振或时钟
    5.上电自动复位电路
    6.简单的数字控制和串口通讯:所有控制由管 脚输入,芯片内寄存器无需编程
    7.可选择 10Hz 或 80Hz 的输出数据速率
    8.同步抑制 50Hz 和 60Hz 的电源干扰
    9.耗电量(含稳压电源电路): 典型工作电流:< 1.6mA, 断电电流:< 1µA
    10.工作电压范围:2.6 ~ 5.5V
    11.工作温度范围:-40 ~ +85℃

    传感器参数
    请添加图片描述

    引脚说明

    HX711称重模块 引脚说明
    VCC(+) 正极 3.3-5V供电
    GND(-) 负极 接GND
    DT(DOUT) 串口数据输出
    SCK 时钟输入

    三、驱动说明

    请添加图片描述

    对应程序:

    此处串口通信对应程序:
    以51为例

    unsigned long ReadCount(void)
    {
    		unsigned long Count;
    		unsigned char i;
    		CLK_0;
    
    		Count=0;
    		while(OUT);
    		for (i=0;i<24;i++)
    	 {
    				CLK_1;
    				_nop_();
    				Count=Count<<1;
    				CLK_0;
    				_nop_();
    				if(OUT) Count++;
    		}
    		CLK_1;
    		_nop_();
    		Count=Count^0x800000;
    		CLK_0;
    		_nop_();
    		
    		return(Count);
    }
    
    

    四、部分代码说明

    1、接线引脚定义

    需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改

    1.1、STC89C52RC+HX711称重模块

    //HX711称重模块引脚定义
    sbit OUT=P1^0;
    sbit CLK=P1^1;
    //OLED0.96模块引脚定义
    sbit SCL=P1^3; //串行时钟
    sbit SDA=P1^2; //串行数据
    //按键模块引脚定义
    sbit KEY_Reset=P1^4;
    sbit KEY_Calibration=P1^5;
    

    1.2、STM32F103C8T6+HX711称重模块

    //HX711称重模块引脚定义
    #define DOUT_GPIO_PORT    	GPIOA		             /* GPIO端口 */
    #define DOUT_GPIO_CLK 	    RCC_APB2Periph_GPIOA	/* GPIO端口时钟 */
    #define DOUT_GPIO_PIN			  GPIO_Pin_1			        
    #define CLK_GPIO_PORT    	GPIOA			         /* GPIO端口 */
    #define CLK_GPIO_CLK 	    RCC_APB2Periph_GPIOA	/* GPIO端口时钟 */
    #define CLK_GPIO_PIN		  GPIO_Pin_3	
    //OLED0.96模块引脚定义
    /*STM32F103C8T6芯片的硬件I2C: PB6 -- SCL; PB7 -- SDA */
    GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_6 | GPIO_Pin_7;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD;//I2C必须开漏输出
    GPIO_Init(GPIOB, &GPIO_InitStructure);
    	
    //按键模块引脚定义
    #define KEY_Reset_PIN   	GPIO_Pin_4  	// 	GPIOB_Pin_4 0x0010 
    #define KEY_Cali_PIN    	GPIO_Pin_5		//	GPIOB_Pin_5 0x0020
    
    #define KEY_Reset    		GPIO_ReadInputDataBit(GPIOA, KEY_Reset_PIN)
    #define KEY_Calibration     GPIO_ReadInputDataBit(GPIOA, KEY_Cali_PIN)
    
    

    五、基础知识学习与相关资料下载

    1、STC89C52RC程序下载 直戳跳转

    2、STM32F103C8T6程序下载
    (1)串口下载 直戳跳转
    (2)ST-LINK下载 直戳跳转
    (3)J-LINK下载 直戳跳转
    (4)DAP-LINK下载 直戳跳转

    3、OLED0.96程序说明 直戳跳转

    4、串口助手下载与使用
    (1)安信可调试助手使用 直戳跳转
    (2) sscom33串口调试助手使用 直戳跳转
    (3)STC-ISP串口调试助手使用 直戳跳转

    六、视频效果展示与程序资料获取

    视频连接 直戳跳转
      资料获取            ( 滑到最后添加群号看公告免费获取)

    七、注意事项

    1、VCC GND请勿接反,接反易烧
    2、OLED显示异常时,排除接线接触不良

    八、接线说明

    STC89C52RC

    /************************************************************************************
    //  生成日期   : 2021-6-21
    //  最近修改   : 2021-11-21
    //  功能描述   : HX711称重模块测试程序
    //  测试条件   : STC89C52RC   晶振11.0592
    接线
    HX711 ---------------------------------STC89C52RC
    VCC------------------------------------5V
    GND------------------------------------GND
    DOUT-----------------------------------P1^0
    CLK------------------------------------P1^1
    
    OLED0.96(IIC) -------------------------STC89C52RC
    VCC------------------------------------5V
    GND------------------------------------GND
    SCL------------------------------------P1^3
    SDA------------------------------------P1^2
    
    按键模块-------------------------------STC89C52RC
    GND------------------------------------GND
    KEY_Reset_PIN--------------------------P1.4//清零
    KEY_Cali_PIN---------------------------P1.5//校准
    
    *************************************************************************************/
    

    STM32F103C8T6

    /************************************************************************************
    //  生成日期   : 2021-6-21
    //  最近修改   : 2021-11-21
    //  功能描述   : HX711称重模块测试程序
    //  测试条件   : STM32F103C8T6   晶振12M  系统时钟72M
    接线
    HX711 ---------------------------------STM32F103C8T6
    VCC------------------------------------5V
    GND------------------------------------GND
    DOUT-----------------------------------PA1
    CLK------------------------------------PA3
    
    OLED0.96(IIC) -------------------------STM32F103C8T6
    VCC------------------------------------3.3V
    GND------------------------------------GND
    SCL------------------------------------PB6
    SDA------------------------------------PB7
    
    按键模块-------------------------------STM32F103C8T6
    GND------------------------------------GND
    KEY_Reset_PIN--------------------------GPIOA_4//清零
    KEY_Cali_PIN---------------------------GPIOA_5//校准
    
    *****************************************************************************************/
    
    
    物联沃分享整理
    物联沃-IOTWORD物联网 » K_A16_001 基于STM32等单片机驱动HX711称重模块 串口与OLED0.96双显示

    发表评论