lgwd 发表于 2023-4-19 22:53:46

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

STC8H和STC32G没有P1.2端口了,一般用P5.2代替。为了减少对之前的程序修改,在STC8H.H头文件中进行下述修改:
1. 屏蔽掉原来的“sbitP12 = P1^2;”语句
2. 在P5定义后增加“sbit P12 = P5^2;”
   Keil编译后整个程序可以通过。当然对程序中整个使用P1的语句后面要紧跟"P52 = x“语句,其它原有的”P12 = x“语句就不需再处理了吧?
   硬件上已经用P52代替了P12。如此操作会遗留什么问题吗?

乘风飞扬 发表于 2023-4-20 14:56:54

本帖最后由 乘风飞扬 于 2023-4-20 14:58 编辑

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


lgwd 发表于 2023-4-20 21:22:14

这样处理可能还遗留问题。相同的使用设备,使用STC8A12、D4的芯片程序都能运行。使用STC8H8K64U的芯片就不行。主要使用功能差别就在这P1.2上,其它使用的功能都相同。专门针对P5.2代替P1.2引脚,在原程序上好像还不是一件简单的事。

梁工 发表于 2023-5-8 23:26:09

不要这样定义,名字跟物理对不上,P52已经定义好了的,直接使用。你要是修改了定义,编译有P1.2的就会出错。
页: [1]
查看完整版本: 这样定义P1.2端口可以吗?