LPC2368 P0.29 P0.30不能只用一个管脚作为输出
2016-11-22 11:49
363 查看
最近在入门LPC2368的时候发现了一个问题,我配置LPC2368的P0.29管脚输出低电平,但是将程序下载到单片机里却发现P0.29状态并未发生变化,一开始我认为自己程序配置不对,接下来我试着配置了P0.30输出低电平,结果发现这两个端口有输出低电平。程序如下所示
当时当我注释掉其中一个端口的配置的时候,另一个端口也没有输出。检查了线路板也没找到什么头绪。然后再手册中发现这两个管脚既可以作为GPIO使用,也可以作为USB的数据线使用。我开始猜测是不是这个原因导致这样的现象。最后我上网找了一下原因,发现问题可能出在这里,与单片机的内部的USB电路有关系。
从发现问题到放弃解决问题花了大概一天的时间,如果这个问题一开始就在网上找的话可能会节约很多时间,但是这样做的话就不会对这块单片机有更多的认识,对于学习来说翻手册是一件好事,对于实际工程来说还是上网查找资料效率更高。
IODIR0 |= (uint32_t)(1 << 29); IODIR0 |= (uint32_t)(1 << 30); IOCLR0 |= (uint32_t)(1 << 29); IOCLR0 |= (uint32_t)(1 << 30);
当时当我注释掉其中一个端口的配置的时候,另一个端口也没有输出。检查了线路板也没找到什么头绪。然后再手册中发现这两个管脚既可以作为GPIO使用,也可以作为USB的数据线使用。我开始猜测是不是这个原因导致这样的现象。最后我上网找了一下原因,发现问题可能出在这里,与单片机的内部的USB电路有关系。
从发现问题到放弃解决问题花了大概一天的时间,如果这个问题一开始就在网上找的话可能会节约很多时间,但是这样做的话就不会对这块单片机有更多的认识,对于学习来说翻手册是一件好事,对于实际工程来说还是上网查找资料效率更高。
相关文章推荐
- 给定一个数,只用一个循环输出奇偶数
- 只用一个循环, 先输出奇数, 然后输出偶数.
- 编写一个主函数 main,使用两个值作为实参,并输出它们的和。
- 从键盘输入一个字符串存入数组a中,再将数组a的内容复制到数组b中并 输出(不能调用strcpy函数)?
- foxmail的in.box作为一个普通文件在fat32的文件系统上不能超过2G
- 作为练习,是帮别人免费做的一个。做东西不能没有收获,虽然是小东西,且用vb但是尽量想些正规一点
- 输入一个字符串内有数字和非数字字符,将连续的数字作为一个整数,存到数组a中,统计整数的个数,并输出这些数
- [面试] 递归 反向输出链表 ,定义一个求字符串长度的函数, 反向输出字符串. 不能再函数内部定义变量.
- 将一个已有Excel工作簿作为模板,并指定输出路径
- 用算法实现将一个输入的数字颠倒(输入12345->54321),要求不调用任何系统函数,也不能将输入的数字转换为字符串作为中间过渡
- c#只用一个for输出三角形
- xargs可以将一个命令的输出作为另一个命令的参数——参看实例的使用
- 输入三个数,用条件表达式,不能用if语句,判断是不是两个奇数一个偶数,是就输出Y,不是就输出N。
- [面试] 递归 反向输出链表 ,定义一个求字符串长度的函数, 反向输出字符串. 不能再函数内部定义变量.
- C语言:从键盘输入一个字符串,以感叹号!作为结束标志,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件test中保存。
- 编写程序:从键盘上输入若干个整数(以输入-1作为结束标识),输出这些数中的最大值和最小值,要求编写一个函数实现最大值和最小值的求取。
- 编程产生一个int数组,长度为30,并向其中随机插入1-30,并且不能重复输出数组。实现一个冒泡排序算法对其进行排序,输出排序结果
- C++递归问题之二——n皇后问题:以四、八皇后为例,给定n个皇后要求将它们放在一个n维矩阵中,任意两个皇后不能出现在同一行、列、主副对角线上,输出具体的摆放方式
- CENTOS下PHP不能将其错误日志单独输出到一个文件的问题解决
- linux shell 将上一个命令的输出作为下一个命令的参数