怎么才能用

[复制链接]
802|10
 楼主| yufe 发表于 2019-6-16 09:30 | 显示全部楼层 |阅读模式

辅助控制寄存器 A和B 都是IFMT地址,那要怎么才能用呢?希望高手能解答,小弟先谢谢了
llia 发表于 2019-6-16 09:33 | 显示全部楼层

写入P页SFR(辅助控制寄存器 A和B)例程:

IFADRH = 0x00;
ISPCR = ISPEN;                           //使能IAP/ISP功能
IFMT = MS2;                                 // 設置P页写模式,IFMT =MS2=0x04
IFADRL = AUXRA;                       //設置相对应的AUXRA  P页SFR地址
IFD = AUXRA_DATA;                  // 寫入AUXRA 資料 AUXRA_DATA
SCMD = 0x46;                            //模式寫入命令1
SCMD = 0xB9;                            //模式寫入命令2
IFMT = Flash_Standby;               // IAP/ISP备用模式,IFMT =0x00
ISPCR &= ~ISPEN;                    //
 楼主| yufe 发表于 2019-6-16 09:42 | 显示全部楼层
谢谢高手的回答,我主要想把P6口当IO口用,不知道这样配置?
 楼主| yufe 发表于 2019-6-16 09:45 | 显示全部楼层

我用的是MA805-24
wangpe 发表于 2019-6-16 09:47 | 显示全部楼层

P6输出只要设置SFRPI的SFR控制页即可
P6的SFR页面在0x0F,
所以
SFRPI=0x0F;    //设置P6的SFR页面,0x0F
P6=P6_Data;
SFRPI=0x00;   //回复原始SFR控制页
 楼主| yufe 发表于 2019-6-16 09:50 | 显示全部楼层

资料上说,芯片出厂默认内部高震荡,但是芯片P6口却控制不了,为什么?
zhuww 发表于 2019-6-16 09:53 | 显示全部楼层


程序控制没正确,当然不受控制
 楼主| yufe 发表于 2019-6-16 09:57 | 显示全部楼层
这样写对吗?
SFRPI =0x0f;
P6=0xc8;
SFRPI=0x00;
 楼主| yufe 发表于 2019-6-16 10:18 | 显示全部楼层
但是还是控制不了
guoyt 发表于 2019-6-16 10:21 | 显示全部楼层

P6口只有P6.0 以及P6.1~~~
为何写P6=0xC8; ?????

P6的控制输出只有以下4种赋值控制。
P6=0x00;
P6=0x01;
P6=0x02;
P6=0x03;
 楼主| yufe 发表于 2019-6-16 10:28 | 显示全部楼层
嗯,预料中的结果,先结贴吧,多谢大家啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

983

主题

10170

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部