打印

辅助控制寄存器 A和B问题

[复制链接]
1580|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
bnn330|  楼主 | 2014-4-22 13:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
辅助控制寄存器 A和B 都是IFMT地址,那要怎么才能用呢?希望高手能解答,小弟先谢谢了
沙发
MG_FAE| | 2014-4-22 13:50 | 只看该作者
写入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;                    //

使用特权

评论回复
板凳
bnn330|  楼主 | 2014-4-22 14:15 | 只看该作者
谢谢高手的回答,我主要想把P6口当IO口用,不知道这样配置?

使用特权

评论回复
地板
bnn330|  楼主 | 2014-4-22 14:16 | 只看该作者
我用的是MA805-24

使用特权

评论回复
5
MG_FAE| | 2014-4-22 14:25 | 只看该作者
bnn330 发表于 2014-4-22 14:16
我用的是MA805-24

P6输出只要设置SFRPI的SFR控制页即可
P6的SFR页面在0x0F,
所以
SFRPI=0x0F;    //设置P6的SFR页面,0x0F
P6=P6_Data;
SFRPI=0x00;   //回复原始SFR控制页
   

使用特权

评论回复
6
bnn330|  楼主 | 2014-4-22 14:30 | 只看该作者
资料上说,芯片出厂默认内部高震荡,但是芯片P6口却控制不了,为什么?

使用特权

评论回复
7
MG_FAE| | 2014-4-22 14:36 | 只看该作者
bnn330 发表于 2014-4-22 14:30
资料上说,芯片出厂默认内部高震荡,但是芯片P6口却控制不了,为什么?

程序控制没正确,当然不受控制

使用特权

评论回复
8
bnn330|  楼主 | 2014-4-22 14:47 | 只看该作者
这样写对吗?
SFRPI =0x0f;
P6=0xc8;
SFRPI=0x00;

使用特权

评论回复
9
bnn330|  楼主 | 2014-4-22 14:48 | 只看该作者
但是还是控制不了

使用特权

评论回复
10
MG_FAE| | 2014-4-22 14:55 | 只看该作者
本帖最后由 MG_FAE 于 2014-4-22 15:12 编辑
bnn330 发表于 2014-4-22 14:47
这样写对吗?
SFRPI =0x0f;
P6=0xc8;

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

P6的控制输出只有以下4种赋值控制。
P6=0x00;
P6=0x01;
P6=0x02;
P6=0x03;

使用特权

评论回复
11
bnn330|  楼主 | 2014-4-22 15:44 | 只看该作者
啊,理解错了,谢谢。。。

使用特权

评论回复
12
bkvalve| | 2014-4-23 09:09 | 只看该作者
这个 还真是不懂

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

14

帖子

0

粉丝