找回密码
 立即注册
查看: 841|回复: 4

这样定义P1.2端口可以吗?

[复制链接]
  • 打卡等级:以坛为家I
  • 打卡总天数:244
  • 最近打卡:2025-05-01 15:50:20

49

主题

129

回帖

1361

积分

金牌会员

积分
1361
发表于 2023-4-19 22:53:46 | 显示全部楼层 |阅读模式
STC8H和STC32G没有P1.2端口了,一般用P5.2代替。为了减少对之前的程序修改,在STC8H.H头文件中进行下述修改:
1. 屏蔽掉原来的“sbit  P12 = P1^2;”语句
2. 在P5定义后增加“sbit P12 = P5^2;”
   Keil编译后整个程序可以通过。当然对程序中整个使用P1的语句后面要紧跟"P52 = x“语句,其它原有的”P12 = x“语句就不需再处理了吧?
   硬件上已经用P52代替了P12。如此操作会遗留什么问题吗?
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:415
  • 最近打卡:2025-04-30 09:58:34
已绑定手机

39

主题

2006

回帖

6843

积分

论坛元老

积分
6843
发表于 2023-4-20 14:56:54 | 显示全部楼层
本帖最后由 乘风飞扬 于 2023-4-20 14:58 编辑

8H有些系列的芯片是有P1.2端口的,修改头文件的话后续如果使用这些系列的芯片就会出问题。
1.png

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:244
  • 最近打卡:2025-05-01 15:50:20

49

主题

129

回帖

1361

积分

金牌会员

积分
1361
发表于 2023-4-20 21:22:14 | 显示全部楼层
这样处理可能还遗留问题。相同的使用设备,使用STC8A12、D4的芯片程序都能运行。使用STC8H8K64U的芯片就不行。主要使用功能差别就在这P1.2上,其它使用的功能都相同。专门针对P5.2代替P1.2引脚,在原程序上好像还不是一件简单的事。

点评

如有并行操作 P1口的情况,实际已么有P1口  发表于 2023-4-21 07:47
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-05-02 10:07:51

73

主题

5883

回帖

1万

积分

超级版主

积分
12079
发表于 2023-5-8 23:26:09 | 显示全部楼层
不要这样定义,名字跟物理对不上,P52已经定义好了的,直接使用。你要是修改了定义,编译有P1.2的就会出错。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 15:30 , Processed in 0.120755 second(s), 70 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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