完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
stm8s207 调试hx711称重装置,输出结果一直为0,大家帮助看一看哪里有错误;16M晶振不分频
code hx711.c void GPIO_Int(void) { GPIO_DeInit(GPIOB); GPIO_DeInit(GPIOA); GPIO_DeInit(GPIOE); GPIO_Init(GPIOB, GPIO_PIN_2, GPIO_MODE_OUT_PP_LOW_SLOW);//led2 GPIO_Init(GPIOB, GPIO_PIN_3, GPIO_MODE_OUT_PP_LOW_SLOW);//led3 GPIO_Init(GPIOB, GPIO_PIN_7, GPIO_MODE_IN_PU_NO_IT);//k1 GPIO_Init(GPIOA, GPIO_PIN_6, GPIO_MODE_IN_PU_NO_IT);//k2 GPIO_Init(GPIOG, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST);////HX711_SCK GPIO_Init(GPIOG, GPIO_PIN_1, GPIO_MODE_IN_FL_NO_IT);////DT 上拉输入 GPIO_WriteLow(GPIOE, GPIO_PIN_3); } u32 HX711_Read(void) //增益128 { unsigned long count; unsigned char i; GPIO_WriteLow(GPIOG, GPIO_PIN_0); //sck 0 count=0; while(GPIO_ReadInputPin(GPIOG, GPIO_PIN_1)); for(i=0;i<24;i++) { GPIO_WriteHigh(GPIOG, GPIO_PIN_0); nop(); count=count<<1; GPIO_WriteLow(GPIOG, GPIO_PIN_0); if(GPIO_ReadInputPin(GPIOG, GPIO_PIN_1)) count++; nop(); } GPIO_WriteHigh(GPIOG, GPIO_PIN_0); count=count^0x800000;//第25个脉冲下降沿来时,转换数据 nop(); GPIO_WriteLow(GPIOG, GPIO_PIN_0); return(count); } //**************************************************** //获取毛皮重量 //**************************************************** void Get_Maopi(void) { Weight_Maopi = HX711_Read(); } void Get_Weight(void) { { Weight_Shiwu = HX711_Read(); Weight_Shiwu = Weight_Shiwu - Weight_Maopi; //获取净重 if(Weight_Shiwu >= 0) { Weight_Shiwu = (unsigned long)((float)Weight_Shiwu/GapValue); //计算实物的实际重量 } else { Weight_Shiwu = 0; } } main。c void main(void) { CLK_DeInit(); /*判断时钟源,自动切换到HSE*/ if(CLK_GetSYSCLKSource()!=CLK_SOURCE_HSE) { /*使能自动切换,一直等待到切换成功*/ while(CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSE, DISABLE,CLK_CURRENTCLOCKSTATE_ENABLE) ==ERROR); } //User_UART3_Init(); User_UART1_Init(); GPIO_Int(); Weight_Maopi = HX711_Read(); Weight_Maopi = HX711_Read(); Weight_Maopi = HX711_Read(); delays(); Weight_Maopi = HX711_Read(); /* Infinite loop */ while (1) { // Get_Weight(); nop(); nop(); // Weight_Shiwu = HX711_Read(); Get_Weight(); Weight_Shiwu = (unsigned long)((float)Weight_Shiwu/430); printf("净重量 = %d grn",Weight_Shiwu); //printf("净重量 = grn"); delays(); } } |
|
相关推荐
1个回答
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1975 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1760 浏览 1 评论
1232 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
819 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1776 浏览 2 评论
2015浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
889浏览 4评论
stm32f4下spi+dma读取数据不对是什么原因导致的?
318浏览 3评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
670浏览 3评论
661浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-23 15:37 , Processed in 0.642524 second(s), Total 45, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191