感谢cma马教授释疑,我们都是您的学生,这I/O问题我清晰多了
记得我在《操作I/O口和外设出碰到问题时稍微留意》,《I2CHW 与I2Cm为何写存储器结果不一样?迷糊了》 说: 前几天我的系统在操作I/O口电平时无意间"误伤"了I2Cm的口驱动状态,导致I2Cm工作时好时坏, 两年前也发生过误伤RX8口的类似情况,今天终于明白了以下两点:
1. 用与或操作I/O口时要小心误伤这个P?口上的外设。 2. 有些外设的XX_Start();是专门用来初始化这个外设的口驱动状态的,不应该只在初始化时调用一次, 应该在用到这个外设时调用一下,这可能不完全正确,但可以避免一些,看具体情况.例如我在操作P1上某个I/O口后, "误伤"了软I2Cm的(P1.5,P1.7),I2Cm的口读写不正常,这时只要在I2Cm读写前加一条I2Cm_Start();就可解决. /////////////////////////////////////////////////////////////////////////////////////////////// 《这LCD液晶模块有这么个毛病,大家试试看 》
我用的是PSOC Designer4.4环境在29666放了个液晶模块把P2.0--P2.6总共7根口线用了,P2.7用作驱动执行继电器, 可没想到这P2.7无论怎么PRT2DR|=0X80,不管怎么设置口驱动状态都是低的,真TMD邪了;后来索性把P2.7放了个 LED模块居然一切正常了LED_on();呵呵,到底是不是BUG? PSOC有时我也晕菜了。大家有时间给试试 /////////////////////////////////////////////////////////////////////
今天看来cma马教授从更深的角度帮助了大家,帮了CYPRESS一次。我更该感谢马教授教会我这个白天烤比萨,晚上只会喝酒灌水被师父清出门户的36岁的坏孩子如何在金融风暴过后继续做技术。 说实话,无论谁都不能否认CYPRESS在技术支援方面上在最近几年内已经有了进步,不是当年PSOC等于触摸键的时代 了,我也曾经在网上大骂过PSOC和CYPRESS,挺好的,今天大家继续声援更好。 回想这些年来,无论目前PSOC-ROCK,SLICY,以及不为大家所知的James hong....到威键的HARRY,金树兄,离开CY的裘 总......大家都在为PSOC为用得更好努力着。cma马教授更是以社会公益的角度支持CYPRESS许多,也帮了我们这么多初学者. 大家无论是批评,指责也好都是为了让PSOC和他的工具中BUG更少,从这个角度讲对CYPRESS更是件好事,大家多支援. 我是小区树下长出的"狗尿台" ,不能当蘑菇上席.同时我也没资格CYPRESS的员工 ,我用PSOC和大家一样的目的,都是希望这东西为我所用,产生好的结果,就像我今天学会烤捕猎者比萨一样,我们品它更希望烤出更好的口味. cma马教授来北京我请您吃我烤的比萨,多教我一些PSOC经验争取让我风暴过后能找到工作.
酒多了,清醒了,更要努力了
|
|