Marking---------factory fun。。。

/**
******************************************************************************
* @file factory.c
* @author Huang
* @version V0.1
* @date 11/2017
* @brief This file contains all the lcd digit
******************************************************************************
*/ /* Includes ------------------------------------------------------------------*/
#include "stm8l15x.h"
#include "gd_broad.h"
#include "digit.h"
#include "disp.h"
#include "prog.h"
#include "key.h"
#include "temper.h"
#include "factory.h" void factory_init(void)
{
sys_type=SYS_FACTORY_TYPE;
disp_mode_set(DISP_FACTORY_TEMP_VALUE_MODE);
} void factory_func(void)
{
/*display second*/
if(sys_flag.f.t16hz){
sys_flag.f.t16hz=;
if(sys_flag.f.adc_data){
sys_flag.f.adc_data=;
temper_func();
}
key_func();
//digit_d4_d5(key_code);
sys_16hz_count++;
if((sys_16hz_count&0x1f)==){
// 2 seconds routine
sys_time_update();
ADC_SoftwareStartConv(ADC1);
}
switch(sys_16hz_count&0x0f){
case :
sys_flag.f.dsp=;
break;
case :
disp_off_func();
break;
}
}
if(sys_flag.f.dsp==){
sys_flag.f.dsp=;
if(disp_last_mode!=disp_mode){
disp_last_mode=disp_mode;
LCD_Com_Page();
}
disp_func();
}
} void factory_disp_temp_value(unsigned char temp, unsigned char dec)
{
if(temp==||temp>PROG_TEMP_VALUE_80_DEGREE){
digit_d2_d3_bar();
}else if(temp<PROG_TEMP_VALUE_ZERO_DEGREE){
temp = PROG_TEMP_VALUE_ZERO_DEGREE-temp;
digit_d2();
digit_d3(temp);
digit_d1(-dec);
}else{
temp -= PROG_TEMP_VALUE_ZERO_DEGREE;
if(temp>=){
digit_d2_d3(temp);
}else{
digit_d2_off();
digit_d3(temp);
}
digit_d1(dec);
}
digit_d4_d5_oC();
COL_OFF();
} void factory_disp_func(void)
{
switch(disp_mode)
{
case DISP_FACTORY_TEMP_VALUE_MODE:
factory_disp_temp_value(temper_value,temper_dec_value);
break;
}
} void factory_disp_off_func(void)
{
} void factory_disp_mode_set(void)
{
disp_sub_mode=;
} void factory_key_timeout(void)
{
} void key_press_factory_func(void)
{
}
void key_release_factory_func(void)
{
}
void key_hold2s_factory_func(void)
{
} void factory_key_func(void)
{
switch(key_status){
case KEY_WAIT:
break;
case KEY_PRESS:
key_press_factory_func();
break;
case KEY_RELEASE:
key_release_factory_func();
break;
case KEY_HOLD_2S:
key_hold2s_factory_func();
break;
} }

2017.11.24 Stm8L151-factory的更多相关文章

  1. 2017.11.24 算法分析与设计------Gay格雷码

    1. 格雷码问题: 对于给定的正整数n,格雷码为满足如下条件的一个编码序列: (1) 序列由2n个编码组成,每个编码都是长度为n的二进制位串. (2) 序列中无相同的编码. (3) 序列中位置相邻的两 ...

  2. Becoming inspired - ASC - 2017 MARCH 24

    Becoming inspired - The 11 questions to ask yourself when you feel uninspired @ Advanced Studio Clas ...

  3. [LOJ 6249]「CodePlus 2017 11 月赛」汀博尔

    Description 有 n 棵树,初始时每棵树的高度为 H_i,第 i 棵树每月都会长高 A_i.现在有个木料长度总量为 S 的订单,客户要求每块木料的长度不能小于 L,而且木料必须是整棵树(即不 ...

  4. [LOJ 6248]「CodePlus 2017 11 月赛」晨跑

    Description “无体育,不清华”.“每天锻炼一小时,健康工作五十年,幸福生活一辈子” 在清华,体育运动绝对是同学们生活中不可或缺的一部分.为了响应学校的号召,模范好学生王队长决定坚持晨跑.不 ...

  5. Xamarin 2017.11.9更新

     Xamarin 2017.11.9更新 本次更新主要针对Xamarin.iOS,适配了iOS 11.1和Xcode 9.1.Visual Studio 2017升级到15.4.3获得新功能.Visu ...

  6. 2017.11.11 B201 练习题思路及解题方法

    2017.11.11 B201 练习题思路及解题方法 题目类型及涵盖知识点 本次总共有6道题目,都属于MISC分类的题目,涵盖的知识点有 信息隐藏 暴力破解 音轨,摩斯电码 gif修改,base64原 ...

  7. iOS静态库.a总结(2017.1.24增加脚本打包方法)

    修改于:2017.1.24 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.根据源代码的公开情况,库可以分为2种类型 a.开源库 公开源代码,能看到具体实现 ,比如SDWebImag ...

  8. jingchi.ai 2017.11.25-26 Onsite面试

    时间:2017.11.25 - 11.26 地点:安徽安庆 来回路费报销,住宿报销. day1: 大哥哥问了我一个实际中他们遇到的问题.有n个点,将点进行分块输出,输出各个块的均值点.具体就是100* ...

  9. [CodePlus 2017 11月赛&洛谷P4058]木材 题解(二分答案)

    [CodePlus 2017 11月赛&洛谷P4058]木材 Description 有 n棵树,初始时每棵树的高度为 Hi ,第 i棵树每月都会长高 Ai.现在有个木料长度总量为 S的订单, ...

随机推荐

  1. Redis以服务的形式启动

    ★期望目标:把RedisWatcher安装为windows服务. 安装完成后, 到安装目录下修改watcher.conf. 注意,任何路径都不可包含空格,中文,特殊字符,且全部使用绝对路径 ※配置文件 ...

  2. [笔记]Go语言实现同一结构体适配多种消息源

    问题: 提供天气信息的网站有很多,每家的数据及格式都不同,为了适配各种不同的天气接口,写了如下程序. 代码如下: package main import ( "encoding/json&q ...

  3. java发送http请求和多线程

    0 概述 在写app后台的时候,需要调用另一个服务器上的算法服务,所以需要发送http请求来获取结果. 考虑到一个功能(比如智能中医)需要调用好几个接口(人脸识别,舌苔识别,饮食推荐),大部分时间花在 ...

  4. SpringBoot之Servlet、Filter、Listener配置

    在SpringBoot中是不需要配置web.xml的,那么原来在web.xml中配置的Servlet.Filter.Listener现在怎么弄呢? SpringBoot提供了三种Bean Filter ...

  5. C# Json格式

    using LitJson; //自定义Json类 JsonDataResult jsondata = new JsonDataResult() { Success = false }; HttpCo ...

  6. 20145235李涛《网络对抗》Exp9 Web安全基础实践

    基础问答 SQL注入攻击原理,如何防御? SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意SQL命令的目的. 对于SQL注入攻击的防范 ...

  7. 行列转换文本处理--awk xargs 回顾

    awk 数组回顾: 9.1 数组 举例:统计当前主机上每一个TCP连接状态以及每种连接状态的数目[非常实用] # netstat -tan | awk '/^tcp/{STATE[$NF]++}END ...

  8. Spring_事务-注解代码

    applicationContext.xml <?xml version="1.0" encoding="UTF-8"?><beans xml ...

  9. pbs "ll: command not found"

    可以用  ls -ltr   替代 ll

  10. 基于mysql数据库集群的360度水平切割

    1.why sharding? 我们都知道,信息行业发展日益迅速,积累下来的数据信息越来越多,互联网公司门要维护的数据日益庞大.设想一下,假如腾讯公司只用一个数据库的一张表格来存储所有qq注册用户的登 ...