完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
大家好,我正在使用XC8、MPLAB x、PICKIT 3、PIC16F1709、Windows 10。我一直在尝试使用芯片中的PPS模块将我的USART输出多路复用到3组TX/RX管脚上,希望能够从RC5&RC42收集GPS数据,通过RC3&RC6(重复1&2)将数据发送到Xbee。定期输入:3通过引脚RC1&RC2向GSM单元发送数据(一般思想)问题:PPS将USART(异步模式)输出分别良好地复位到三对TX/RX引脚中的每一对,它甚至会为GPS设置PPS,然后为RADIO传输设置PPS,并且仍然工作良好。问题来了,当我把GPS引脚的PPS配置,在它自己的功能,那么它似乎不会重置它了吗?因此,它将愉快地循环所有不同的PPS设置,只有当我将它们放入一个看起来有问题的差异函数中时。注意我已经禁用了LOCK和1WAYLOCK特性。这里有一段代码:(顺便说一下,Speed=global.=15)联合收集包含GPS接收机PPS配置的GPS数据:这个函数和将要从主函数调用的。如果我把第二个片段放入RADIO函数中,它工作得很好!但一旦它发挥了自己的作用。没什么,我对PORTBAny的建议、想法或问题没有得到任何反馈,非常感激,只是任何与PPS链接的寄存器我都可能没有检查过。
|
|
相关推荐
19个回答
|
|
|
您不能向TXREG写入一个值,并期望立即在RCREG中看到它。您必须允许它完成传输,这需要有限的时间。等待设置TXIF或RCIF,然后执行读取。
|
|
|
|
|
|
啊,这一切进展顺利!因此,如果代码段在一个函数中工作,但是在另一个函数中不工作,您可能希望检查另一个函数是否实际被调用。您可能希望在启动引脚之前提供一些设置延迟,以防万一,但您可以测试它。
|
|
|
|
|
|
另外,确保你设置了适当的LAT位,这样当每个TX PIN没有连接到UART时,它都会很高。
|
|
|
|
|
|
ric:谢谢你指出这个朋友,目前,它的实际工作(令人惊讶地准确)因为我只用它作为指示器(LED等,只是基本的),所以现在看起来还不错,不过我肯定会晚一点记住它,谢谢你的建议。蓝天:再次问好!感谢您一直保持:)它确实达到了这个功能,这是我试图把PORTB行的底部两行代码放进去的函数,只是一个指示符,它总是达到这个功能,试图把TX/RX的所有三个组合放进这个函数中,但是只有一个允许后面的函数工作,它的RADIO TX/RX显然只是设置相同的TX/RX,所以看起来很难在这个函数中更改TX/RX,我在程序开始时没有换掉1WAY位,并且尝试过以各种方式锁定和解锁PPS,ives几乎在代码中的任何地方(在合理的范围内)尝试了这两行代码&;只有在这里,它们似乎抛出了一个问题:/
|
|
|
|
|
|
张贴完整的东西怎么样?如果你认为它一直在工作,没有等待转会完成,那么你只是在欺骗自己,并最终会很困惑,当它不工作的真正。
|
|
|
|
|
|
好的,公平点,我完全同意你的观点,我当时正在与UARTI取得联系,UARTI已经尝试了整个TXREG=10001111;RCREG=10001111;和所有PPS材料)是相当好的距离,但我完全明白你的意思,我会努力抓住这一点,然后再尝试更大的,你能解释为什么TX引脚需要闲置高,请?我确信它很简单,只是有兴趣知道:)完整的代码来了:准备混乱…道歉,如果有些位没有注释,随时可以问任何问题&嗯,是的,它相当零碎,这只是推动6小时的工作。:)
|
|
|
|
|
|
因为这是串行线路的空闲状态。如果您将引脚保持在低位,接收器将接收到连续的“中断”条件,并且它可能错过您在将UART连接到引脚之后直接发送的第一个字符。
|
|
|
|
|
|
有线电报约定:空闲(零数据)状态被指定为高电平。如果你的应用程序不在乎,你实际上不需要这么做。在高功率突发系统中,空闲高电平也会造成电流泄漏。但是,一定要检查应用程序是否关心串行空闲状态。但是,您应该注意确保接收已经完成,尽管如果编译的代码执行起来足够慢,那么接收肯定一直在工作。
|
|
|
|
|
|
精彩!谢谢,我想这是一个“这就是它的样子”哈!简而言之……我还不如把它弄糟,我给摩托车装了一个平视显示器,我是一个巨大的汽油头&电子系最后一年的学生。安装在自行车上的装置通过实际是Xbee的替代品的ciseco下降来发送GPS信息,这把gps数据发送到头盔上的另一个收发器,在发生事故时显示信息(通过倾斜传感器阵列(RA4)推断&潜在减速分析)设备进入紧急模式,将自行车的位置发给紧急服务机构,详细说明事故。该代码所针对的自行车上的设备,仅在发动机运转时才打开,(INT引脚),使用齐纳二极管&根据事实推断电池充电在14.5V左右,在坐下自然不会高于12V,因此用户永远不必记得打开单元(希望)…试图不胡扯这个论坛让你等待多久后才张贴!ET感觉像一个时代!我想它确实可以减少垃圾邮件:
|
|
|
|
|
|
你的设备必须直接离开电池吗?如果没有,为什么你不能从点火开关上关闭辅助电源?(我假设自行车有一个类似于汽车的电路),它会自动使它在自行车打开时运行。
|
|
|
|
|
|
虽然点火要比电池难得多,但好主意是,我想把它做成一个简单的把两根电线打在电池上的例子,就这样。时期。整个最后一年项目的一部分,是我们必须生产项目,就好像它是一个可销售的产品一样,所以我可能使它尽可能通用。有些自行车会把点火器装进油箱里,很难弄到手。最终,我不希望我的“顾客”胡闹,他们可能很明白什么时候可以把每样东西都送去睡觉,而不是完全断电&在INTinput上加一个齐纳二极管(顺便说一句,我正在做的是,它工作得很好,唤醒了整个人)。正如自行车着火了)这是该项目的一边,已经有了相当多的想法:)只要证明我的推理:)
|
|
|
|
|
|
好的。我自己在电池供电的设备上工作过,我敏锐地意识到,如果你没有让你的低功耗模式工作正常,那么很容易把电池压下来(因此如果它是一个可充电的包就破坏它)。
|
|
|
|
|
|
事实上,测试其他车辆动力系统的活动可能比电池充电电压更为理想。它可以直接从电池上运行,同时根据线路的不同,做到这一点。我将提出建议,使头盔太阳能供电,也许与可选的车辆充电电缆。还有一个可爱的,也许有点低效的方法,用RF供电,比如在“Powercast”系统中,你可以将数据覆盖到上面。现在,如果你正在制作一个安全产品,你还需要备用电源(即使对于一个爱好项目来说也是很有趣的)。除了有一个普通的辅助电池,还有一种娱乐的方法,密封锌空气电池与机械冲击破坏空气入口。永远是派对的最爱!
|
|
|
|
|
|
虽然第一点真的是个好主意,我试图避免任何入侵自行车,除了两根电线到电池,使它完全通用,完全通用&更容易适应,适合“出售”给绝对的白痴,我欣赏可能有更准确的吃的方法,但它是其中一个系统没有破裂的例子,所以我不打算修复它哈!它只需要两个电池连接就可以做到。然而,如果我有更多的时间,我可能会考虑这个想法,但是现在,随着时间的流逝,我需要把精力集中在别的地方。从这个爆裂的PPS问题开始:)老实说,整个电源侧几乎都被覆盖了,除了一些细节之外,我还有自行车上装置的备用电源,开关稳压器等等。我原本计划只用一个普通的辅助电池,因为它只需要维持电源。呃足够长的时间发送一个文本。那个锌空气电池听起来像一口。我会用谷歌搜索它--我曾考虑过太阳能的想法,也许是为了给头盔充电,但最终它需要电池供电,(也许是座下的主设备充电的微型USB,或者也是电源充电器)我想了解更多关于“电力传输”的东西,希望我能够整合这一点!听起来很有趣,一个快速的5分钟的研究!仍然试图整理这个PPS百灵鸟…我说,我只是坐在那里盯着它看了最后一个小时。
|
|
|
|
|
|
这是一个有价值的调试教训,呵呵。隔离您想要发生的,您如何测试它,可能正在发生的其他事情,等等。好的,我们专门讨论这段代码,对吧?在这种情况下,当你在无线电中改变PPS寄存器时,它工作,但不在跟踪中。您确信通过跟踪执行适当的测试,并且该函数实际上是用于调用RALS的吗?(在这里有注释,但是您可能已经看到了。)您也可以发布工作版本和非工作版本的程序集以供检查,尽管C编译器转储可能非常令人生气,嗯。类似地,您可以自己执行代码,并查看PPS寄存器是否已写入,并执行PIN测试。
|
|
|
|
|
|
Bluedelta:是的,和大多数其他元素一样,我倾向于注释&取消注释各种元素,作为摆脱它们的一种方法,而不必重新键入它们:)我发帖的时候猜想你可能会猜到这一点,也就是说,我已经知道基于两个爆炸的斜线会产生严重的错误,哈!我会看看我是否能努力真正测试这个函数是否被调用,我甚至把RADIO的内容转储到TRACKING&工作正常,问题似乎是“在函数中更改PPS,然后在另一个函数中更改PPS,并试图使用它”试图“松散地转换为”“使用它”:你指的是拆卸的意思?)编译器输出?
|
|
|
|
|
|
干杯,里奇,我记住它,作为一个例子,大多数自行车可以安装报警器以类似的方式工作,超过一个月,他们可以运行弱电池,取决于报警,因此,正如你所建议的,他们还具有可充电电池,你是相当正确的,我相信在发展中记住你所有的忠告,干杯!
|
|
|
|
|
|
里克!你把它弄坏了!高兴地说你真的告诉我哈哈!…与RCREGStill的时间问题不确定为什么它会有不同的重新配置PPS的方式回到程序!奇怪,但我很高兴它排序了。谢谢大家!你们双方的一些建议!我一直在记录这首歌的大部分内容,它很可能会发现它进入论文的方式。再次感谢各位!:)
|
|
|
|
|
|
是的,编译器生成的ASM代码。由于您是一名电气工程专业的学生,因此它还可以帮助您学习硬件本身如何处理您的请求,从而部分地学习ASM语言。(同时,确保不要在你的领域中拧紧最大功率点定理。即使到今天,它仍然会发生。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475 浏览 0 评论
5794 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1124浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1098浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
873浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 13:51 , Processed in 1.171852 second(s), Total 110, Slave 93 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2383