77范文网 - 专业文章范例文档资料分享平台

智能超重报警系统的设计与实现(6)

来源:网络收集 时间:2019-01-10 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

智能超重报警系统的设计与实现

/* config the extiline clock and AFIO clock */

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD,ENABLE);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOD, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOD, &GPIO_InitStructure);

//浮空输入

GPIO_SetBits(GPIOD,GPIO_Pin_12);//HX711_DOUT=1; //先置1

Delay__ms(50);

GPIO_ResetBits(GPIOD,GPIO_Pin_3); //HX711_SCK=0;

count=0;

while(GPIO_ReadInputDataBit(GPIOD,GPIO_Pin_12));//while(HX711_DOUT); for(i=0;i<24;i++)

GPIO_SetBits(GPIOD,GPIO_Pin_3);

//HX711_SCK=1;

{

GPIO_SetBits(GPIOD,GPIO_Pin_3); //HX711_SCK=1;

count=count<<1;

GPIO_ResetBits(GPIOD,GPIO_Pin_3); //HX711_SCK=0;

if(GPIO_ReadInputDataBit(GPIOD,GPIO_Pin_12))//if(HX711_DOUT) }

count++;

count=count^0x800000;//第25个脉冲下降沿来时,转换数据

第 26 页 共 41 页

智能超重报警系统的设计与实现

Delay__ms(50);

GPIO_ResetBits(GPIOD,GPIO_Pin_3); //HX711_SCK=0; return(count); }

//**************************************************** //获取毛皮重量

//**************************************************** void Get_Maopi() { Weight_Maopi = HX711_Read();

}

//**************************************************** //称重

//**************************************************** void Get_Weight() { Weight_Shiwu = HX711_Read();

Weight_Shiwu = Weight_Shiwu - Weight_Maopi; //获取净重

if(Weight_Shiwu > 0)

{

Weight_Shiwu = (unsigned int)((float)Weight_Shiwu/GapValue); 的实际重量

if(Weight_Shiwu > 5000)

//超重报警

{ Flag_ERROR = 1;

} else

{

第 27 页 共 41 页

//计算实物

智能超重报警系统的设计与实现

}

/**

} else { }

}

Flag_ERROR = 0;

Weight_Shiwu = 0; Flag_ERROR = 1;

//负重报警

* @brief 事件处理函数,循环调用 */

void even_process(void) {

char lcd_char[20]; Get_Maopi();

//称毛皮重量

/* 配置USART1 */

USART1_Config(); /* 配置USART2 */ USART2_Config(); /* 初始化系统定时器 */ SysTick_Init();

LCD_DispEnCh(60,10,\远程超重报警\

//检测模块响应是否正常

while(sim900a_cmd(\ { }

LCD_DispEnCh(10,50,\通过了模块响应测试 开始检测 若超重2秒后开始报警

第 28 页 共 41 页

智能超重报警系统的设计与实现

\

/* USART1 config 115200 8-N-1 */

while(1) {

Get_Weight(); //显示当前重量

USART1_Config();

//3??

if( Flag_ERROR == 1) { } else { }

第 29 页 共 41 页

Lcd_GramScan( 1 );

LCD_DispChar(20+10,180,Weight_Shiwu/1000 + 0X30,BLUE); LCD_DispChar(20+20,180,Weight_Shiwu00/100 + 0X30,BLUE); LCD_DispChar(20+30,180,Weight_Shiwu0/10 + 0X30,BLUE); LCD_DispChar(20+40,180,Weight_Shiwu + 0X30,BLUE); LCD_DispEnCh(20+50,180,\

printf(\

Lcd_GramScan( 1 );

LCD_DispChar(20+10,180,Weight_Shiwu/1000 + 0X30,BLUE); LCD_DispChar(20+20,180,Weight_Shiwu00/100 + 0X30,BLUE); LCD_DispChar(20+30,180,Weight_Shiwu0/10 + 0X30,BLUE); LCD_DispChar(20+40,180,Weight_Shiwu + 0X30,BLUE); LCD_DispEnCh(20+50,180,\

printf(\

智能超重报警系统的设计与实现

4.2 GSM部分主要程序

if(Weight_Shiwu>150) {

SIM900A_DELAY(500); //拨打电话

sim900a_call(\ rebuff = sim900a_waitask(0);

{

if(strstr(rebuff,\!= NULL) //响应OK表示模块正常接收到命

Lcd_GramScan( 1 );

LCD_Clear(10, 220, 300, 100,YELLOW); LCD_DispEnCh(10,200,\正在呼叫\

SIM900A_CLEAN_RX(); //清除接收缓冲区

第 30 页 共 41 页

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库智能超重报警系统的设计与实现(6)在线全文阅读。

智能超重报警系统的设计与实现(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/415446.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: