完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好,我正在PIC18F66K80上用XC8编译器开发一个固件,需要同时使用两个UART外围设备。我已经设置了UART1来使用Primtf命令,它运行良好。现在我需要实现UpART2的PrimTf。有什么方法可以将Prtuf重定向到UART2吗?类似于fprintf……我在Micro.Developer Help中看到了以下应用程序,但是这是针对XC16的:我开发了类似的东西来用UART2实现,但是还有其他方法吗?谢谢。
以上来自于百度翻译 以下为原文 Hi everyone, I'm developing a firmware on a PIC18F66K80 with XC8 compiler and a need to use both UART peripherals. I've set up the UART1 to use the printf command and it's working well. Now I need to implement printf to UART2. Is there some way to redirect the printf to UART2? Something like a fprintf... I saw in Microchip Developer Help the following application, but this is for XC16: int main() { __C30_UART=2; // Divert printf output to UART2 while (1) { printf("Hello worldn"); } return 0; } I've developed something like that to implement with UART2 but is there another way? Thanks. |
|
相关推荐
5个回答
|
|
您只想使用UART2或在代码中切换它们?在编译器手册中,你需要定制一个自定义函数()。
以上来自于百度翻译 以下为原文 You want to use Only UART2 or switch between them in code? Look in the Compiler manual you will need to make a custom function putch() I think. |
|
|
|
我想在代码内部切换。我使用两个外设“一起运行”。当一个(UART1)请求和接收数据时,另一个(UART2)向服务器发送数据并接收数据。因此,我需要使用UART接收中断并从它们发送。
以上来自于百度翻译 以下为原文 I want to switch between inside the code. I'm using two peripherals that runs "together". While one (UART1) requests and receive data, the other (UART2) is sending data to a server and receiving data too. So I need to use both UARTs receive interrupts and transmit from them. |
|
|
|
他们之间的任务是多方面的?如果您没有任何输出缓冲区,那么在传输任何输出字符串时,一个任务将阻塞另一个任务。可接受吗?
以上来自于百度翻译 以下为原文 How are you multitasking between them? If you don't have any output buffering, then one task will block the other while it is transmitting any output strings. Is that acceptable? |
|
|
|
不要使用printf——它只是增加了大量的开销(程序内存、运行时内存和CPU时间),而是直接与UART外围设备进行通信。这样,如果需要,可以同时运行两个UARTS。根据它的声音,您没有将二进制文件转换为文本(还有更好的打印方法)。
以上来自于百度翻译 以下为原文 Don't use printf - it is simply adding a whole lot of overhead (program memory, runtime memory and CPU time) but instead talk directly to the UART peripherals. That way you can run both UARTS simultaneously if you need to. By the sound of it, you are not converting binary to text (and there are better ways that printf for that). Susan |
|
|
|
我肯定会说同样的话!如果需要格式化,请使用SaveTFF()并发送缓冲区…
以上来自于百度翻译 以下为原文 I was *definitely* going to say the same! If ever formatting is needed, use sprintf() and send the buffer... |
|
|
|
只有小组成员才能发言,加入小组>>
5162 浏览 9 评论
2000 浏览 8 评论
1928 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3172 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2226 浏览 5 评论
731浏览 1评论
613浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
503浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
629浏览 0评论
527浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 09:53 , Processed in 1.394911 second(s), Total 84, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号