找回密码
 立即注册
查看: 198|回复: 2

STC8H1K08-SOP16/TSSOP20 和 STC8G1K08-SOP16/TSSOP20, 不兼容的地方

[复制链接]

865

主题

1万

回帖

2万

积分

管理员

积分
25086
发表于 2026-7-31 16:11:48 | 显示全部楼层 |阅读模式
STC8H1K08-SOP16/TSSOP20,
和 STC8G1K08-SOP16/TSSOP20,
不兼容:
1,ADC_VREF+ 有专门的管脚
2,ADC输入通道排列不一样
3,PWM不一样


截图202607311608584928.jpg

截图202607311609413813.jpg

截图202607311610436512.jpg

截图202607311611263212.jpg



回复

使用道具 举报 送花

865

主题

1万

回帖

2万

积分

管理员

积分
25086
 楼主| 发表于 2026-7-31 16:13:27 | 显示全部楼层
截图202607311613222434.jpg
回复

使用道具 举报 送花

865

主题

1万

回帖

2万

积分

管理员

积分
25086
 楼主| 发表于 2026-7-31 16:13:46 | 显示全部楼层

我已经获取了足够的信息来回答这个问题。让我整理一下论坛帖子中提到的三个不兼容点,并结合手册进行验证。

让我再确认一下 STC8G1K08 的 SOP16/TSSOP20 封装中 ADC_VREF+ 的情况。从之前获取的 STC8G1K08-38I-TSSOP20/QFN20/SOP16 系列管脚表中,第8脚(Vcc/AVcc/ADC_VRef+)确实有 ADC_VRef+ 引脚。而 STC8H1K08 的管脚表中,第9脚是 ADC_VRef+(独立引脚)。

让我再确认一下 STC8G1K08 的 PWM 情况。从手册看,STC8G1K08 系列使用的是 PCA/CCP/PWM(3路),而 STC8H1K08 使用的是 16位高级PWM定时器(8通道,PWMA 4通道 + PWMB 4通道)。这是明显的 PWM 差异。

现在我可以给出完整的回答了。


您好!我查看了您分享的论坛帖子(STC8H1K08-SOP16/TSSOP20 和 STC8G1K08-SOP16/TSSOP20 不兼容的地方),并结合 STC8H 和 STC8G 系列数据手册进行了核对。帖子中提到的三个不兼容点,与手册内容完全吻合,下面为您逐一详细说明:


1. ADC_VREF+ 是否有专门管脚

结论:确实不兼容。

  • STC8H1K08(SOP16/TSSOP20):有独立的 ADC_VRef+ 引脚。在管脚表中,第9脚(TSSOP20 的 9 脚 / SOP16 的 7 脚)为 ADC_VRef+,类型为 I(输入),说明为"ADC外部参考电压源输入脚,要求不高时可直接接MCU的VCC"。
  • STC8G1K08(SOP16/TSSOP20):没有独立的 ADC_VRef+ 引脚。其 ADC 参考电压直接复用 Vcc/AVcc 引脚(第8脚为 Vcc/AVcc/ADC_VRef+ 合并),即参考电压固定接在电源上,无法单独外接参考电压。

来源:STC8H 手册「STC8H1K08-36I-TSSOP20/QFN20,SOP20/16系列」管脚表;STC8G 手册「STC8G1K08-38I-TSSOP20/QFN20/SOP16系列」管脚表。


2. ADC 输入通道排列不一样

结论:确实不兼容,通道映射差异很大。

两款芯片虽然都是 10 位 ADC,但通道数量与引脚映射完全不同

ADC_CHS STC8H1K08(9通道) STC8G1K08(15通道)
0000 P1.0/ADC0 P1.0/ADC0
0001 P1.1/ADC1 P1.1/ADC1
0010 无此通道 P1.2/ADC2
0011 无此通道 P1.3/ADC3
0100 无此通道 P1.4/ADC4
0101 无此通道 P1.5/ADC5
0110 无此通道 P1.6/ADC6
0111 无此通道 P1.7/ADC7
1000 P3.0/ADC8 P3.0/ADC8
1001 P3.1/ADC9 P3.1/ADC9
1010 P3.2/ADC10 P3.2/ADC10
1011 P3.3/ADC11 P3.3/ADC11
1100 P3.4/ADC12 P3.4/ADC12
1101 P3.5/ADC13 P3.5/ADC13
1110 P3.6/ADC14 P3.6/ADC14
1111 测试内部1.19V 测试内部1.19V

关键差异:STC8H1K08 只有 9 个 ADC 通道(ADC0/1/814),**ADC2ADC7 通道不存在**;而 STC8G1K08 有完整的 15 个通道(ADC0ADC14)。因此,如果程序里使用了 ADC2ADC7 通道,在 STC8H1K08 上会失效。

来源:STC8H 手册「ADC模数转换」章节 ADC_CHS 通道映射表;STC8G 手册「ADC模数转换」章节 ADC_CHS 通道映射表。


3. PWM 不一样

结论:确实不兼容,PWM 架构完全不同。

  • STC8H1K08:采用 16位高级PWM定时器,共 8 通道,分为两组:

    • PWMA(4通道:PWM1P/N、PWM2P/N、PWM3P/N、PWM4P/N),支持互补对称、死区控制
    • PWMB(4通道:PWM5~PWM8),单端输出。
    • 支持正交编码器、捕获、比较等功能。
  • STC8G1K08:采用 PCA/CCP/PWM(传统 PCA 模块),共 3 路(CCP0/CCP1/CCP2),属于传统 PCA 定时器结构,不支持互补对称输出、不支持死区控制

来源:STC8H 手册「16位高级PWM定时器,支持正交编码器」章节;STC8G 手册「PCA/CCP/PWM应用」章节。


总结

论坛帖子所述三点不兼容均属实,且是硬件架构层面的差异,无法通过软件配置来消除。如果您需要在两款芯片间移植程序,请特别注意:

  1. ADC 参考电压:STC8H1K08 可外接独立参考电压,STC8G1K08 只能使用 VCC 作为参考;
  2. ADC 通道:STC8H1K08 缺少 ADC2~ADC7 通道,需重新规划采样通道;
  3. PWM:STC8H1K08 是 8 通道高级 PWM(支持死区/互补),STC8G1K08 是 3 路传统 PCA/PWM,寄存器、中断、功能差异巨大,需完全重写 PWM 驱动。

如果您有具体的移植需求,欢迎告诉我具体型号和功能,我可以帮您分析更详细的适配方案。


🔍 搜索 "https://www.stcaimcu.com/thread-25064-1-1.html"

⏱️ 查找用时 16.9s | 总回答用时 31.5s

回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-9-19 21:06 , Processed in 0.063619 second(s), 50 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表