嵌入式之IO口总结

时间:2018-07-23

  名称:IO口总结

  说明:近横向学习了51单片机STM32和S3C2440的IO口,做了几个相关的实验。

  我们数据结构老师曾经说过 ”差异就是知识“。在此,比较了这几个芯片IO口的使用后,有些感悟,总结如下:

  1.IO口是芯片内部CPU和外设之间沟通的桥梁,也是其他模块(如I2C通讯、SPI通讯)的基础。不同的芯片对IO的操作不太相同,但很类似。一点的芯片(如STM32,S3C2440)用寄存器控制IO口,输出相应电平;低级一点的芯片(如51),直接控制IO。

  2.对于51这样的单片机来说,其IO口的控制使用很简单,就是直接往相应的IO口写入或读出。51单片机的IO口一般比较少,其可以直接控制到位操作。对于STM32和2440来说,对其IO口的控制则必须通过对应的寄存器进行控制。而且一般一点的芯片,其会提供更多的IO口,有的IO口还可以进行功能复用,所以在使用时也需要通过配置相应的控制寄存器选择相应的功能。

  具体来说,对于STM32,一般其每个GPIO口会有8种输入输出模式可供选择,所以对其配置也要复杂的多(不仅要配置功能模式,还要配置端口引脚的速度,还要开启相应的时钟模块)。而对于2440来说,对其GPIO的操作要稍微简单些,只需控制三个寄存器即可(分别是控制寄存器、数据寄存器、还有控制上拉寄存器)。其次,控制2440也不需要像STM2那样配置相应的时钟树,只需要对相应的IO口配置相应的功能,然后从数据寄存器中写入或读出数据即可。

  3.再说一点关于对于STM32和2440开发过程中遇到的一些想法:对于STM32来说,其在开发过程中可以使用提供的固件库(当然也可以直接操纵寄存器),而对于2440来说,一般还是直接操纵其寄存器。大概是因为STM32的寄存器的操纵比较复杂,2440的寄存器操作要相对简单些吧。


上一篇:解析移动电源充电的那些基本知识
下一篇:关于S3C2440开发板Nand flash程序烧写和运行的一些理解

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料