单片机IO口无法输出高低电平原因分析

来源:本站
导读:目前正在解读《单片机IO口无法输出高低电平原因分析》的相关信息,《单片机IO口无法输出高低电平原因分析》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《单片机IO口无法输出高低电平原因分析》的详细说明。
简介:本文主要对单片机IO口无法输出高低电平原因分析,希望对你的学习有所帮助。

最近在用LPC11C14单片机,该单片机是32cortex-M0系列的,带有片上CAN资源,既可以使用寄存器编程,也可以使用库函数(CMSIS)来编程应用方便。其下载方式有两种:

SW方式;

ISP方式;

对于LQF48封装而言,调试口分别为:

29脚:SWCLK;

39脚:SWDIO;

单片机IO口无法输出高低电平原因分析

这个两个引脚可以复用,在项目设计中到了29脚,将该引脚用作了GPIO输出脚,在用库函数调试的过程中发现时钟无法控制输出高低电平。而用寄存器版本就可以输出高低电平。花了好长时间终于找到了原因。

下面先看寄存器版本编程时使用的头文件代码:

单片机IO口无法输出高低电平原因分析

再看CMSIS提供的库函数的头文件:

单片机IO口无法输出高低电平原因分析

从头文件的对比已经发现了问题,寄存器版本的头文件P0_10的地址是68结尾,而CMSIS中P0_10的地址是70结尾,翻看LPC11C14的数据手册可以发现其地址为:0x40044068,显然CMSIS提供的头文件错了。将CMSIS头文件修改后,P0_10就可以正常使用了。

提醒:《单片机IO口无法输出高低电平原因分析》最后刷新时间 2024-03-14 00:55:19,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《单片机IO口无法输出高低电平原因分析》该内容的真实性请自行鉴别。