找回密码
 立即注册
查看: 1106|回复: 14

IO口被设置为功能管脚后,是否自动修改了IO口模式

[复制链接]
  • TA的每日心情
    开心
    2024-2-7 13:18
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    11

    回帖

    57

    积分

    注册会员

    积分
    57
    发表于 2022-12-31 14:04:26 | 显示全部楼层 |阅读模式
    有个疑惑请教一下:

          STC8系列手册上说默认IO口模式,除了P3.0、P3.1外,其它管脚默认都是高阻输入状态。那么我想知道当管脚启用了串口、SPI、I2C、PWM、INT中的某个功能后,该管脚的IO模式会自动改变吗?如果会的话是改到了什么模式?如果启用了功能后,再配置模式还有效不?希望能得到准确回复,谢谢。
    回复 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9465

    回帖

    1万

    积分

    管理员

    积分
    14013
    发表于 2022-12-31 14:26:23 | 显示全部楼层
    研发放假中,我理解和建议的是
    系统初始化时你设置 你需要的I/O工作模式,启动你需要的特殊功能后,他们按你的要求执行!
    你可以写出你特殊的需求,我来安排人节后回答,否则测一次,我们要忙一天

    该用户从未签到

    551

    主题

    9465

    回帖

    1万

    积分

    管理员

    积分
    14013
    发表于 2022-12-31 14:27:26 | 显示全部楼层
    1.png

    自己配置

    该用户从未签到

    551

    主题

    9465

    回帖

    1万

    积分

    管理员

    积分
    14013
    发表于 2022-12-31 14:29:33 | 显示全部楼层
    我现在的精神是不应该主动帮客人改变 I/O模式,
    你不知客人的各种应用场景,画蛇添足的事我建议内部少做,
    让用户自己配置 I/O 的工作模式是最好的方式
    回复 支持 1 反对 0 送花

    使用道具 举报

  • TA的每日心情
    开心
    2024-2-7 13:18
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    11

    回帖

    57

    积分

    注册会员

    积分
    57
     楼主| 发表于 2022-12-31 15:29:36 | 显示全部楼层
    也许是我表达的不够清楚!

    按照我的理解,功能分配到管脚,与该管脚的IO的模式配置、上拉电阻配置、驱动电流控制应该还是有效的,且不会变,与功能分配是各自独立的。

    我问的问题应该在手册中可以看到答案,但是我只找到了管脚被设置为ADC时,一定要将IO口设置为高阻输入这段描述,说明是各自独立设置的。而其他SPI、I2C等都没有类似的描述。所以我想确认一下。就是想确认IO口的IO配置与功能管脚的配置是否是各自独立的,不会自动改变。

    例如我使用的是STC8H8K64U,目的是想提高出口一个串口输出管脚的输出能力。
    我是否可以在初始化时将P5.1设置为推挽
    然后我将P5.1分配为TxD3_2,这时P5.1是否还是工作在推挽模式?这时我再修改IO模式是否有效,是否影响P5.1的串口输出。

    或者说是不是分配为串口输出,但是IO模式设置为高阻输入,串口输出功能就不能正常输出信号了(我知道这个问题听起来好像很幼稚,我也知道正常不会出现这种设置组合,我只是想通过这个说明我要问的问题本质。)

    也许会说这可以自己试验一下,的确可以,但是类似功能管脚很多,如果官方有明确的答案,我就不用自己去逐一测试了。如果官方研发人员也要通过逐一测试才能知道答案,那就不必麻烦了。

    至于为什么要问这个,我用在我自己的开发工具里,所以知道肯定答案会避免一些错误配置。我期望的也是 地板 贴说的那样,都不会自动改变。

    该用户从未签到

    551

    主题

    9465

    回帖

    1万

    积分

    管理员

    积分
    14013
    发表于 2022-12-31 15:41:09 | 显示全部楼层
    我10年前就不让花蛇添足,奈何提醒了10年,几十号研发人员还是积极主动的来帮用户改变I/O模式,我都头疼
    STC8H8K64U, [当管脚启用了串口、SPI、I2C、PWM、INT中的某个功能后,该管脚的IO模式会自动改变吗?]
    串口: STC 从来不会帮你改变 I/O 的模式
    SPI:STC8H8K64U 不会
    I2C:STC8H8K64U 好像不会
    PWM:强推挽,据说还是想帮你改成强推挽了,前天开会我又讲了此事,后续新品不要帮改I/O模式
    INT口允许外部中断:STC 从来不会帮你改变 I/O 的模式
    ADC: STC8H8K64U 不会

    该用户从未签到

    551

    主题

    9465

    回帖

    1万

    积分

    管理员

    积分
    14013
    发表于 2022-12-31 15:45:39 | 显示全部楼层
    这问题不要问了,会造成误会,浪费时间,普通用户高手认为帮好,希望芯片帮他设置,
    我这种级别的,认为不因该帮客人改变I/O 模式,客人可以自己改,更好,各能适合各种应用场景
    ===讲多了普通用户会误会多,好心基本都是好事
    ===极少数场景是办坏事,他客人就是要开漏,你强制成了 强推挽,他没法玩了,普通用户根本想不到这些场景


  • TA的每日心情
    开心
    2024-2-7 13:18
  • 签到天数: 1 天

    [LV.1]初来乍到

    3

    主题

    11

    回帖

    57

    积分

    注册会员

    积分
    57
     楼主| 发表于 2022-12-31 15:52:40 | 显示全部楼层
    本帖最后由 学以致用 于 2022-12-31 15:54 编辑
    神农鼎 发表于 2022-12-31 15:41
    我10年前就不让花蛇添足,奈何你不提醒,几十号研发人员又积极主动的来帮用户,我都头疼
    STC8H8K64U, [当管 ...

    感谢答复,看来我还是要将需要的功能自己逐一确认一下。
    因为我的工具涉及STC8全系列和STC15主要型号,以及STC32
    我是2008年就一直只用STC单片机,对STC有特殊的感情,虽然也用其他单片机,但是首选还是STC
    这些年开发总结,还是如您说的那样,不要自动改变为好。如果自动改变了,那就要在手册上明确出来,否则做一些特殊要求的场景,就会常常掉入这个不是坑的坑里
    感谢研发人员为单片机开发用户着想,但是这点还是不要为好

    该用户从未签到

    551

    主题

    9465

    回帖

    1万

    积分

    管理员

    积分
    14013
    发表于 2022-12-31 16:17:38 | 显示全部楼层
    赞同,不主动改! 关键研发打血液里,就喜欢帮你做了这个他认为帮你好的,过几年又来帮一遍

    点评

    赞同不主动改  发表于 2023-1-4 10:02
    回复 支持 1 反对 0 送花

    使用道具 举报

  • TA的每日心情
    开心
    2023-12-18 09:20
  • 签到天数: 1 天

    [LV.1]初来乍到

    12

    主题

    89

    回帖

    239

    积分

    中级会员

    积分
    239
    发表于 2022-12-31 19:37:21 来自手机 | 显示全部楼层
    很多问题所谓的高手也不能想当然,记得以前用过一款,忘记是stc那一款了,5v供电用的是spi连接3.3v的液晶,端口设置为开漏输出,数据和时钟上拉电阻到3.3,想象完美,但设备用一段时间就损坏,后来查因为设置为spi的端口设置开漏无效。所以理解楼主的担心,我现在用一款新的型号也会有相同的疑问。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

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

    GMT+8, 2024-5-17 12:23 , Processed in 0.075625 second(s), 71 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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