热敏电阻温度计算 公式 程序

一、热敏电阻公式

NTC 热敏电阻温度计算公式:Rt = R *EXP(B*(1/T1-1/T2))

其中,T1和T2指的是K度,即开尔文温度。

Rt 是热敏电阻在T1温度下的阻值。

R是热敏电阻在T2常温下的标称阻值。100K的热敏电阻25℃的值为100K(即R=100K)。T2=(273.15+25)

EXP是e的n次方

B值是热敏电阻的重要参数

通过转换可以得到温度T1与电阻Rt的关系T1=1/(ln(Rt/R)/B+1/T2)

对应的摄氏温度t=T1-273.15,同时+0.5的误差矫正。

二、硬件连接

单片机是3.3V供电,热敏电阻与100K电阻连接。

热敏电阻参数为100K,B值为3950

三、程序

下面是程序(stm32),检测了4路温度

因为要用到数学函数所以需要添加头文件#include "math.h"


然后写公式(电压转换、电阻转换、温度转换)

四、ln、log、lg说明

数学中的公式和c语言中有小小的区别。

1、数学中

log是对数符号,右边写真数和底数(上面是真数,下面是底数)

lg是以10为底数(例lg100=2)(lg为常用对数)

ln是以e为底数(lne2=2)(ln为自然对数 e=2.7182818284590452353602874713527...

2、c语言中

c语言里面只有两个函数log和log10


其中

函数 log(x) 表示是以e为底的自然对数,即 ln(x)

函数 log10(x) 以10为底的对数,即 lg(x)

以其它数为底的对数用换底公式来表示

函数如下:

double logab(double a,double b)
{
return log(b)/log(a);
}


### Git 推送被拒绝的问题分析 当执行 `git push` 命令时遇到 `remote rejected (pre-receive hook declined)` 错误,通常表示目标分支受到某种保护机制的限制。以下是可能的原因以及相应的解决方案: #### 1. **分支受保护** 如果尝试推送到一个受保护的分支(如 `main`, `master`, 或其他自定义保护分支),GitLab 的钩子会阻止未经授权的操作。 - 如果当前用户的角色不足以允许强制推送,则需要联系项目管理员调整权限或解除分支保护。 - 解决方案之一是登录到 GitLab 并修改分支保护设置: - 进入项目的 **Settings -> Repository -> Protected Branches** 页面[^4]。 - 将对应分支的保护状态更改为未保护(Unprotect)。 - 完成操作后再重新尝试推送命令。 #### 2. **强制推送受限** 对于某些配置严格的项目,即使拥有维护者(Maintainer)角色也可能无法执行强制推送 (`--force`) 到受保护分支上。 - 使用以下替代方法来更新远程仓库中的内容而不触发冲突: ```bash git fetch origin git rebase origin/main git push origin main ``` #### 3. **更改用户权限** 如果是开发者(Developer)角色,默认情况下不具备管理受保护分支的能力。可以通过提升用户的访问级别解决问题: - 请求项目管理员将您的角色升级为更高权限等级(例如 Maintainer 或 Owner)。这使得您可以直接编辑受保护分支上的代码并完成推送过程[^5]。 #### 4. **绕过预接收挂钩检查** 在特殊场景下,可以临时禁用服务器端的 hooks 来规避此问题,但这需谨慎对待以免破坏工作流规则。 - 让管理员协助暂停相关验证逻辑直到必要变更完成后恢复启用。 ```python # 示例 Python 脚本用于自动化部分流程处理 import subprocess def execute_command(command): result = subprocess.run(command, shell=True, capture_output=True, text=True) if result.returncode != 0: raise Exception(f"Command failed with output:\n{result.stderr}") return result.stdout try: # Fetch latest updates from remote repository execute_command('git fetch origin') # Reapply local changes on top of fetched commits execute_command('git rebase origin/main') # Push updated history back to the server without forcing overwrite execute_command('git push origin main') except Exception as e: print(e) ``` 以上提供了几种常见情况下的应对策略,请依据实际环境选取适合的办法实施修正措施。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值