简介《Office 365 与AD域同步操作》面向企业 IT 管理员与微软云身份运维人员围绕本地 Active Directory 与 Office 365 之间的用户、组等对象同步展开帮助读者理清域名绑定、AD 服务器准备、IdFix 预检查、Azure AD Connect 部署及同步结果查看等关键环节。资源包仅含 1 个 docx 文档约 725KB以图文步骤整理操作界面与配置要点对账号属性、重复邮件地址等校验点也有提示便于按流程对照实践。内容覆盖 .NET Framework 3.5 安装确认、同步工具下载与向导配置、首次全量同步和后续增量同步等场景可作为企业身份整合与日常排错的参考。已有 1757 人学习适合需要落地 AD 同步方案、梳理配置顺序或查漏补缺的初中级运维人员。1. 从“激活按钮不见了”说起O365 与 AD 域同步的现场判断Office 365 与 AD 域同步这件事最容易让人误判的一幕不是向导报错而是 O365 管理中心里“激活目录同步”的按钮干脆不见。我第一次遇到时先怀疑管理员角色又去翻许可最后才发现租户里没有完成域名绑定域名没验证目录同步入口就不会按预期出现。这个场景在 Windows Server 2012 R2 加本地 AD 的环境里很常见服务器已入域.NET Framework 4.5 默认在3.5 却没装IdFix 也没跑直接上同步工具后面就会在用户属性、UPN 后缀和重复邮件地址上翻车。适合正在做 AD 同步落地、准备把本地用户接到 O365 的运维和开发照着排。2. 准备 AD 服务器与域名Windows Server 2012 R2 上先补 .NET Framework 3.5AD 同步不是从双击安装包才开始而是从一台已经加入域的 AD 服务器、一个在 O365 里验证过的域名、一组权限足够的账号开始。服务器版本、域名状态、.NET Framework 功能、时间同步和出口端口任何一项没对齐后面要么按钮不出现要么向导卡住要么用户同步上去却登录不了。我一般先把下面这张表逐项过一遍不通过就不往下走。检查项目标状态常用检查方式不通过时先看什么服务器入域已加入目标 AD 域Get-CimInstance Win32_ComputerSystemDNS 是否指向域控、域信任是否正常AD 账号权限域企业管理员或已委派同步权限用安装账号登录验证是否只有普通域用户权限O365 账号权限全局管理员管理中心角色检查是否只有账单或用户管理员角色域名状态已验证并绑定到租户O365 管理中心域列表TXT 记录是否生效、域名是否选错.NET Framework 3.5已安装Get-WindowsFeature是否缺离线源、系统版本是否匹配时间同步与域时间源一致w32tm /query /status域控时间、虚拟化主机时间出口端口443 可出站Test-NetConnection防火墙、出口策略、DNS 解析先把服务器身份和域信息查清楚避免在错误的机器上装工具。下面这段命令在 AD 服务器上以域账号打开 PowerShell 执行重点看当前会话所属域、机器加入的域以及域控列表。# 确认当前登录会话所属域、机器加入的域以及域控信息 $env:USERDOMAIN (Get-CimInstance Win32_ComputerSystem).Domain Get-ADDomain | Select-Object DNSRoot, NetBIOSName Get-ADDomainController -Filter * | Select-Object Name, Site, OperatingSystem$env:USERDOMAIN看的是当前登录会话所属域Win32_ComputerSystem.Domain看的是机器加入的域两者不一致时先别装同步工具。Get-ADDomain和Get-ADDomainController依赖 Active Directory PowerShell 模块如果提示无法识别命令在 Windows Server 2012 R2 上补装RSAT-AD-PowerShell功能不要急着重装系统。域名、域控名称按实际环境替换不要把示例里的example.com直接抄进生产。2.1 服务器入域与账号权限的底线AD 服务器加入域只是起点安装账号的权限才是后面最容易卡住的地方。同步工具要读取 AD 对象、写入连接器配置还要用 O365 全局管理员授权租户连接。常见做法是准备一个专门的安装账号域侧给企业管理员或按最小权限委派O365 侧用全局管理员完成首次授权装完后再把日常管理员和安装账号分开。不要拿个人日常账号一直挂着后面排查权限问题时根本说不清是谁改过。时间同步也要在安装前处理。AD 同步依赖票据和令牌时间服务器时间偏差太大时向导可能能连上但后续认证异常。用下面几条命令确认时间源和出口解析域名换成租户里已经验证的那个域名。# 检查时间源与时间偏差必要时立即同步 w32tm /query /status w32tm /resync # 检查域名解析和 443 出口example.com 换成租户已验证域名 Resolve-DnsName -Name example.com -Type MX Test-NetConnection -ComputerName example.com -Port 443w32tm /query /status看当前时间源和上次同步结果w32tm /resync强制同步一次如果同步失败先查域控时间再查虚拟化主机时间。Resolve-DnsName用来确认公共 DNS 能解析租户域名Test-NetConnection只验证到 443 的出口连通性不能用任意公共站点代替租户域名。端口不通时先找防火墙和出口策略不要在服务器上反复重装同步工具。2.2 安装 .NET Framework 3.5 与确认 4.5 共存Windows Server 2012 R2 默认已经带了 .NET Framework 4.5但 3.5 是独立功能缺了它IdFix 或同步工具的部分组件可能起不来。3.5 和 4.5 是并行组件不要为了装 3.5 去卸 4.5也不要以为 4.5 在就万事大吉。先查功能状态再决定是在线安装还是挂载安装介质。# 查看 .NET 3.5 与 4.5 功能状态 Get-WindowsFeature -Name NET-Framework-Core,NET-Framework-45-Features | Select-Object Name, DisplayName, InstallState # 在线安装 3.5离线环境把 Source 指向安装介质里的 sxs 目录 Install-WindowsFeature -Name NET-Framework-Core -Source D:\sources\sxsGet-WindowsFeature里NET-Framework-Core对应 3.5NET-Framework-45-Features对应 4.5 功能集InstallState为Installed才算通过。Install-WindowsFeature的-Source要指向与当前系统版本匹配的sources\sxs目录盘符按实际挂载改源不匹配时会报组件缺失不要拿别的系统镜像硬试。安装完成后按提示重启再复查一次功能状态。如果 PowerShell 安装方式失败可以用 DISM 做同样的功能启用。下面这条命令里的E:\sources\sxs只是示例路径执行前换成实际介质路径。# DISM 方式启用 NetFx3Source 指向匹配的安装介质 DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /Source:E:\sources\sxs /LimitAccess/Online表示对当前系统操作/FeatureName:NetFx3是 3.5 功能名/All会一并启用父功能/LimitAccess阻止自动去外部源找文件。离线环境里最容易翻车的是源路径写错或镜像版本不匹配报错时先看C:\Windows\Logs\DISM\dism.log不要连续重复执行。2.3 O365 管理中心绑定并验证域名同步入口和域名状态绑得很紧。租户里没有验证域名或者域名验证了但没有绑定到租户目录同步相关入口就可能不出现。操作顺序一般是登录 O365 管理中心进入域列表添加域名按提示取 TXT 记录到公共 DNS 添加回管理中心验证确认域名状态为已验证。TXT 记录名和值以管理中心给出的为准不要自己猜前缀。# 检查 TXT 与 MX 是否已经在公共 DNS 生效 Resolve-DnsName -Name example.com -Type TXT Resolve-DnsName -Name example.com -Type MXResolve-DnsName -Type TXT用来确认验证记录已经发布-Type MX用来确认邮件记录没有被误改如果只做目录同步不要顺手把 MX 切走。TTL 较长时公共 DNS 生效会有等待时间管理中心验证失败先看记录名、记录值、域名后缀是否完全一致。域名验证通过后再回来看目录同步入口不要在没有验证域名的情况下反复重装同步工具。提示域名验证通过后先不要急着设成默认邮件域名先把 AD 同步跑通再按邮件切换计划调整。2.4 同步工具安装包与目录规划同步工具从 O365 管理中心下载安装包落盘后先做目录规划和哈希记录。不要直接从下载目录双击运行后面出问题时要找安装包版本来对照。我一般放在一个独立目录里安装日志和导出文件也分开放排查时不用满盘找。# 建安装目录并校验安装包路径按实际下载位置替换 $pkg C:\install\AADConnect\AzureADConnect.msi New-Item -ItemType Directory -Force -Path (Split-Path $pkg) | Out-Null Get-FileHash -Path $pkg -Algorithm SHA256 | Format-ListSplit-Path取安装包所在目录New-Item -Force保证目录存在Get-FileHash记录 SHA256 便于以后比对安装包是否被替换。安装前给 AD 做一次系统状态备份至少记录当前域控、域名、UPN 后缀和要同步的 OU。安装日志常见位置在C:\ProgramData\AADConnect\下装完先别删日志后面排查向导失败时它是黑匣子。3. 用 IdFix 做 AD 同步预检查先把重复属性和非法字符清掉IdFix 的价值不是“点一下自动修复”而是把 AD 里那些同步工具看不下去的属性提前暴露出来。常见问题集中在userPrincipalName、mail、proxyAddresses、displayName和sAMAccountNameUPN 后缀和验证域名不一致、mail 重复、proxyAddresses 里主地址和别名冲突、显示名带特殊字符。直接上同步工具轻则对象被过滤重则同步报重复属性回头再查成本高得多。检查对象IdFix 常见提示处理原则备注userPrincipalName后缀未登记、含非法字符先补 UPN 后缀再改用户要与 O365 已验证域名对齐mail重复、格式不合法按业务确认归属不要批量清空proxyAddresses主地址冲突、别名重复保留一个主地址别名去重大小写和SMTP/smtp要分清displayName空值、特殊字符补全或规范化影响地址簿和显示sAMAccountName重复、超长按命名规则调整改动前确认旧系统依赖3.1 IdFix 扫描前要准备什么扫描前先导一份 AD 基线后面 IdFix 修完可以对比。导出范围先选一个准备同步的 OU不要一上来全目录。账号用只读权限先扫确认问题范围后再换有修改权限的账号执行修复。导出的 CSV 放在固定目录文件名带日期方便回溯。# 导出同步前基线便于 IdFix 修复后对比 Get-ADUser -Filter * -Properties mail,userPrincipalName,proxyAddresses,displayName | Select-Object SamAccountName,userPrincipalName,mail,displayName, {nproxyAddresses;e{$_.proxyAddresses -join ;}} | Export-Csv -Path C:\temp\ad-before-sync.csv -NoTypeInformation -Encoding UTF8-Filter *表示取用户对象生产环境可以先加-SearchBase限定 OU-Properties把默认不返回的mail、userPrincipalName、proxyAddresses带出来{nproxyAddresses;e{...}}把数组属性展开成可读字符串。Export-Csv的-NoTypeInformation去掉类型头-Encoding UTF8避免中文显示名乱码。基线文件不要放在共享盘随便改排查时它是对照依据。3.2 看懂 IdFix 的错误、警告和编辑动作IdFix 操作界面里先选域再执行查询等扫描结果出来。结果一般分错误、警告和可编辑项错误多半是同步工具会直接拦下的问题警告是需要业务确认的重复或格式问题编辑动作则是 IdFix 给出的建议值。我的习惯是先导出结果再按 OU 分批处理不直接在界面上全选应用。界面上能改不代表业务上该改尤其是 mail 和 proxyAddresses。# 找出 UPN 里带非 ASCII 字符的用户先人工确认 Get-ADUser -Filter * -Properties userPrincipalName | Where-Object { $_.userPrincipalName -match [^\x00-\x7F] } | Select-Object SamAccountName, userPrincipalName[^\x00-\x7F]匹配非 ASCII 字符用来快速定位带中文、空格或特殊符号的 UPN。不是所有非 ASCII 都必须改但准备同步到 O365 的账号UPN 最好与已验证域名一致、字符集简单。查到结果后不要直接批量Set-ADUser先确认这些账号是否真的要同步避免把服务账号或测试账号一起改掉。3.3 批量修复 UPN、mail、proxyAddresses 的边界重复 mail 和重复 UPN 是 AD 同步里最常见的硬伤。先用 PowerShell 把重复项找出来再决定保留哪个。下面两段查询分别找重复 mail 和重复 UPN空值先排除避免把没有 mail 的账号算进去。# 找重复 mail空 mail 先排除 Get-ADUser -Filter mail -like * -Properties mail | Group-Object mail | Where-Object Count -gt 1 | Select-Object Name, Count # 找重复 UPN Get-ADUser -Filter * -Properties userPrincipalName | Group-Object userPrincipalName | Where-Object Count -gt 1 | Select-Object Name, CountGroup-Object按属性分组Count -gt 1只留下重复组Name是重复的 mail 或 UPN 值。查到重复后先看账号状态禁用账号、离职账号、共享邮箱最容易撞。不要为了让查询结果变干净就删属性mail 和 UPN 往往被旧系统、邮件流或登录脚本依赖。proxyAddresses 更绕主地址用大写SMTP:别名用小写smtp:同一个地址出现在多个账号上就会冲突。下面这段把 proxyAddresses 展开后按地址分组找出跨账号重复。# 展开 proxyAddresses找同一地址出现在多个账号的情况 Get-ADUser -Filter * -Properties proxyAddresses | ForEach-Object { $u $_ foreach ($p in $u.proxyAddresses) { [pscustomobject]{ Sam$u.SamAccountName; Address$p.ToLower() } } } | Group-Object Address | Where-Object Count -gt 1 | Select-Object Name, CountForEach-Object逐个用户展开proxyAddresses数组ToLower()统一大小写后再分组避免SMTP:和smtp:被当成两个地址。查到重复后按邮件归属确认不要直接删别名有些别名还在收信。UPN 后缀不够时先在 AD 林里登记再改用户。# 查看林里已登记的 UPN 后缀 Get-ADForest | Select-Object -ExpandProperty UPNSuffixes # 仅示例把 example.com 换成已验证后缀执行前先在测试林验证 Set-ADForest -Identity (Get-ADForest).Name -UPNSuffixes {Addexample.com}Get-ADForest看当前林已经登记的后缀Set-ADForest的-UPNSuffixes {Add...}是追加动作不是覆盖。执行前确认该后缀已经在 O365 验证且不会和现有后缀冲突。生产林改后缀要谨慎先在测试环境走一遍再安排变更窗口。3.4 复扫与导出结果给同步留证据IdFix 修完不要直接开同步先复扫一次再导一份修复后基线。两份 CSV 做差异对比确认改动都在预期内。同步出问题时这两份文件能快速判断是属性没改干净还是同步工具侧过滤或匹配出了问题。# IdFix 修复后再次导出和 ad-before-sync.csv 做差异核对 Get-ADUser -Filter * -Properties mail,userPrincipalName,proxyAddresses | Select-Object SamAccountName,userPrincipalName,mail, {nproxyAddresses;e{$_.proxyAddresses -join ;}} | Export-Csv -Path C:\temp\ad-after-sync.csv -NoTypeInformation -Encoding UTF8 # 按关键属性对比修复前后差异 Compare-Object (Import-Csv C:\temp\ad-before-sync.csv) (Import-Csv C:\temp\ad-after-sync.csv) -Property SamAccountName,userPrincipalName,mailCompare-Object的-Property指定对比字段输出里的和表示前后差异方向只看差异不要被无关字段干扰。复扫结果里如果还有错误先处理错误再同步警告项按业务确认。IdFix 结果和导出文件一起归档后面做增量同步或加新 OU 时还能复用。4. 安装 Azure AD Connect 并跑通首次同步向导参数怎么选安装包从 O365 管理中心下载双击后先走向导。第一次落地我一般选自定义不选快速安装因为要控制同步的 OU、确认密码哈希同步选项、看清源锚点和过滤条件。向导里的每一步都不是点下一步就完事尤其是连接 AD、连接 O365、OU 过滤和同步方式选错后面要回滚。4.1 安装前检查域账号、O365 管理员、网络端口安装前再查一遍服务状态和端口避免装到一半发现之前有残留。服务器上如果已经有ADSync服务说明之前装过或装到一半失败先确认旧配置和卸载状态不要直接覆盖安装。O365 侧准备全局管理员AD 侧准备企业管理员或委派账号安装过程中会分别要求输入。# 安装前确认时间、DNS、443 出口和是否有旧同步服务 w32tm /query /status Resolve-DnsName -Name example.com -Type A Test-NetConnection -ComputerName example.com -Port 443 Get-Service -Name ADSync -ErrorAction SilentlyContinueGet-Service -ErrorAction SilentlyContinue不报错只用来判断有没有旧服务有输出时先查安装记录和控制面板不要直接删服务。Test-NetConnection通只代表网络层通认证失败还要看账号和租户域名。安装前把服务器快照或备份做好后面回滚有后悔药。4.2 选择同步方式密码哈希同步与单点登录的取舍向导里的同步方式会影响登录体验和后续运维。密码哈希同步部署简单云端验证的是本地密码哈希同步过来的结果适合大多数首次落地场景单点登录体验更好但依赖额外组件、证书和网络配置首次就上容易把问题叠在一起。我的做法是先开密码哈希同步把 AD 同步和账号匹配跑通再按需求补单点登录。方式适合场景额外依赖首次落地建议密码哈希同步大多数目录同步起步同步工具和网络即可先跑通再评估单点登录直通认证不希望密码哈希离开本地需要常驻认证组件组件高可用要先设计联合认证/单点登录已有联合认证体系证书、域名、额外服务首次不要和基础同步一起上向导里勾选密码哈希同步后首次全量会同步密码哈希之后本地改密按增量周期过来。单点登录选项可以先不勾等基础同步验证通过后再回头配置。不要为了“一步到位”在首次安装时把所有高级选项都打开出问题时很难判断是哪一层。4.3 向导里的 OU 过滤与源锚点OU 过滤是控制同步范围的关键。生产 AD 里往往有服务账号、测试账号、旧系统账号全目录同步会把不需要的对象也带到云端。先在 AD 里确认要同步的 OU再用 PowerShell 数一下用户量向导里只勾选这些 OU。源锚点保持默认不要为了“统一”去改源锚点一变云端对象可能匹配不上产生重复对象。# 查看 OU 结构并统计准备同步的 OU 下用户数量 Get-ADOrganizationalUnit -Filter * | Select-Object Name, DistinguishedName Get-ADUser -Filter * -SearchBase OUSyncUsers,DCad,DCexample,DCcom | Measure-ObjectGet-ADOrganizationalUnit列出 OU 名称和 DN-SearchBase换成准备同步的 OU DNMeasure-Object只统计数量不修改数据。向导里勾选 OU 后后续新增用户只要落在这些 OU 里就会按增量周期同步。不要把整个域一股脑勾上除非已经确认目录很干净。4.4 首次全量同步与增量计划向导完成后会触发首次全量同步。首次同步不要在业务高峰做用户量多时等待时间会比较长。同步服务、调度器和连接器状态可以用命令查首次用Initial之后日常用Delta。不要频繁手动触发全量增量才是日常手段。# 查看同步服务和调度器首次全量用 Initial之后日常用 Delta Get-Service -Name ADSync | Select-Object Status, StartType Get-ADSyncScheduler | Select-Object SyncCycleEnabled, NextSyncCycleStartTimeInUTC Start-ADSyncSyncCycle -PolicyType Initial Get-ADSyncConnectorRunStatusGet-Service -Name ADSync看同步服务是否运行Get-ADSyncScheduler看调度是否启用和下次同步时间Start-ADSyncSyncCycle -PolicyType Initial触发首次全量Get-ADSyncConnectorRunStatus看连接器运行状态。增量同步默认按调度周期跑手工触发时把Initial换成Delta。排查期间需要暂停调度时用下面命令恢复时把$false改成$true。# 排查期间暂停同步调度恢复时把 $false p a hrefhttps://download.csdn.net/download/vampire47/9888157 stylecolor:#ec7500;font-size:14px; 本文还有配套的精品资源点击获取 /a img altmenu-r.4af5f7ec.gif srchttps://csdnimg.cn/release/wenkucmsfe/public/img/menu-r.4af5f7ec.gif stylewidth:16px;margin-left:4px;vertical-align:text-bottom;cursor:text; /p
企业数字化 ERP 产品动态
相关推荐
蜂鸣器驱动原理与嵌入式提示音实现 我无法基于当前输入生成符合要求的博文。原因在于:您提供的输入内容中,项目标题仅为“buzz”,且后续所有字段(项目正文、关键词、摘要描述)均为空,未提供任何实质性信息。根据我的角色设定与创作原则&#… · 2026/11/3 14:20:18
相关性推荐:从召回排序到冷启动的站内流量分发实践 网站做起来之后,最让人难受的一种状态是:流量不算少,页面打开速度也还行,用户点进来逛了两三页就走了,购物车空着,评论区冷清,后台看跳出率一路往上走。这时候团队里一定会有人提一句“上个相关… · 2026/11/3 14:20:18
Rust重写Nostr中继buzz:从workspace设计到高并发调优实战 1. 从“buzz”这个名字说起:一个用 Rust 重写的 Nostr 中继到底在解决什么问题第一次看到 “buzz” 这个项目名,加上 Nostr、relay、Rust、workspace 这几个关键词,我大概能猜到它要干什么——一个用 Rust 写的 Nostr 中继服务端。Nostr 这两… · 2026/11/3 14:20:18
HDMI TMDS信号完整性调试:波形捕获与眼图分析实战指南 HDMI接口从消费电子一路铺到工控、医疗显示和车载娱乐,几乎成了高清视频传输的默认选项。但真正在硬件调试一线待过的人都知道,HDMI链路出问题的概率远比想象中高——花屏、闪屏、偶发黑屏、热插拔后不识别,这些现象背后十有八九都指向同一个… · 2026/11/3 15:12:40
WeGame多账号自动登录工具开发实战 1. 项目背景与需求解析在游戏多开、账号托管等场景中,手动逐个登录WeGame账号效率极低。特别是工作室或代练团队需要同时管理数十个游戏账号时,传统登录方式耗时耗力。远程自动登录工具正是为解决这一痛点而生——通过模拟人工操作实现批量账号导入、自动… · 2026/11/3 15:12:40
TensorFlow安装避坑指南:从环境配置到GPU加速实战 上周有个读者私信问我:“哥,我刚装完TensorFlow,import都能成功,可一跑训练就提示找不到cudnn64_8.dll,整个人都懵了。”我一看就知道,他八成是在Windows上直接pip install了最新版TensorFlow,然… · 2026/11/3 15:12:40
hindsight 智能体记忆系统:从记忆回溯到 MCP 与 Docker 工程实践 1. 从“hindsight”这个词说起:为什么它值得单独拿出来聊第一次看到“hindsight”作为项目标题,我脑子里蹦出来的不是某个具体工具,而是一个很朴素的场景:你让一个智能体帮你处理一件跨天、跨会话的任务,它当时做得挺好… · 2026/11/3 15:12:40
Pattern与Mattern:字符串模式匹配的编译与执行分离设计 1. 从两个函数名说起:Pattern 与 Mattern 到底在解决什么问题第一次看到Pattern()和Mattern()这两个名字摆在一起,我下意识以为是谁把Pattern拼错了,写成了Mattern。后来翻了一圈代码库才发现,这俩函数经常成对出现在字符串匹配、… · 2026/11/3 15:12:40
图计算工程化实践:让AI应用从能跑到能维护 1. 从"能跑就行"到"能维护才行":图计算应用开发的真实分水岭做过几个AI应用之后你会发现一个挺尴尬的事实:Demo阶段跑得飞起的东西,一旦要交给别人维护、要加新功能、要排查线上问题,立刻就变成一团乱麻。模型… · 2026/11/3 15:11:34
双极步进电机控制实战: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/3 6:04:24
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/3 5:52:46
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/3 6:04:24
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/3 5:52:46