使用库函数编写,平台为STM32F407,串口直接打印出测量数据
2021-05-12 11:07:26 4.18MB hx711 stm32f407
1
称重模块HX711,在stm32上的实现。 #include "stm32f10x.h" #include "hx711.h" #include "delay.h" #include "usart.h" //需要两根线通讯,一个时钟线,一个数据线。 #define ADIO GPIOA #define DATA GPIO_Pin_0 //数据线,输入模式 #define CLK GPIO_Pin_1 //时钟线,输出模式 #define ADCLK RCC_APB2Periph_GPIOA //时钟线 void ADInit(void) //初始化 { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(ADCLK,ENABLE); GPIO_InitStructure.GPIO_Pin = CLK; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推完输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(ADIO,&GPIO;_InitStructure); GPIO_InitStructure.GPIO_Pin = DATA; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//浮空输入 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(ADIO,&GPIO;_InitStructure); } unsigned int HX711_Read(void) //时钟配置 { unsigned int val=0; unsigned int val1=0; unsigned char i = 0; GPIO_SetBits(ADIO,DATA);//高 GPIO_ResetBits(ADIO,CLK);//低 while(GPIO_ReadInputDataBit(ADIO,DATA));//等 for(i=0;i<24;i++) { GPIO_SetBits(ADIO,CLK); val=val<<1; GPIO_ResetBits(ADIO,CLK); if(GPIO_ReadInputDataBit(ADIO,DATA)) val++; } GPIO_SetBits(ADIO,CLK); val = val^0x800000; GPIO_ResetBits(ADIO,CLK); return val; }
2021-05-07 21:24:53 2MB HX711
1
Arduino中调试TM7711称重模块调试
2021-03-18 14:04:08 11KB Arduino TM7711 称重模块
称重模块SIWAREX WP231如何集成在S7-1200系统中使用.pdf
2021-02-07 16:01:30 1.34MB 工控
1