共2条
1/1 1 跳转至页
2129,GPIO 关于2129的GPIO的问题

问
2100开发板,LPC2129,ADS1.2
1 将P0低8位设置为输入端口,用IO0PIN读回的数据刚开始能够读回变化的8位数据,但过一会儿却只显示0,本以为可能本来就应该是低电位,但是用万用表检查相应的管 脚(电路未改变),却发现部分引脚是高电平的(比如P0.1,大约3V多),将P0.1悬空,发现该脚读回的是高电平,听说LPC系列有些需要先设置输出,置1,然后设置为输入才能正确读,可问题是刚开始能读回数据是正确的(是一个计数器的计数数据,按照读回的数据来看应该是正确的),后来却不对了(全0),请问这是怎么回事?
2 P0接GPIO时,输入都要接上拉电阻,但是输出一般不用,是这样吧?书上说部分管脚是需要上拉的,比如P0.2,P0.3,P0.11,P0.14,可是都没有说是在GPIO时需要上拉,而是在用作其他一些功能时,比如I2C时要上拉,究竟这些引脚在作输出时是否需要上拉?或者说P0究竟哪些引脚在输出时需要上拉?
3 用IO0PIN设置管脚,PHILIPS说尽量不用这种方法,说明这种方法有问题,可是会出现什么样的问题? 答 1: re1.这主要是,你将IO口直接设置为输入,而没有设置引脚为一个特定的状态。如果当时的引脚里面的电平控制寄存器IOSET(IOCLR)将引脚设置为低电平的话,那么外部的电流都从引脚灌进去了,当然引脚就呈现出低电平咯。
2.P0.2,P0.3,P0.11,P0.14这是开漏输出,只有接上上拉电阻,才能正常的输出。 答 2: re多谢周公,但是还是有些不是很明白
按照周公所说,必需先设置输出高电平,然后设置为输入才行,是这样吧?
但是为什么刚开始的时候读数是可变的呢?
还有,是每次用IO0PIN读数据都要先设置为高电平输出,然后改输入,还是只开始的时候设置为输出高电平再输入?
还有就是上面的第3个问题,究竟IOXPIN设置管脚是否会出现什么错误?因为我现在必需要用到这个,所以希望能够有所了解 答 3: re1。只开始的时候设置为输出高电平再输入就行了。
2。IOPIN的设置在我们的使用中没有什么错误。 答 4: question另外还有一件事,就是用示波器观察开发板的输出,即便在只输出单一电平时,示波器上仍然能够观察到一个很明显的大约几K频率的脉冲,不知道如果用这样的IO来初始化一个芯片,比如LS7166(一个常用的编码器接口芯片,初始化的时候要分时地向其中写入一些命令字)之类,会不会有什么影响?
之所以这么问,是因为用2129来控制步进马达的时候,发现在仅让2129输出单一电平是,马达仍然有缓慢的转动,说明至少这样的脉冲对马达的驱动器是有影响的,或者说是会被马达的驱动器识别出来的,那么这会不会造成对芯片的初始化造成影响? 答 5: re如果你真的输出的是单一的脉冲,那不可能在IO口还出现一个几K频率的脉冲。
你断开你的IO口(控制马达的)与马达的连接,再用示波器看看该IO的波形。
1 将P0低8位设置为输入端口,用IO0PIN读回的数据刚开始能够读回变化的8位数据,但过一会儿却只显示0,本以为可能本来就应该是低电位,但是用万用表检查相应的管 脚(电路未改变),却发现部分引脚是高电平的(比如P0.1,大约3V多),将P0.1悬空,发现该脚读回的是高电平,听说LPC系列有些需要先设置输出,置1,然后设置为输入才能正确读,可问题是刚开始能读回数据是正确的(是一个计数器的计数数据,按照读回的数据来看应该是正确的),后来却不对了(全0),请问这是怎么回事?
2 P0接GPIO时,输入都要接上拉电阻,但是输出一般不用,是这样吧?书上说部分管脚是需要上拉的,比如P0.2,P0.3,P0.11,P0.14,可是都没有说是在GPIO时需要上拉,而是在用作其他一些功能时,比如I2C时要上拉,究竟这些引脚在作输出时是否需要上拉?或者说P0究竟哪些引脚在输出时需要上拉?
3 用IO0PIN设置管脚,PHILIPS说尽量不用这种方法,说明这种方法有问题,可是会出现什么样的问题? 答 1: re1.这主要是,你将IO口直接设置为输入,而没有设置引脚为一个特定的状态。如果当时的引脚里面的电平控制寄存器IOSET(IOCLR)将引脚设置为低电平的话,那么外部的电流都从引脚灌进去了,当然引脚就呈现出低电平咯。
2.P0.2,P0.3,P0.11,P0.14这是开漏输出,只有接上上拉电阻,才能正常的输出。 答 2: re多谢周公,但是还是有些不是很明白
按照周公所说,必需先设置输出高电平,然后设置为输入才行,是这样吧?
但是为什么刚开始的时候读数是可变的呢?
还有,是每次用IO0PIN读数据都要先设置为高电平输出,然后改输入,还是只开始的时候设置为输出高电平再输入?
还有就是上面的第3个问题,究竟IOXPIN设置管脚是否会出现什么错误?因为我现在必需要用到这个,所以希望能够有所了解 答 3: re1。只开始的时候设置为输出高电平再输入就行了。
2。IOPIN的设置在我们的使用中没有什么错误。 答 4: question另外还有一件事,就是用示波器观察开发板的输出,即便在只输出单一电平时,示波器上仍然能够观察到一个很明显的大约几K频率的脉冲,不知道如果用这样的IO来初始化一个芯片,比如LS7166(一个常用的编码器接口芯片,初始化的时候要分时地向其中写入一些命令字)之类,会不会有什么影响?
之所以这么问,是因为用2129来控制步进马达的时候,发现在仅让2129输出单一电平是,马达仍然有缓慢的转动,说明至少这样的脉冲对马达的驱动器是有影响的,或者说是会被马达的驱动器识别出来的,那么这会不会造成对芯片的初始化造成影响? 答 5: re如果你真的输出的是单一的脉冲,那不可能在IO口还出现一个几K频率的脉冲。
你断开你的IO口(控制马达的)与马达的连接,再用示波器看看该IO的波形。
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【Zephyr】MCXN947 Zephyr 开发入门适配shell被打赏20分 | |
【我要开发板】6.联合MATLAB记录数据被打赏50分 | |
【瑞萨RA2E1开发板】:使用ADC功能实现位移传感器采集方案被打赏20分 | |
【nRF7002DK】基于sht30的温湿度计被打赏20分 | |
【nRF7002DK】日志打印被打赏20分 | |
rtthread硬件加密-5hash加密分析被打赏10分 | |
【STM32F769】SD卡驱动及其调试经验分享被打赏32分 | |
【分享开发笔记,赚取电动螺丝刀】使用看门狗降低系统隐藏bug触发概率被打赏18分 | |
【STM32F769】调试SD驱动,由于其时钟配置不对引起的错误以及排查记录被打赏35分 | |
【分享开发笔记,赚取电动螺丝刀】MCUXpressoConfigTools配置外设时的异常解决被打赏24分 |