1.为ä»ä¹è½¯ä»¶è½å½±åå°ç¡¬ä»¶
2.新能源汽车整车控制器VCU 硬件在环(HiL)仿真测试方案——干货分享
3.无线插座的电源电源使用方法
4.用STM32做了个电子秤,电路代码原理挺简单的测试测试
5.bochs源代码
6.Linux电源管理之休眠
为ä»ä¹è½¯ä»¶è½å½±åå°ç¡¬ä»¶
æåªç¥éæ¯ä¸ä¸ªåå«biosç软件çä½ç¨
第ä¸ä¸ªé¨åæ¯ç¨äºçµèåæ¥éçµæºæ¶å¯¹ç¡¬ä»¶é¨åçæ£æµï¼ä¹å«åå çµèªæ£ï¼Power On Self Testï¼ç®ç§°POSTï¼ï¼åè½æ¯æ£æ¥çµèæ¯å¦è¯å¥½ï¼é常å®æ´çPOSTèªæ£å°å æ¬å¯¹CPUï¼Kåºæ¬å åï¼1M以ä¸çæ©å±å åï¼ROMï¼ä¸»æ¿ï¼CMOSåå¨å¨ï¼ä¸²å¹¶å£ï¼æ¾ç¤ºå¡ï¼è½¯ç¡¬çåç³»ç»åé®çè¿è¡æµè¯ï¼ä¸æ¦å¨èªæ£ä¸åç°é®é¢ï¼ç³»ç»å°ç»åºæ示信æ¯æ鸣ç¬è¦åãèªæ£ä¸å¦åç°æé误ï¼å°æ两ç§æ åµå¤çï¼å¯¹äºä¸¥éæ éï¼è´å½æ§æ éï¼ååæºï¼æ¤æ¶ç±äºåç§åå§åæä½è¿æ²¡å®æï¼ä¸è½ç»åºä»»ä½æ示æä¿¡å·ï¼å¯¹äºé严éæ éåç»åºæ示æ声é³æ¥è¦ä¿¡å·ï¼çå¾ ç¨æ·å¤çã
第äºä¸ªé¨åæ¯åå§åï¼å æ¬å建ä¸æåéã设置å¯åå¨ã对ä¸äºå¤é¨è®¾å¤è¿è¡åå§ååæ£æµçï¼å ¶ä¸å¾éè¦çä¸é¨åæ¯BIOS设置ï¼ä¸»è¦æ¯å¯¹ç¡¬ä»¶è®¾ç½®çä¸äºåæ°ï¼å½çµèå¯å¨æ¶ä¼è¯»åè¿äºåæ°ï¼å¹¶åå®é 硬件设置è¿è¡æ¯è¾ï¼å¦æä¸ç¬¦åï¼ä¼å½±åç³»ç»çå¯å¨ã
第ä¸ä¸ªé¨åæ¯å¼å¯¼ç¨åºï¼åè½æ¯å¼å¯¼DOSæå ¶ä»æä½ç³»ç»ãBIOSå ä»è½¯çæ硬ççå¼å§æåºè¯»åå¼å¯¼è®°å½ï¼å¦æ没ææ¾å°ï¼åä¼å¨æ¾ç¤ºå¨ä¸æ¾ç¤ºæ²¡æå¼å¯¼è®¾å¤ï¼å¦ææ¾å°å¼å¯¼è®°å½ä¼æçµèçæ§å¶æ转ç»å¼å¯¼è®°å½ï¼ç±å¼å¯¼è®°å½ææä½ç³»ç»è£ å ¥çµèï¼å¨çµèå¯å¨æååï¼BIOSçè¿é¨åä»»å¡å°±å®æäºã
ï¼äºï¼ç¨åºæå¡å¤ç
ç¨åºæå¡å¤çç¨åºä¸»è¦æ¯ä¸ºåºç¨ç¨åºåæä½ç³»ç»æå¡ï¼è¿äºæå¡ä¸»è¦ä¸è¾å ¥è¾åºè®¾å¤æå ³ï¼ä¾å¦è¯»ç£çãæ件è¾åºå°æå°æºçã为äºå®æè¿äºæä½ï¼BIOSå¿ é¡»ç´æ¥ä¸è®¡ç®æºçIï¼O设å¤æ交éï¼å®éè¿ç«¯å£ååºå½ä»¤ï¼ååç§å¤é¨è®¾å¤ä¼ éæ°æ®ä»¥åä»å®ä»¬é£å¿æ¥æ¶æ°æ®ï¼ä½¿ç¨åºè½å¤è±ç¦»å ·ä½ç硬件æä½ã
ï¼ä¸ï¼ç¡¬ä»¶ä¸æå¤ç
硬件ä¸æå¤çååå«å¤çPCæºç¡¬ä»¶çéæ±ï¼BIOSçæå¡åè½æ¯éè¿è°ç¨ä¸ææå¡ç¨åºæ¥å®ç°çï¼è¿äºæå¡å为å¾å¤ç»ï¼æ¯ç»æä¸ä¸ªä¸é¨çä¸æãä¾å¦è§é¢æå¡ï¼ä¸æå·ä¸ºHï¼å±å¹æå°ï¼ä¸æå·ä¸ºHï¼ç£çå串è¡å£æå¡ï¼ä¸æHçãæ¯ä¸ç»åæ ¹æ®å ·ä½åè½ç»å为ä¸åçæå¡å·ãåºç¨ç¨åºéè¦ä½¿ç¨åªäºå¤è®¾ãè¿è¡ä»ä¹æä½åªéè¦å¨ç¨åºä¸ç¨ç¸åºçæ令说æå³å¯ï¼æ éç´æ¥æ§å¶ã
ï¼äºï¼ï¼ä¸ï¼ä¸¤é¨åè½ç¶æ¯ä¸¤ä¸ªç¬ç«çå 容ï¼ä½å¨ä½¿ç¨ä¸å¯åç¸å ³ãè¿ä¸¤é¨ååå«ä¸ºè½¯ä»¶å硬件æå¡ï¼ç»åå°ä¸èµ·ï¼ä½¿è®¡ç®æºç³»ç»æ£å¸¸è¿è¡ã
å¦å¤é注æï¼BIOS设置ä¸å½ä¼ç´æ¥æå计ç®æºç硬件ï¼çè³ç§æ¯ä¸»æ¿ï¼å»ºè®®ä¸çæè æ éä¿®æ¹è®¾ç½®ã
ï¼åï¼è®°å½è®¾ç½®å¼
ç¨æ·å¯ä»¥éè¿è®¾ç½®BIOSæ¥æ¹ååç§ä¸åç设置ï¼æ¯å¦onboardæ¾å¡çå å大å°ã
ï¼äºï¼å è½½æä½ç³»ç»
ç¨æ·æä¸ææçæä½ç³»ç»é½æ¯æBIOS转交ç»å¼å¯¼æåºï¼åç±å¼å¯¼æåºè½¬å°åååºæ¿æ´»ååºçæä½ç³»ç»ã
BIOSçæ¿æ´»è¿ç¨
å½BIOSæ¿æ´»æ¶ä¼å å»ç¡®è®¤CMOSä¸çèµææ¯å¦æ£ç¡®ãå¦ææ£ç¡®ï¼ä¾¿ä¼å°ä¹åç¨æ·åå¨å¨CMOSçèµæï¼å ä¸å·²åææ¾å°ç硬件信æ¯ï¼æ´åæä¸ä¸ªè¡¨æ ¼ï¼åå°å åä¸ï¼ä¹å°±æ¯æè°çSMBIOSãå¦æåç°é误ï¼åä¼èªå¨ä»¥é»è®¤å¼å代CMOSæä¾çèµæãæ以è¿ä»½åå ¥å åçSMBIOSè¡¨æ ¼ï¼å°±æ¯ç¨æ·è¿å ¥BIOSé项åï¼å¯ä»¥çå°æéæ©çææä¿¡æ¯ã
ææä¼å¨BIOSä¹ååççæä½å°±åªæPower Onï¼ä¹å°±æ¯æä¸è®¡ç®æºä¸çµæºå¼å ³çé£ä¸ç¬é´ãå¨Power Oné¶æ®µä¸å¼å§ï¼ä¼è¿å ¥BIOSçæ¿æ´»æµç¨ï¼å½ç¨æ·ä¸æä¸çµæºå¼å ³ï¼CPUä¼å 被æ¿æ´»å»å¯»æ¾BIOSï¼æ¥çBIOSä¼å å¨Flash Memoryä¸æ§è¡ï¼åå ä¸CMOSä¸ç¨æ·æå好ç设置ï¼ç¶åBIOSå°èªå·±è§£å缩å°è®¡ç®æºç主åå¨å¨ä¸ãæ¤æ¶ï¼ç¨æ·è¥æä¸ãDELãé®ï¼å°±å¯ä»¥è¿å ¥BIOSææä¾ç设置é项ï¼ä»èçå°ææç设置å¼ï¼ææ¯å½ç¨æ·è¿å ¥æä½ç³»ç»åï¼æä½ç³»ç»å°±å¯ä»¥åèå åä¸çBIOSèµæï¼è®¿é®å°æ¯ä¸ä¸ªç¡¬ä»¶å°åã
新能源汽车整车控制器VCU 硬件在环(HiL)仿真测试方案——干货分享
HiL的定义:硬件在环是计算机专业术语,亦为硬件在回路,源码源码其旨在通过使用“硬件在环”(HiL)来显著降低开发时间和成本。电源电源在开发电气机械元件或系统时,测试测试过去计算机仿真和实际实验通常是源码源码zb建站源码分开进行。然而,电源电源通过采用HiL方式,测试测试这两者可以结合在一起,源码源码展现出极大的电源电源效率提升。
硬件在环(HiL)主要有三种形式:1)虚拟控制器+虚拟对象=动态仿真系统(纯粹的测试测试软件系统仿真);2)虚拟控制器+实际对象=快速控制原型(RCP)仿真系统(系统的一种半实物仿真);3)实际控制器+虚拟对象=硬件在回路(HiL)仿真系统(系统的另一种半实物仿真)。HiL目前主要有三大硬件平台:NI平台、源码源码DSpace平台、电源电源ETAS平台(ETAS已宣布退出HiL业务)。测试测试本文主要以NI平台介绍VCU HiL系统方案。源码源码
VCU HiL测试系统方案:HiL测试系统整体架构包含三层:第一层次为HiL测试系统软硬件架构,包括硬件设备、实验管理软件、被测控制器等;第二层次为HiL测试系统开发,基于第一层次软硬件架构进行被测对象仿真模型开发、实时I/O接口匹配、硬线信号匹配及实验定义等;第三层次为HiL测试,包括测试序列开发、激励生成加载、模型参数调试、故障模拟实现及测试分析与评估等。
VCU HiL测试系统架构主要包括:上位机(PC)、PXI机箱、实时处理器、数据采集板卡、CAN通讯板卡、DIO板卡、电阻模拟板卡、低压可编程电源等。上位机电脑安装Veristand、Teststand软件,通过以太网与PXI机箱中的实时处理器连接。实时处理器运行实时系统(Real Time),安装Veristand终端引擎,通过与上位机数据传输,将仿真模型部署到实时系统中并控制运行状态。PXI机箱提供多种类型的板卡,实现不同信号的模拟和采集功能。
VCU HiL测试系统主要功能包括:模拟VCU所有硬线输入信号,采集VCU所有硬线输出信号,模拟VCU CAN总线接收信号和接收CAN总线发送信号,通过整车实时仿真模型及I/O接口实现VCU的闭环测试验证,通过软/硬件实现VCU相关电气故障模拟,九天自助建站系统源码通过可编程直流电源模拟VCU的供电电源,通过编辑测试序列实现自动化测试,支持VCU所有I/O端口测试验证,支持VCU CAN通讯功能测试验证,支持VCU整车控制策略全功能验证,支持VCU故障诊断功能测试验证,支持VCU极限工况下控制功能测试验证,支持VCU回归测试,支持VCU耐久测试,支持NEDC等典型标准工况测试及自定义工况测试。
VCU HiL测试系统主要由硬件平台、软件平台和控制模型三部分组成。硬件平台采用分布式设计模式,上位机作为控制核心,下位机以PXI机箱、实时处理器及I/O板卡为核心。系统硬件平台包括PXI机箱、实时处理器、I/O板卡、通讯板卡、电源管理模块、故障注入板卡、低压可编程电源、信号调理模块、机柜及上位机电脑。软件平台包括实验管理软件和自动化测试软件。本方案试验管理软件基于NI VeriStand软件平台,实现系统配置管理和测试管理。自动化测试软件基于NI TestStand软件平台,提供可视化测试序列编辑环境、测试管理功能、测试执行、多线程并行测试、用户管理、测试报告管理、自定义操作员界面、源代码控制整合、数据库记录等功能。仿真模型为纯电动车整车仿真模型,包括车辆纵向动力学模型、驾驶员模型、电机模型、动力电池模型、主减速器模型、虚拟控制器模型、I/O模型、道路及环境模型等,微信拼团源码微后盾满足电动汽车整车控制策略功能测试验证要求,基于MATLAB/Simulink软件开发,模型精度高,支持用户图形化界面输入数据,实时在线修改模型参数,支持离线和在线仿真,满足新能源汽车HiL测试系统实时性要求,模型开源、规范、易读。
HiL测试流程包括测试准备、测试用例开发、测试工程搭建、测试调试、测试总结。测试准备包含被测控制器接口分析、硬件资源分配、控制器线束设计、功能分析、测试计划安排。测试用例开发方法研究是测试的关键点之一,采用合理方法开发测试用例,增加测试覆盖度,减少冗余重复,提高测试效率。测试工程搭建基于实验管理软件和自动化测试软件完成,包括软硬件工程配置、测试界面搭建、模型配置、通讯配置等。测试调试包含冒烟测试、接口测试、自动化测试,测试报告通过HiL测试管理软件执行测试,输出报告。测试总结包括环境、周期、人员、内容分析,问题统计与解决,测试完成情况检查,提交工作成果。
总结:硬件在环仿真测试系统使用实时处理器运行仿真模型模拟受控对象运行状态,通过I/O接口与被测ECU连接,对ECU进行全面、系统测试。从安全性、2016网址导航源码php可行性和成本考虑,HiL硬件在环仿真测试已成为ECU开发流程中重要环节,减少了实车测试次数,缩短开发时间,降低成本,提高ECU软件质量,降低汽车厂风险。在新能源汽车领域,HiL硬件在环仿真测试对于核心电控系统极为重要。近年来,随着对汽车行业的资本密集投入,新能源汽车HiL测试工程师岗位需求量大,薪资增加,从长远职业规划来看,HiL测试工程师是一个可持续发展的岗位。意昂工课根据多年工程经验,推出了HiL测试课程,基于实际项目案例和岗位需求技能制定教学大纲,采用任务驱动方式引导学员,提升HiL测试实践能力,积累实战经验。对HiL测试感兴趣的学员可私聊沟通。
无线插座的使用方法
简介:使用磁保持继电器的WIFI智能插座。
节电性能优良,整体功耗只有0.W左右。可长期使用不会造成继电器线圈发热。还支持MQTT和OTA在线升级固件。
本文以WIFI智能插座为主题,讲述ESPS、ESP+硬件等的使用技巧……并完成智能插座的制作!
下文为软件、硬件安装步骤,超级详细,可以一步一步跟着做~
安装步骤导航(7步):
给ESPS刷固件(3)、配网设置MQTT参数等(5)、安装MQTT APP并设置参数(4)、焊接、测试、最后的焊接、装壳。
安装步骤
1.先给ESPS刷好固件
1.软件工程导入
1.
安装Visual Studio Code
(vscode),免费软件,请自行百度安装教程。
2.在vscode里面
安装PlatformIO插件
,请自行百度。
3.将工程《磁保持WIFI智能插座》附件中的《VSCODE源代码》。
解压缩以后用VSCODE打开里面的八爪鱼采集器 源码文件夹,就等于打开了这个软件项目。
下载附件解压缩
,可以看到里面有一个文件夹
WIFI_PLUG_ESPS_HF3F 。
文件夹根里面有一个
platformio.ini
如果不清楚,请私信我固件。这里无法上传文件……
4.在vscode 菜单-文件-打开文件夹-到上一步解压缩的
WIFI_PLUG_ESPS_HF3F
文件夹-选择文件夹。
5.这样软件工程就导入完成了。
2.编译并上传固件(烧录固件)
1.把ESPS卡在
ESP开发测试架/烧录器
上,插入到电脑上的USB口,可能需要自己装驱动。
根据USB口不同,
可能还需要修改
一下
platformio.ini文件
里面的
COM5
,改成你自己的
COM口。
怎么看COM口?
我的电脑-设备管理器-端口
2.将ESP开发测试架/烧录器
打开电源,在vscode里面打开文件 src/main.cpp,并点击PlatformIO:Upload。
3.因本软件使用了LittleFS文件系统,因此还需要给ESPS安装文件系统。
依次点击如下1、2、3、4按钮:
文件系统安装完成。
3.软件运行:
1.依次点击如下1、2按钮。
2.按一下
ESP开发测试架/烧录器
上的RST复位按钮,重启ESPS。
3.在vscode界面看到这串输出,
就表示软件在正常运行了。
2.给ESPS配网,设置好MQTT参数等
1.设备启动流程
插电启动:
LED快速闪烁3次
以后,闪3次以后才能按钮,否则设备无法正常启动
按住2秒以后放手,进入了WEB配网程序(此时
LED快速闪烁
)。按住6秒以后放手,进入微信扫码配网(此时
LED慢速闪烁
)启动没按钮就进入自动WIFI连网,此时
LED每秒闪2次
。连网成功,就通过NTP初始化时间,还有自动连接MQTT服务器,开始正常运行(此时
LED常亮3分钟后熄灭
)。
本设备只支持2.4G WIFI
,不支持5G WIFI。
WEB配网或微信扫码都可以配置WIFI密码,
但WEB配网可同时设置MQTT等参数
,而微信扫码设置不了MQTT参数。
设备初次启动
设置初始参数:(
建议按照以下顺序
)
插电启动(LED快闪3次)-按钮6秒放手-微信扫码配网-自动重启(LED快闪3次)-按钮2秒放手-WEB配网
-
自动重启(LED快闪3次)-正常使用。
2.微信扫码配网
用手机微信扫描附件里的
配网码
,进入微信配网小程序。
找到上网用的WIFI以后,填写WIFI密码,就可以
通过手机传WIFI ssid和密码
给设备。
设备配网成功以后会自动重启,进入启动流程。
3.WEB配网
此时设备会生成一个配网用的软件AP热点,参数如下:
IP:..4.1
ssid:qwer
password:asdfghjkl
用手机连上这个WIFI以后,在手机浏览器输入
.emqx.io (有很多免费的MQTT服务器,可以自行百度)
port:
topic:oldfox/esps/hf3f/{ randid} (设备初始化时会自动生成唯一的{ randid},一般不用修改)
OTA固件链接
:.emqx.io
,其他地方都保持默认。填好以后点右上角的
√
保存。
到这里MQTT服务器参数就设置好了。
3.新增一个仪表盘
进入这个界面以后点击左上角进入菜单。
在菜单里面选择Dashboards。
点右上角的+号新建一个仪表盘。
输入你想要的名字(比如
磁保持WIFI插座
),然后点右上角的
√
保存。
4.给仪表盘增加装置
在仪表盘列表,点击刚新增的仪表盘(
磁保持WIFI插座
)。
在插座这个界面点击右上角的
+
号增加一个装置。
装置类型选择
Toggle
(切换开关,在ON/OFF两种状态间切换)。
填写切换开关的参数:
Name:开关
MQTT enable:打开
MQTT connection:选择 broker-cn.emqx.io
Subscribe to topic:
oldfox/esps/hf3f/s4QEJYlo/stat/relay
Qos(Qos for subscribe/Qos for publish):2
Topic for publish:
oldfox/esps/hf3f/s4QEJYlo/relay/in
上面这个加粗黑体字的部分,实际上是:《配网操作说明》 中的topic参数:
oldfox/esps/hf3f/s4QEJYlo
所以只要在配网的时候把
topic参数保存在手机微信或者记事本,需要用的时候直接复制出来就好
ps:
以下所有设置中的
oldfox/esps/hf3f/s4QEJYlo 都应该替换成你自己的topic参数。
全部填好以后,点击界面右上角的
√
保存。
保存好以后界面是这样的,再点击右上角的
+
号增加一个装置。
这次装置类型选择Text(文本)。
填写文本装置相应的参数并点右上角的
√
保存:
Name:当前时间
MQTT enable:打开
connection:broker-cn.emqx.io
Subscribe:
oldfox/esps/hf3f/s4QEJYlo/stat/time
Qos:0
publish:无
QOS是质量、优先级。
取值0-2,0最低,2最高。
这里的当前时间值因为每秒钟都要接收,
不太重要
所以取值为0;上面的开关值比较重要所以Oos取值2。
到这里仪表盘装置已经开始运行了(时间在走)。
但是很奇怪,时间后面有一个单位
℃
,要修改一下:
在
当前时间4个字
上按住不放,出来的菜单里面选择
Edit
在编辑界面依次点击
Design(设计) - Unit(单位) - Show unit(显示单位) - 关闭显示
,然后点右上角的
√
保存。
好了时间显示终于正常了。
但是显示的地方太窄了,我想拉宽一点,点这里修改界面。
可以更改装置的上下左右位置以及装置大小。
当前时间这个装置的右下角这里
按住不放,往右边拖到边,放手
把当前时间拉到足够的宽度以后,点右上角的
√
保存。
最终效果:
其他的仪表盘装置设置请自行完成,必须的参数列在下面(没错,我就是懒):
一共七项,更多请查看文章最后的截图。
4.焊接
将ESPS焊接到模块上:
在
PCB_插座主体
上焊接,安装元器件。将ESPS模块焊到主体PCB上。焊到这个程度就可以了,公母一体插座(红色圈圈的部分)先不要焊。另外在蓝色箭头指示位置,5V(红色)/GND(黑色)分别焊接2根杜邦线公头。
5.测试
在
ESP开发测试架/烧录器
上取电:
5V(红色)/GND(黑色)分别插上2根杜邦线母头;将上一步骤的2根公头插上。
开电测试:
看看MQTT APP上是否能正常显示跳动的时间(说明ESPS模块焊接好,连接WIFI正常,并连上了MQTT服务器);开关是否反应正常(LED会随开关亮灭);用万用表测量继电器的输出是否能被MQTT APP的开关控制,正常通断。
6.最后的焊接
以上测试都通过以后,
说明插座软硬件功能正常。
可以关电把2根杜邦线焊下来,焊接公母一体的插座。
7.装壳
全部焊接好,可以装壳了。
设计图
原理图
用STM做了个电子秤,电路代码原理挺简单的
这个基于STM和HX的智能体重秤项目在开源网站上被发现,不仅能够测量体重,还能调整测量单位,支持克和千克,最低测量单位可设置为克。这里分享了项目的开源教程,涵盖了功能、硬件组成、电路原理、软件解析以及注意事项。这个项目成本低廉,仅为元,由7个部分的硬件组成,包括电源电路、主控电路、晶振电路、称重电路、稳压电路、通信电路、复位电路和OLED显示接口。
HX是一种高精度的称重传感器处理芯片,能够通过四个压力应变片构成全桥来精确测量体重。主控芯片STM与HX通信,通过解析压力应变片的变形量来计算重量,再与手机端的MX-蓝牙模块进行数据传输。以下是电路拆分解析:
- **电源电路**:由TYPE-C接口、锂电池模块、充电电路组成,提供稳定的电源。充电完成后,LED2指示灯亮起,TP芯片管理锂电池充电。P2接口接入3.7V锂电池。
- **主控电路**:选用STMFC8T6作为主控芯片,具备2.0v~3.6v的工作电压,最大时钟频率为MHz,拥有KB的闪存和KB的SRAM,支持多种通信和外部设备连接需求。电源输入部分需添加nf电容进行滤波。
- **晶振电路**:使用.Khz的低速晶振和8Mhz的高速晶振,配置时钟输入源为外部输入。
- **称重电路**:HX作为数模转换芯片,通过SPI或简化串行接口将模拟信号转换为便于与微控制器通信的数字数据。压力传感器通过全桥连接方式接入HX的E+、A+、GND、A-接口。
- **稳压电路**:采用AMS稳压芯片输出3.3V。
- **通信电路**:通过蓝牙模块MA-A实现与手机的无线连接,支持BLE5.2蓝牙接口,具有良好的通信距离和低功耗特性。
- **复位电路**:通过按下主控的RESET引脚实现复位,松开后系统重新启动。
- **OLED显示接口**:OLED显示器通过I2C协议与主控芯片通信,用于显示体重信息。
软件解析包括手机端应用和嵌入式软件两个部分:
- **手机端应用**:采用微信小程序设计,能够存储和分析称重数据,并通过ec-canvas控件动态展示图表。
- **嵌入式软件**:使用STMCUBE进行时钟配置,关键代码包括从HX模块读取传感器数值、将压力传感器数值转换为重量并储存、OLED显示字符串代码等。
注意事项涉及原理图绘制、布线和调试的关键点,确保项目成功实现。
本项目为开源,旨在提供一个成本低廉、功能全面的智能体重秤解决方案,适合DIY爱好者和技术学习者。详细资料和源代码可下载获取。通过关注嘉立创EDA头条号,可获得一手优质开源项目的最新动态和资源。
bochs源代码
Bochs源代码可以从站点的Bochs主页获取。您可以下载最新发布的版本,或者使用CVS获取最新源代码,甚至可以获取每晚更新的CVS快照。正式发布的版本提供了最稳定的代码,但若想体验最新功能,推荐使用CVS版。 Bochs源代码项目提供了一种方法,让开发者能够获取和使用Bochs的源代码。通过访问,用户可以访问Bochs的主页,从这里可以下载最新的发布版本,或使用CVS(源代码管理软件)获取实时更新的源代码。 正式发布的版本确保了Bochs软件的稳定性和可靠性。这些版本经过严格测试和优化,适合日常使用。然而,对于那些希望探索和尝试最新功能的用户,推荐使用CVS版本。CVS版本提供了最新的代码更新,包含开发者正在进行的实验性功能。 Bochs源代码管理方式提供了灵活性和透明度,使用户能够深入了解和参与Bochs项目。通过获取和使用源代码,用户可以自定义Bochs,探索其内部工作原理,甚至贡献自己的改进和功能扩展。 Bochs是一个功能丰富的虚拟机模拟器,支持多种操作系统和处理器架构。其源代码提供了深入研究计算机架构和虚拟化技术的宝贵资源。通过访问Bochs源代码,用户不仅可以学习如何使用Bochs,还可以了解构建和维护高效模拟器的实践知识。扩展资料
Bochs是一个x硬件平台的开源模拟器。它可以模拟各种硬件的配置。Bochs模拟的是整个PC平台,包括I/O设备、内存和BIOS。更为有趣的是,甚至可以不使用PC硬件来运行Bochs。事实上,它可以在任何编译运行Bochs的平台上模拟x硬件。通过改变配置,可以指定使用的CPU(、或者),以及内存大小等。一句话,Bochs是电脑里的“PC”。根据需要,Bochs还可以模拟多台PC,此外,它甚至还有自己的电源按钮。Linux电源管理之休眠
当嵌入式设备依赖电池供电时,电源管理变得至关重要。电源管理的目的是在不影响设备正常功能的前提下,最大程度地节省电能。这一概念在移动设备中尤为常见。
Linux内核提供了三种休眠模式:Freeze、Standby和STR(Suspend to RAM)。通过向“/sys/power/state”文件写入“freeze”、“standby”或“mem”,可以在用户空间触发这些模式。
如何进入Suspend模式呢?
内核中与Suspend功能相关的代码包括PM core、Device PM、Platform PM等几个主要部分,具体如下:
1)PM Core
2)Device PM
3)Platform dependent PM
下面这张图对Linux suspend & resume过程进行了概述,读者可以按照这个流程阅读内核源代码。具体说明请参考后面的代码分析。
系统初始化时,会调用pm_init函数,主要完成以下任务:
当我们执行echo "mem" > /sys/power/state命令时,可以在串口上分析休眠代码。
总结上述休眠相关的调用流程:
内核提供的PM中的两个重要结构体:
结合上述代码过程和suspend过程概述图,有助于理解其工作原理。
如果本文对你有所帮助,请一键三连+关注。下篇文章将讲解resume的过程。
参考文章:
Linux电源管理(6)_Generic PM之Suspend功能 (wowotech.net)
Linux内核睡眠唤醒调试_pm_freeze_timeout-CSDN博客