0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【开源获奖案例】多功能称重器

迪文智能屏 2024-04-20 08:12 次阅读

——来自迪文开发者论坛

本期为大家推送迪文开发者论坛获奖开源案例——多功能称重器工程师采用4英寸COF智能屏,通过T5L OS核与HX711模块及5kg压力传感器套装进行数据交互,用户可轻松实现重量、单价、总价、去皮等计价显示功能,以及计数、重量变化曲线跟踪和称重器精准度矫正等功能,轻松切换不同应用场景,享受便捷高效称重体验。


UI开发示例

be60b46a-feaa-11ee-9118-92fbcf53809c.png

C51工程设计 称重器实现计价功能的部分参考代码如下:

//计价页面===================#define VALUATION_UNIT_PRICE_ADDR 0x1010#define VALUATION_GRAM_ADDR 0x1000#define VALUATION_TOTAL_PRICES_ADDR 0x1020uint32_t valuation_decorticate = 0; //计价去皮重量uint32_t valuation_unit_price = 0; //单价//单价刷新void page_valuation_unit_price_refresh(){ uint8_t test_display[10] = {0}; if(valuation_unit_price < 1000) { test_display[0] = valuation_unit_price / 100 % 10 + 0x30; test_display[1] = '.'; test_display[2] = valuation_unit_price / 10 % 10 + 0x30; test_display[3] = valuation_unit_price / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_UNIT_PRICE_ADDR, test_display, 4); } else if(valuation_unit_price < 10000) { test_display[0] = valuation_unit_price / 1000 % 10 + 0x30; test_display[1] = valuation_unit_price / 100 % 10 + 0x30; test_display[2] = '.'; test_display[3] = valuation_unit_price / 10 % 10 + 0x30; test_display[4] = valuation_unit_price / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_UNIT_PRICE_ADDR, test_display, 4); } else if(valuation_unit_price < 100000) { test_display[0] = valuation_unit_price / 10000 % 10 + 0x30; test_display[1] = valuation_unit_price / 1000 % 10 + 0x30; test_display[2] = valuation_unit_price / 100 % 10 + 0x30; test_display[3] = '.'; test_display[4] = valuation_unit_price / 10 % 10 + 0x30; test_display[5] = valuation_unit_price / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_UNIT_PRICE_ADDR, test_display, 4); } else if(valuation_unit_price < 1000000) { test_display[0] = valuation_unit_price / 100000 % 10 + 0x30; test_display[1] = valuation_unit_price / 10000 % 10 + 0x30; test_display[2] = valuation_unit_price / 1000 % 10 + 0x30; test_display[3] = valuation_unit_price / 100 % 10 + 0x30; test_display[4] = '.'; test_display[5] = valuation_unit_price / 10 % 10 + 0x30; test_display[6] = valuation_unit_price / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_UNIT_PRICE_ADDR, test_display, 4); }}
//重量刷新void page_valuation_weight_refresh(){ uint8_t test_display[10] = {0x30}; uint32_t gram_display = 0; if(gram_value >= valuation_decorticate) { gram_display = gram_value - valuation_decorticate; if(gram_display < 10) { test_display[0] = gram_display / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_GRAM_ADDR, test_display, 3); } else if(gram_display < 100) { test_display[0] = gram_display / 10 % 10 + 0x30; test_display[1] = gram_display / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_GRAM_ADDR, test_display, 3); } else if(gram_display < 1000) { test_display[0] = gram_display / 100 % 10 + 0x30; test_display[1] = gram_display / 10 % 10 + 0x30; test_display[2] = gram_display / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_GRAM_ADDR, test_display, 3); } else if(gram_display < 10000) { test_display[0] = gram_display / 1000 % 10 + 0x30; test_display[1] = gram_display / 100 % 10 + 0x30; test_display[2] = gram_display / 10 % 10 + 0x30; test_display[3] = gram_display / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_GRAM_ADDR, test_display, 3); } else if(gram_display < 100000) { test_display[0] = gram_display / 10000 % 10 + 0x30; test_display[1] = gram_display / 1000 % 10 + 0x30; test_display[2] = gram_display / 100 % 10 + 0x30; test_display[3] = gram_display / 10 % 10 + 0x30; test_display[4] = gram_display / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_GRAM_ADDR, test_display, 3); } } else { dgus_show_text_value_set(VALUATION_GRAM_ADDR, test_display, 3); }}
//总价刷新void page_valuation_price_refresh(){ uint32_t price_value = 0; uint8_t test_display[10] = {0x30, '.', 0x30, 0x30}; if(gram_value >= valuation_decorticate) { price_value = (gram_value - valuation_decorticate) * valuation_unit_price * 2 / 1000; if(price_value < 1000) { test_display[0] = price_value / 100 % 10 + 0x30; test_display[1] = '.'; test_display[2] = price_value / 10 % 10 + 0x30; test_display[3] = price_value / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_TOTAL_PRICES_ADDR, test_display, 4); } else if(price_value < 10000) { test_display[0] = price_value / 1000 % 10 + 0x30; test_display[1] = price_value / 100 % 10 + 0x30; test_display[2] = '.';

test_display[3] = price_value / 10 % 10 + 0x30; test_display[4] = price_value / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_TOTAL_PRICES_ADDR, test_display, 4); } else if(price_value < 100000)

{ test_display[0] = price_value / 10000 % 10 + 0x30; test_display[1] = price_value / 1000 % 10 + 0x30; test_display[2] = price_value / 100 % 10 + 0x30; test_display[3] = '.'; test_display[4] = price_value / 10 % 10 + 0x30; test_display[5] = price_value / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_TOTAL_PRICES_ADDR, test_display, 4);

} else if(price_value < 1000000) { test_display[0] = price_value / 100000 % 10 + 0x30; test_display[1] = price_value / 10000 % 10 + 0x30; test_display[2] = price_value / 1000 % 10 + 0x30; test_display[3] = price_value / 100 % 10 + 0x30; test_display[4] = '.'; test_display[5] = price_value / 10 % 10 + 0x30; test_display[6] = price_value / 1 % 10 + 0x30; dgus_show_text_value_set(VALUATION_TOTAL_PRICES_ADDR, test_display, 4); } } else { dgus_show_text_value_set(VALUATION_TOTAL_PRICES_ADDR, test_display, 4); }}void page_valuation_decorticate(){ valuation_decorticate = gram_value; page_valuation_weight_refresh();}void page_valuation_1(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 1; page_valuation_unit_price_refresh(); }}void page_valuation_2(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 2; page_valuation_unit_price_refresh(); }}void page_valuation_3(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 3; page_valuation_unit_price_refresh(); }}void page_valuation_4(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 4; page_valuation_unit_price_refresh(); }}

void page_valuation_5(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 5; page_valuation_unit_price_refresh(); }}void page_valuation_6(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 6; page_valuation_unit_price_refresh(); }}void page_valuation_7(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 7; page_valuation_unit_price_refresh(); }}void page_valuation_8(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 8; page_valuation_unit_price_refresh(); }}void page_valuation_9(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 9; page_valuation_unit_price_refresh(); }}void page_valuation_0(){ if(valuation_unit_price < 100000) { valuation_unit_price = valuation_unit_price * 10 + 0; page_valuation_unit_price_refresh(); }}void page_valuation_back(){ valuation_unit_price = valuation_unit_price / 10; page_valuation_unit_price_refresh();}void page_valuation_clear(){ valuation_unit_price = 0; page_valuation_unit_price_refresh();}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2548

    文章

    50691

    浏览量

    752033
  • 开源
    +关注

    关注

    3

    文章

    3253

    浏览量

    42408
  • 智能屏幕
    +关注

    关注

    0

    文章

    65

    浏览量

    3317
收藏 人收藏

    评论

    相关推荐

    物联网行业中的智能称重方案介绍_称重传感器分析

    物联网系统中为什么要使用称重传感器   联网系统中使用称重传感器的原因主要有以下几点: 全面感知与信息采集 基础感知元件:传感是物联网的感觉器官,能够感知、探测、采集和获取目标对象各种形态的信息
    的头像 发表于 09-24 14:30 256次阅读
    物联网行业中的智能<b class='flag-5'>称重</b>方案介绍_<b class='flag-5'>称重传感器</b>分析

    开源获奖案例】基于T5L智能屏的汽车抬头显示方案

    ——来自迪文开发者论坛本期为大家推送迪文开发者论坛获奖开源案例——基于T5L智能屏的汽车抬头显示方案。该方案采用COF智能屏,通过T5LCAN接口,实时获取汽车OBDII诊断接口的数据,并将接收到的车速和转速数据同步显示在屏幕
    的头像 发表于 09-24 08:03 247次阅读
    【<b class='flag-5'>开源</b><b class='flag-5'>获奖</b>案例】基于T5L智能屏的汽车抬头显示<b class='flag-5'>器</b>方案

    TI 降压转换多功能引脚及其应用的简介

    电子发烧友网站提供《TI 降压转换多功能引脚及其应用的简介.pdf》资料免费下载
    发表于 09-10 10:26 0次下载
    TI 降压转换<b class='flag-5'>器</b><b class='flag-5'>多功能</b>引脚及其应用的简介

    开源获奖案例】基于T5L智能屏的指纹识别解决方案

    ——来自迪文开发者论坛本期为大家推送迪文开发者论坛获奖开源案例——基于T5L智能屏的指纹识别解决方案。该方案通过智能屏串口进行Modbus通讯,实现对指纹识别模块的精准控制,并集成了指纹录入与识别功能。可用于门禁管理、员工考勤、
    的头像 发表于 07-06 08:13 253次阅读
    【<b class='flag-5'>开源</b><b class='flag-5'>获奖</b>案例】基于T5L智能屏的指纹识别解决方案

    基于T5L芯片的多功能物联网开发套件

    ——来自迪文开发者论坛本期为大家推送迪文开发者论坛获奖开源案例——基于T5L芯片的多功能物联网开发套件。工程师充分运用了T5L1芯片的丰富外设功能,集成了USB、音频喇叭、PWM信号接
    的头像 发表于 06-14 08:13 627次阅读
    基于T5L芯片的<b class='flag-5'>多功能</b>物联网开发套件

    使用多功能数显表的步骤 使用多功能数显表的注意事项

    多功能数显表是一种集成了多种测量功能的电子测试仪器,它能够测量电压、电流、电阻、温度、频率等电气参数。
    的头像 发表于 05-09 16:36 1845次阅读

    什么是多功能传感 多功能传感功能介绍

    多功能传感是一个集成系统,它将射频 (RF) 频谱中的多种功能(包括通信、雷达、电子战以及情报、监视和侦察 (ISR))整合到一个传感中。
    发表于 04-01 12:41 599次阅读
    什么是<b class='flag-5'>多功能</b>传感<b class='flag-5'>器</b> <b class='flag-5'>多功能</b>传感<b class='flag-5'>器</b>的<b class='flag-5'>功能</b>介绍

    开源获奖案例】隔空手势识别测试系统

    ——来自迪文开发者论坛本期为大家推送迪文开发者论坛获奖开源案例——隔空手势识别测试系统。工程师采用7英寸COF智能屏,通过T5LOS核与PAJ7620U2手势识别传感进行数据交互,不需要使用任何
    的头像 发表于 03-16 08:12 534次阅读
    【<b class='flag-5'>开源</b><b class='flag-5'>获奖</b>案例】隔空手势识别测试系统

    安科瑞多功能电力仪表设置仪表脉冲常数教程

    多功能电力仪表
    jf_55193456
    发布于 :2024年02月02日 15:14:30

    开源获奖案例】智能培养室

    为大家推送迪文开发者论坛获奖开源案例——智能培养室。工程师通过Modbus协议实现了T5L智能屏控制加热、风机控温功能,还可调节电源功率实现模拟光照功能。系统可根据屏幕上设定的参数自动
    的头像 发表于 01-09 08:13 383次阅读
    【<b class='flag-5'>开源</b><b class='flag-5'>获奖</b>案例】智能培养室

    开源获奖案例】四轴机械臂控制系统

    ——来自迪文开发者论坛本期为大家推送迪文开发者论坛获奖开源案例——四轴机械臂控制系统。工程师采用T5L智能屏,基于DGUS软件“旋转指示”控件实现机械臂的实时位置显示,并通过串口控制机械臂的运动
    的头像 发表于 12-23 08:13 1188次阅读
    【<b class='flag-5'>开源</b><b class='flag-5'>获奖</b>案例】四轴机械臂控制系统

    使用TPS108x的多功能升压转换电路图

    这是使用 TPS108x 的多功能升压转换电路。
    的头像 发表于 12-18 15:47 692次阅读
    使用TPS108x的<b class='flag-5'>多功能</b>升压转换<b class='flag-5'>器</b>电路图

    小而美!【aDataFlow】多功能串口工具

    ……【aDataFlow】多功能串口数据查看-开源分享-aDataFlow是一款好看又好用的多功能串口数据查看/记录,它的核心为ESP3
    的头像 发表于 12-16 08:04 1274次阅读
    小而美!【aDataFlow】<b class='flag-5'>多功能</b>串口工具

    开源 | 小而美!【aDataFlow】多功能串口工具,数据监听+USB转串口+ESP32烧录

    …… 【aDataFlow】多功能串口数据查看开源分享 - aDataFlow是一款好看又好用的多功能串口数据查看/记录,它的核
    的头像 发表于 12-15 16:35 3778次阅读
    <b class='flag-5'>开源</b> | 小而美!【aDataFlow】<b class='flag-5'>多功能</b>串口工具,数据监听+USB转串口+ESP32烧录<b class='flag-5'>器</b>…

    开源 | 超容易复刻的多功能ESP32游戏机,蓝牙手柄+NES模拟+Wi-Fi投屏…

    机  -  开源分享 - 演示视频链接 https://www.bilibili.com/video/BV1Ga4y1f7d3 自制ESP32迷你多功能游戏机,手感很好,操作丝滑。源码和硬件都已开源,超容易
    的头像 发表于 12-08 13:55 2452次阅读
    <b class='flag-5'>开源</b> | 超容易复刻的<b class='flag-5'>多功能</b>ESP32游戏机,蓝牙手柄+NES模拟<b class='flag-5'>器</b>+Wi-Fi投屏…