简介本资源是一份面向UI自动化测试初学者的AirTestIDE系统入门指南专为测试工程师、开发人员及零基础想快速上手移动应用自动化测试的学习者设计。文档以实操为导向完整覆盖AirTestIDE安装配置、Android模拟器连接、.air脚本创建与运行、Poco UI树解析、断言验证等核心环节并详解Poco Inspector、冻结模式、测试报告查看等关键功能帮助读者建立从环境搭建到脚本调试的全流程能力。资源为1个6.98MB的PDF文件内容结构清晰含5大章节与详细操作截图便于按需查阅与反复学习。目前已有1074人学习下载是兼顾理论讲解与工程实践的高实用性入门资料。1. AirTestIDE 是什么——一个连截图都能当代码用的自动化测试工具你有没有试过想让手机自动点开某个 App、输几个字、再滑两下找东西结果被各种“找不到元素”“报错说控件不存在”卡住一整天不是代码写错了是根本不知道从哪下手——UI 层像一层毛玻璃看得见按钮却抓不住它截图能存下来但怎么告诉电脑“就点这个红框里的图标”很多新手第一次打开 AirTestIDE第一反应是“这不就是个带截图功能的 IDE 吗和普通 Python 编辑器有啥区别”其实区别特别大AirTestIDE 不是让你“写代码去控制手机”而是让你“对着手机屏幕直接画圈它就自动生成能跑的代码”。它背后有两个轮子一个是靠“认图”干活的 Airtest就像你教小孩认苹果——给张图它就在屏幕上找长得一样的另一个是靠“读结构”干活的 Poco像查户口本直接问 App“登录按钮在第几层、叫什么名字、有没有被遮住”。新手不用懂 Android SDK、不用背 adb 命令、甚至不用会写 for 循环——只要你会截图、会点鼠标、能看懂“点这里→等一下→输文字”这种流程就能写出第一个能跑通的自动化脚本。它专为 UI 测试设计适合测试工程师、产品验收人员、刚转行的 QA也适合开发自己测 Demo。如果你的目标是“三天内让手机自己完成一次完整操作”那 AirTestIDE 就是你今天该下载的第一个工具。2. 先装好再连上零基础也能 5 分钟搞定设备连接2.1 你不需要真机但得有个“能被电脑看见”的手机画面AirTestIDE 的核心前提是它得看到你的手机屏幕。你可以用真机插 USB 线也可以用模拟器推荐雷电模拟器 v4.0官网免费安装后开一个安卓 7.0 或更高版本的虚拟机就行。重点不是设备多高级而是“电脑能不能通过 ADB 认出它”。提示Windows 用户请提前装好雷电模拟器或夜神模拟器并确保模拟器已启动、界面可见。不要急着点 AirTestIDE先确认基础链路通了。2.2 下载、解压、双击——三步启动 AirTestIDE去官网 http://airtest.netease.com 下载 Windows 64 位最新版当前稳定版是 v1.2.9文件名类似AirtestIDE-win64-win-1.2.9.zip。下载完别急着安装——它是个绿色免安装软件# 解压到任意文件夹比如 D:\tools\airtest\ # 进入解压目录双击 AirtestIDE.exe第一次启动会稍慢加载内置 Python 环境耐心等 10 秒左右会出现一个干净的主界面左侧是脚本编辑区中间是设备实时画面窗右侧是设备列表和辅助工具栏。注意如果弹出 Windows 智能屏幕警告“已阻止此应用”点“更多信息” → “仍要运行”。这是因 AirTestIDE 未做微软签名但它是网易官方开源项目安全可信任。2.3 连不上设备先让电脑“看见”它打开 AirTestIDE 后看右下角“移动设备连接”区域。如果显示空白或“未连接”说明 ADB 链路没通。别关软件按顺序排查确认模拟器已开且正常运行雷电模拟器左上角有“正在运行”状态打开命令提示符cmd输入adb devices如果返回类似下面的结果说明 ADB 已识别设备List of devices attached emulator-5554 device如果返回空或* daemon not running说明 ADB 没启动。此时回到 AirTestIDE点右下角“刷新 ADB”按钮一个带循环箭头的图标它会自动调起内置 ADB 并重试3.若仍不显示设备手动指定 ADB 路径点击菜单栏设置 → Airtest 设置 → ADB 目录指向雷电模拟器安装目录下的adb.exe例如D:\leidian\adb.exe。2.4 双击设备名让手机画面“活”起来一旦右侧设备列表出现emulator-5554或你的真机序列号双击它。这时中间区域会立刻同步显示模拟器/真机的实时画面并自动在设备上安装一个叫Yosemite的输入法这是 AirTestIDE 控制手机输入的关键组件。安装完成后你就能在设备窗里看到手机桌面了——这意味着“眼睛”已经睁开“手”马上就能动。2.5 常见问题排查新手最常卡在这 4 个地方现象AirTestIDE 启动后黑屏/白屏中间设备窗一片灰→ 原因显卡驱动太旧或系统缩放比例非 100%如 Win10 设置了 125% 缩放→ 解决右键 AirtestIDE.exe → 属性 → 兼容性 → 勾选“替代高 DPI 缩放行为”下拉选“系统增强”重启软件。现象adb devices显示offline或unauthorized→ 原因手机开启了 USB 调试但没点“允许此电脑进行调试”的弹窗真机常见或模拟器 ADB 端口被占→ 解决真机需在手机弹出授权框时点“允许”模拟器则关闭所有模拟器重启雷电再点 AirTestIDE 的“刷新 ADB”。现象设备列表有设备但双击后设备窗无画面或提示“无法连接设备”→ 原因AirTestIDE 内置 ADB 版本与模拟器不兼容尤其老版雷电→ 解决用模拟器自带的 ADB 替换 AirTestIDE 的 ADB。进雷电安装目录如D:\leidian\复制adb.exe和AdbWinApi.dll粘贴覆盖 AirTestIDE 解压目录下的同名文件。现象设备窗能看到画面但点“Touch”按钮后鼠标圈选无反应→ 原因Yosemite 输入法未设为默认或被系统其他输入法拦截→ 解决手动进手机设置 → 系统管理 → 语言与输入法 → 当前输入法 → 切换为Yosemite若无此选项重启模拟器再试。3. 第一个脚本不写一行代码靠截图生成“点开 App → 搜关键词”全流程3.1 新建一个.air项目这是 AirTestIDE 的专属工程格式.air不是普通 Python 文件而是一个包含脚本 截图模板 配置的打包目录。它让截图和代码永远在一起不怕路径错、不怕图丢。操作路径菜单栏文件 → 新建 → Airtest 项目→ 弹窗中填项目名如my_first_test→ 选保存位置建议用英文路径如D:\airtest\my_first_test→ 点“创建”。创建后编辑区会自动生成一段初始化代码# -*- encodingutf8 -*- __author__ your_name from airtest.core.api import * auto_setup(__file__)这段代码的作用是告诉 AirTestIDE “我是谁、我在哪”后续所有截图、点击都基于当前项目路径工作。你暂时不用改它记住这是每个.air脚本的“身份证”。3.2 用“Touch”按钮把“点图标”变成一行代码现在看中间设备窗——它正显示你的模拟器桌面。我们以“网易云课程”App 为例你可用任意已安装的 App 替代确保 App 图标在桌面可见如不在用模拟器桌面搜索功能调出点击顶部工具栏的Touch按钮图标是手指点屏幕鼠标移到设备窗左键按住拖出一个红色方框精准圈住 App 图标松开鼠标奇迹发生编辑区自动追加一行代码touch(Template(rtpl1607324047907.png, record_pos(0.12, -0.34), resolution(1080, 1920)))这行代码的意思是“在当前屏幕里找一张叫tpl1607324047907.png的图就是你刚截的图标找到后点它的中心位置”。图片已自动保存在项目目录的tpl/子文件夹里record_pos是图标在屏幕上的相对坐标防分辨率变化resolution是截图时的屏幕分辨率。你完全不用管这些参数——AirTestIDE 已帮你算好。3.3 用“Wait”按钮让脚本学会“等页面加载完”App 启动需要时间。如果脚本点完图标立刻执行下一步可能页面还没出来就报错“找不到搜索框”。所以第二步是“等”。等待 App 主页完全加载比如等顶部出现“我的”Tab点击Wait按钮图标是沙漏在设备窗中圈住“我的”文字或图标松开鼠标编辑区新增wait(Template(rtpl1607324047908.png, record_pos(0.0, 0.85), resolution(1080, 1920)), timeout30)关键参数timeout30表示最多等 30 秒超时就报错。这个值可以按需调大如网络慢或调小如确定秒开。3.4 用“Text”按钮让手机自动“打字”进入主页后我们想点搜索框、输“上海悠悠”。先点搜索框用Touch按钮圈住搜索框放大设备窗更易操作→ 自动生成touch(...)再输文字点击Text按钮图标是“Aa”在弹出的输入框里输入上海悠悠→ 点确定编辑区会追加text(上海悠悠)这行代码会调用 Yosemite 输入法逐字发送到当前焦点即你刚点的搜索框。注意中文输入无需额外配置Yosemite 原生支持。3.5 运行看脚本如何一步步“复现你的操作”把光标移到编辑区末尾点顶部绿色三角形 ▶️ 按钮或按 F5。你会看到设备窗中App 自动启动 → 主页加载 → 搜索框被点击 → 键盘弹出 → “上海悠悠”逐字出现编辑区对应代码行变黄表示正在执行执行完变灰若某步失败如图没找到该行变红控制台输出错误详情如Template not found。提示首次运行建议全程盯着设备窗。你会发现AirTestIDE 不是“黑盒执行”而是“每一步都给你直播”这对定位问题极其友好。3.6 常见问题排查截图生成的代码为什么总报错现象touch()执行时报Target not found但图明明在屏幕上→ 原因截图时 App 处于后台/锁屏状态或设备窗被其他窗口遮挡导致截图不全→ 解决运行前确保设备窗完全可见、App 在前台截图时暂停所有动画如关闭模拟器“动态效果”。现象text()输入后手机没反应或乱码→ 原因Yosemite 输入法未启用或系统语言设为非中文如英文系统→ 解决手动进手机设置 → 语言与输入法 → 启用Yosemite并设为默认若系统语言是英文在 Yosemite 设置里勾选“强制中文输入”。现象wait()等了 30 秒还是超时但人眼能看到目标→ 原因目标区域有动态元素干扰如闪烁的广告、跳动的数字导致图像匹配失败→ 解决截图时避开动态区或改用 Poco 定位见第 4 章用控件名而非图片匹配。现象脚本运行一半卡住设备窗无响应→ 原因上一步操作触发了系统弹窗如权限申请、更新提示阻塞了后续流程→ 解决在脚本开头加wake()唤醒屏幕和home()回桌面或用keyevent(BACK)模拟返回键关闭弹窗。4. 当截图不管用时用 Poco 辅助窗“透视” App 的 UI 结构4.1 为什么需要 Poco——当“认图”遇上“动态内容”Airtest 的截图方案很直观但它有个软肋依赖静态画面。比如一个倒计时按钮每秒数字变一次你截的图下一秒就失效又比如一个列表每次加载顺序不同图标位置飘忽不定。这时候靠“看脸”图像识别就不如“查户口”读 UI 结构靠谱。Poco 就是这个“户口本查询员”——它不看图而是直接连接 App 进程读取当前所有控件的层级、名称、状态、坐标。哪怕按钮在动、在缩放、在渐变只要它的 ID如com.netease.course:id/search_btn没变Poco 就能稳稳抓住它。4.2 打开 Poco 辅助窗三步看到“UI 渲染树”确保设备已连接且设备窗显示正常画面点击左侧工具栏Poco 辅助窗按钮图标是 在弹出的 Poco 辅助窗顶部选择平台Android模拟器或 iOS真机→ 点击Connect。稍等 2~3 秒左侧会刷出一棵树状结构这就是当前页面所有 UI 控件的“全家福”。顶层是RootNode往下是LinearLayout、RecyclerView、TextView等容器和元素。每个节点旁有name、type、visible、pos等属性。比如你找的搜索框可能叫search_input类型是EditTextvisible为True。4.3 用 Poco Inspector 精准定位点一下代码自动生成Poco 辅助窗顶部有Poco Inspector按钮图标是十字准星。点它鼠标变成吸管在设备窗中点击任意控件如搜索框左侧树中对应节点高亮点击后编辑区自动插入一行 Poco 代码poco(com.netease.course:id/search_input).click()这比截图更稳定它不依赖图片只依赖控件 ID。即使 App 更新了图标样式只要开发没改 ID脚本就依然有效。4.4 冻结模式让“点控件”不触发跳转有个小陷阱当你在设备窗点一个按钮如“我的”Tab它会立刻跳转到新页面导致你来不及看新页面的控件树。Poco 提供“冻结”功能点击 Poco 辅助窗右上角的❄️ 冻结按钮此时设备窗画面静止但你仍可点击任何位置左侧树会高亮对应控件且页面不会跳转查完所有控件再点❄️ 解冻恢复交互。提示冻结模式是 Poco 最实用的技巧之一。我第一次学时因为没用它点了 5 次“我的”Tab 才看清个人中心页的结构——后来养成习惯查新页面前必先冻结。4.5 把 Poco 代码嵌入 Airtest 脚本混合使用更灵活AirTestIDE 支持 Airtest图像和 Poco控件混写。比如用touch()启动 App图稳定用poco(xxx).wait_for_appearance(10)等待首页加载比wait()更准用poco(search_input).click()点搜索框ID 稳定用text(上海悠悠)输文字输入法稳定。这样组合既发挥截图的直观性又规避动态内容的坑。4.6 常见问题排查Poco 连不上先检查这 3 件事现象Poco 辅助窗点Connect后一直转圈或提示Connection refused→ 原因App 未集成 Poco SDK官方要求 Android App 需在build.gradle中添加依赖→ 解决测试自有 App 时需开发在代码中接入 Poco测试第三方 App如微信、淘宝则无法用 Poco只能靠 Airtest 截图。现象Poco 树为空或只显示RootNode下无子节点→ 原因App 处于后台或当前 Activity 未正确暴露 UI 层级→ 解决切回 App 前台在 Poco 辅助窗点Refresh按钮若仍无效尝试重启 App 或模拟器。现象点控件后Poco 代码生成但执行时报poco.NoSuchNodeException→ 原因控件 ID 在当前页面不存在如你点的是首页按钮但代码生成在个人中心页→ 解决确保设备窗显示的是你要操作的页面用poco(xxx).exists()先判断是否存在再操作。5. 让脚本能“自己判断对错”用断言把测试变成可验证的结果5.1 断言不是“报错”而是“给测试加把尺子”新手常误解断言 脚本崩了。其实恰恰相反——断言是让脚本“主动报告结果”的机制。比如你让脚本搜“上海悠悠”它确实输进去了但没告诉你“搜到了多少结果”。加上断言就能明确说“如果页面出现了‘共 12 条结果’的文字就记为通过否则记为失败”。AirTestIDE 提供 4 种常用断言全部一键插入assert_exists存在、assert_not_exists不存在、assert_equal相等、assert_not_equal不相等。5.2assert_exists确认关键元素“真的在那儿”这是最常用的断言。比如搜索后你期望看到“课程列表”区域点击Assert Exists按钮图标是 ✔️图在设备窗圈住“课程列表”标题如“热门课程”文字松开鼠标编辑区插入assert_exists(Template(rtpl1607324047909.png, record_pos(0.0, -0.5), resolution(1080, 1920)), 搜索结果页出现课程列表)参数搜索结果页出现课程列表是断言描述会出现在最终测试报告里方便你一眼看懂“这步验什么”。提示断言描述别写“检查存在”要写业务意义如“首页加载成功”“登录按钮可点击”。这样报告一目了然。5.3assert_not_exists验证“不该出现的东西没冒头”比如退出登录后应确保“我的订单”入口消失点击Assert Not Exists按钮图标是 ✖️图圈住“我的订单”图标插入代码assert_not_exists(Template(rtpl1607324047910.png), 退出登录后我的订单入口应隐藏)如果脚本运行时这张图意外出现了断言失败报告会标红并注明描述提醒你“有逻辑漏洞”。5.4assert_equal和assert_not_equal验证数据是否符合预期这类断言不靠图靠变量值。比如你想确认搜索结果数是否大于 0# 先用 Poco 获取结果数文本 result_text poco(com.netease.course:id/result_count).get_text() # 断言结果数不等于 0 assert_not_equal(result_text, 0, 搜索结果数不应为 0)或者验证 App 版本号是否为预期值version poco(com.netease.course:id/version_text).get_text() assert_equal(version, v3.2.1, App 版本号应为 v3.2.1)注意get_text()返回的是字符串比较时注意类型。若返回数字字符串如12需用int(result_text) 0转换后再断。5.5 断言失败时脚本会停但你知道为什么停当assert_exists找不到图时控制台会抛出AssertionError并显示详细信息AssertionError: Template(D:\airtest\my_first_test\tpl\tpl1607324047909.png) does not exist in screen, message: 搜索结果页出现课程列表关键信息有三处Template(...) does not exist明确指出哪个图没找到message: ...你写的描述直指业务含义路径D:\...\tpl1607324047909.png可直接打开查看原图确认是否截错。这比NameError或SyntaxError好 debug 太多了——它不骂你代码错而是说“你期待的东西现实里没出现”。5.6 常见问题排查断言总超时调整这 2 个参数就够了现象assert_exists等了 30 秒才报错但实际页面 3 秒就出来了→ 原因默认超时是 30 秒对快速页面太长浪费时间→ 解决在断言后加timeout参数如assert_exists(..., timeout5)设为合理等待上限。现象断言偶尔失败但手动看图完全一样→ 原因屏幕有反光、色差、或截图时有半透明遮罩导致图像匹配精度下降→ 解决在Template()中加threshold参数提高容错如Template(..., threshold0.7)默认 0.7值越小越宽松0.5 是底线。现象assert_equal报错说12 ! 12 但肉眼看不出空格→ 原因get_text()可能带回车、空格等不可见字符→ 解决用strip()清理如assert_equal(result_text.strip(), 12)。现象断言通过了但报告里没截图看不出当时画面→ 原因断言本身不截图需手动加snapshot()见第 6 章→ 解决在断言前后加snapshot(msg断言前画面)让报告留证。6. 从入门到进阶下一步学什么一份新手不踩坑的学习路径6.1 先固化一个“最小可运行闭环”再扩展很多新手学一半放弃不是因为难而是因为没及时获得正反馈。我建议你严格按这个顺序走通第一个闭环连上设备雷电模拟器 AirTestIDE新建.air项目用 Touch 截图启动一个 App用 Wait 等待主页出现用 Text 输入一段文字用 assert_exists 验证一个关键元素点运行看它完整走完且报告里有截图、有通过标记。这 7 步做完你就已经掌握了 AirTestIDE 80% 的日常能力。别急着学 swipe、keyevent、命令行……先把这 7 步练熟每天跑 3 遍直到不看教程也能独立完成。从那以后我每次教新人都强制他们先交一个“7 步闭环”的录屏——不是考技术是建立信心。6.2 接下来该学什么按优先级排序的 4 个模块模块学什么为什么优先学预估掌握时间Poco 进阶poco(xxx).child(yyy).click()层级查找、poco(xxx).attr(text)取属性值、poco(xxx).swipe([0, -0.5])Poco 滑动解决截图失效的核心痛点让脚本从“看脸”升级到“认人”稳定性提升 5 倍以上1 天报告增强snapshot()手动截图、log(步骤说明, snapshotTrue)带图日志、simple_report()生成精简 HTML测试结果要给别人看清晰的报告比代码更重要截图留证是追责唯一依据2 小时环境适配set_current_device(Android:///emulator-5554)多设备切换、using(common.air)复用公共脚本实际项目要测多机型、多版本不能一个脚本只跑一台设备半天命令行运行airtest run my_test.air --device Android:///emulator-5554 --log log/、--html生成报告脱离 IDE接入 Jenkins 或定时任务实现无人值守测试1 天提示别按文档目录学要按“我明天就要用”来排优先级。比如你下周要测 3 款安卓机那就立刻学“环境适配”如果老板要看测试结果马上学“报告增强”。6.3 三个血泪经验帮你绕开 90% 的新手坑第一截图前务必“清场”每次截图前先手动把设备窗里无关的 App 关掉、通知栏收起、键盘隐藏。我曾为一个assert_exists调试 2 小时最后发现是截图时顶部有 Wi-Fi 弹窗遮住了 1 像素——从此养成习惯截图前按HOME键回桌面再操作。第二.air项目别放中文路径D:\测试脚本\项目1\这种路径会导致auto_setup(__file__)解析失败报UnicodeDecodeError。AirTestIDE 对中文路径支持不稳定。从那以后我所有项目都强制用英文名如D:\airtest\course_search_v1\根治编码问题。第三断言别堆在最后要“边操作边验证”新手常把所有操作写完最后加一堆assert_exists。但这样失败时你不知道是哪步出错。正确做法是每步关键操作后立刻断言。比如touch(app_icon) # 点启动 assert_exists(home_tab) # 确认首页加载成功 touch(search_box) # 点搜索框 assert_exists(keyboard) # 确认键盘弹出 text(上海悠悠) # 输文字 assert_exists(result_list) # 确认结果出现这样失败时报告直接告诉你“卡在第 3 步”省下 80% 排查时间。希望帮到你。本文还有配套的精品资源点击获取
企业数字化 ERP 产品动态
相关推荐
MTK6577/6589安卓4.1-4.2正向移植实战:boot.img修改与HAL驱动适配 简介:本资源是一份面向Android系统定制开发者与刷机爱好者的MTK平台ROM移植实战教程,聚焦MTK6577(Android 4.1)和MTK6589(Android 4.2)双平台的乐蛙OS正向/逆向移植全流程。内容涵盖底包选型原则、底层驱动… · 2026/11/3 3:07:31
3D-A5000硬件级三维重建原理与工业部署避坑指南 简介:本资源为康耐视(Cognex)3D-A5000系列3D视觉传感器的官方中文版硬件参考手册,面向工业自动化工程师、机器视觉开发人员及产线集成技术人员,用于快速掌握该高性能结构光GigE Vision融合型3D相机的部署规范、硬件兼容… · 2026/11/3 3:07:31
云原生技术如何革新医疗IT系统架构 1. 云原生医疗平台的时代机遇医疗行业正面临数字化转型的关键拐点。传统医疗IT系统普遍存在资源利用率低、扩展性差、运维成本高等问题。某三甲医院的信息科主任曾向我吐槽:"我们的HIS系统在门诊高峰期经常卡顿,但闲时服务器CPU利用率还不到15%。&q… · 2026/11/3 3:07:31
Unity Scene视图任意比例缩放实现原理与工程实践 1. 项目概述:为什么Unity Scene视图的“任意比例缩放”不是个功能,而是一把被锁住的钥匙在Unity编辑器里拖拽一个模型进场景,刚想凑近看下网格细节,鼠标滚轮一转——画面猛地跳变,视角卡在几个固定档位上;想… · 2026/11/3 3:33:35
MySQL数据库入门与安装实战指南 1. 数据库入门:从零开始理解数据存储刚接触数据库时,我完全不明白为什么需要这个"中间商"。直接把数据存在Excel里不香吗?直到第一次处理上万条用户信息时,Excel卡到崩溃的惨痛经历让我彻底醒悟。数据库本质上是一个高度… · 2026/11/3 3:33:35
VMware私有云存储架构设计与零中断迁移实施方案 简介:本资源是一份面向数据中心架构师、存储工程师及IT基础设施管理人员的《存储规划实施方案V3.0》专业文档,聚焦大规模存储系统升级与数据迁移场景,解决存储资源分配低效、架构扩展性不足、迁移风险难控等核心问题。文档由广东省XX资源技术… · 2026/11/3 3:33:35
RGV轨道系统选型与安装关键技术解析 1. RGV轨道系统概述RGV(Rail Guided Vehicle)轨道导引车作为现代自动化物流系统中的核心输送设备,其轨道结构直接决定了整个系统的运行效率与稳定性。在汽车制造、3C电子、医药仓储等高度自动化的生产场景中,RGV轨道如同"工业… · 2026/11/3 3:33:35
原生JavaScript实现用户注册页面:表单校验、正则表达式与验证码实战 用户注册页面这东西,说简单也简单,一个表单几个输入框;说麻烦也麻烦,真正上线前你会发现光是"校验"这两个字就能衍生出十几种边界情况。我见过太多项目,前端校验写得花里胡哨,结果用户把浏览器开… · 2026/11/3 3:33:35
高通平台LCD与TP驱动Porting:设备树、时序与联调排错 1. 先把 Porting 拆成两条线:整体设计与思路高通平台上的 TP 和 LCD 驱动 Porting,说白了就是让一块陌生的屏幕亮起来、让一层陌生的触摸膜准起来。在手机、平板、POS 机、车机这类整机项目里,这两件事几乎永远绑在一起做:屏不亮&… · 2026/11/3 3:32:35
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 4:42:45
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 5:17:18
STM32F411RE与MAX14431实现SPI隔离:工业现场抗共模干扰实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
ESP32+大模型AI硬件开发:从Demo到产品的8个工程问题 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
基于MAX14431BAEE+与PIC18F85J10的SPI隔离方案设计与实践 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 4:42:45
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 5:17:18