AT89S52单片机p0~p3口的使用有何要求?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AT89S52单片机p0~p3口的使用有何要求?相关的知识,希望对你有一定的参考价值。

除了P0口硬件设计上要加上拉电阻,其它没什么特别要求,直接赋值直接读取即可。 参考技术A at89s51单片机的p0~p3口均是什么i/o口
是准双向口。

C语言关键字union在单片机设计的妙用

原文首发地址:C语言关键字union在单片机设计的妙用 - 知乎

union与struct用法非常类似,不过其适用于不同时被用到的数据

1. 大小端模式对 union 类型数据的影响(51是大端,一般处理器都是小端)

union

int i;
char a[2];
*p, u;
p = &u;
p->a[0] = 0x39;
p->a[1] = 0x38;
p.i 的值应该为多少呢?
这里需要考虑存储模式:大端模式和小端模式。

大端模式(Big_endian):字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。
小端模式(Little_endian):字数据的高字节存储在高地址中,而字数据的低字节则存放在低地址中

union 型数据所占的空间等于其最大的成员所占的空间。
对 union 型的成员的存取都是 相对于该联合体基地址的偏移量为 0 处开始,
也就是联合体的访问不论对哪个变量的存取都是从 union 的首地址位置开始。

/*
所以要是
小端输出:
大端输出:
*/

2. 如何用程序确认当前系统的存储模式?

Union check

       int i;
       char ch;
 c;
    c.i = 1;
    printf("%d",c.ch);

如果存储为大端模式,则输出为0,如果为小端模式,则输出1。

以上是关于AT89S52单片机p0~p3口的使用有何要求?的主要内容,如果未能解决你的问题,请参考以下文章

AT89S52单片机除P0接上拉电阻外,其他IO口是不是可以不接,对性能有影响吗

单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》

从 AT89S52 芯片下载二进制代码

MCS-51单片机p0,p1,p2,p3端口的字节地址是多少?

Lesson01:W-A_51单片机实训板介绍(旧博客迁移)

51单片机并行接口P0~P3