randongxiao 发表于 2024-3-22 09:37:31

STC32G12K128的P4口输出状态不变!


[*]void main(void)
[*]{
[*]      WTST = 0;                //设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
[*]      EAXSFR();                //扩展SFR(XFR)访问使能
[*]      CKCON = 0;      //提高访问XRAM速度
[*]
[*]      P4M0 = 0xff;
[*]      P4M1 = 0x00;    //P4口设置推挽输出
[*]
[*]      while(1)
[*]      {
[*]                P4 = 0X55;
[*]                delay_ms(250);
[*]                P4 = 0XAA;
[*]                delay_ms(250);
[*]      }
[*]}
[*]很简单的一段代码,不管是硬仿真还是软仿真,P4口永远是0,换做其它端口,输出都正常,不知道哪里的BUG?

国学芯用 发表于 2024-3-22 09:41:14

先用范例程序测试一下 行不行
对照检查一下

randongxiao 发表于 2024-3-22 10:31:12

测了,现象一摸一样!麻烦您将IO改为P4软仿真测一测,我是试了,原以为硬件问题,后来发现,软仿真也是同样现象,改为其它接口状态就好了!

zxcv1973 发表于 2024-3-22 11:42:35

如果软仿真都有问题,看看你的STC32G预定义是不是有误,或者循环内只保留 P4 = 0X55;这一行,把下面的延时都去掉试试,P4口一直在用没问题

zhudean11 发表于 2024-3-22 13:37:06

是不是跟建工程的时候选的芯片型号有关

randongxiao 发表于 2024-3-22 14:36:09

应该是软件环境问题,但还没找到原因!怀疑是keil的问题,我是arm和c51同时用的,版本5.25.3.0,搞了2个机子都是同样问题。郁闷

jackfangxq 发表于 2024-3-22 19:40:33

关注

randongxiao 发表于 2024-3-22 23:35:01

attach://39317.jpg,重新安装了,问题还是依旧,想问问,stc扩展的P4~P7怎么样在软仿真的debug或设备里都显示出来?

chen 发表于 2024-3-23 19:51:32

打包一下完整的工程文件看下

yjawei 发表于 2024-3-23 21:20:47

EAXSFR(); 这个宏或者函数贴出来,让大伙看一下。
页: [1] 2 3 4 5
查看完整版本: STC32G12K128的P4口输出状态不变!