51单片机,我一直是既熟悉又陌生,熟悉的是我上大学在书本上对于51学的滚瓜烂熟,大学教书是也讲过,陌生是基本没用过51做过实际项目,自己arm做得多,一入门就是arm,多少有点看不上51的意思,总觉得真要用,信手拈来。
最近调9914,75年的gpib,用arm接口调始终不成,带fpga做逻辑也是不稳定,浑浑江江调了几周,放弃,发现大多数接口都是用51,所以想使用51作为接口调试
试用STC89C52RC,发现官方头文件未提供P4口,P4口地址为E8而不是传统的C0
和FPGA通信,试用P2口传输数据,循环发送时钟信号,使用bit6,发现很奇怪现象,连续6个周期能翻转,连续9个周期不翻转,最后时钟使用一个独立引脚实现,问题解决。
STC51使用寄存器AUXR来控制内部扩展的RAM,传统51只有128B,52 256B,同时能控制ALE是否输出
ALE使用MOVX或MOVC指令自动生成,
C下通过如下声明可使用,RC具有256B(0x00-0xff) RD+具有1024B(0x000-0x3ff)
unsigned char xdata sum, loop_counter, test_array[128];
AUXR1具有双数据指针DPTR选择设置。
软复位:ISP_CONTR寄存器。