完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
问候语!我想使用PIC18F控制器的外部并行SRAM。但是我有2个UART接口激活,我想把数据安全地送到外部SRAM。并且数据应该由控制器来计算。因此,我有3个进程必须访问SRAM。我可以整理这个吗?数据表访问SRAM的速度非常快-55纳秒。例如,如果我有一个传入UART咬中断,我如何检查SRAM不使用相同的特定过程的特定时刻?如果我在中断接收UART咬,如何等待任何读/写过程结束。我不能保证主过程的芯线比UART传输时间短。有什么想法吗?谢谢!
以上来自于百度翻译 以下为原文 Greetings! I want to use an external parallel SRAM with PIC18F controller. BUT I have 2 UART interfaces active and I want to safe the data to the external SRAM. And the data should be calculated by the controller. So I have 3 processes which have to have access to the SRAM. So can I organize this? The access to the SRAM is very quick - 55ns as the datasheet says. For example if I have an interrupt for incoming UART bite how can I check if the sram is not used the same particular moment by the main process? An if I`m in interrupt to receive UART bite, how to wait any read/write process to end. I can`t ensure a cicle of the main process to be shorter than UART transmition time. Any ideas? Thanks! |
|
相关推荐
9个回答
|
|
将接收到的字符放入一个内部RAM缓冲器,例如,256字节。维护输入指针。在主体中,当您得到一个机会时,如果输出指针不等于输入指针,则使用输出指针读取字节并更新输出指针。将字节写入外部RAM。如果对输入指针和输出指针使用UIT88T,那么如果使用256字节缓冲器,则不需要检查缓冲区的末尾。
以上来自于百度翻译 以下为原文 Put the received characters into an internal ram buffer of, say, 256 bytes. Maintain an input pointer. In main, when you get a chance, if your output pointer is not equal to the input pointer the read the byte using the output pointer and update the output pointer. Write the byte to external ram. If you use uint8_t for the input pointer and output pointer then you don't need to check for end of buffer if you use a 256 byte buffer. |
|
|
|
一些(高引脚数)PIC18S可以配置为在PMP上使用外部存储器。这自动地解决了访问问题。
以上来自于百度翻译 以下为原文 Some (high pin count) PIC18s can be configured to use external memory over PMP. This automatically solves the access problem. |
|
|
|
禁用主进程中的中断,同时访问SRAM。
以上来自于百度翻译 以下为原文 Disable interrupts in the main process whilst you access the sram. |
|
|
|
禁用主进程中的中断,同时访问SRAM。
以上来自于百度翻译 以下为原文 Disable interrupts in the main process whilst you access the sram. |
|
|
|
完全坏主意。用适当的内部RAM代替适当的MCU。
以上来自于百度翻译 以下为原文 Totally bad idea. Get a proper MCU with enough internal RAM instead. |
|
|
|
禁用中断是个好主意!这个过程非常快,所以我想不会有问题。我不太熟悉PMP(我用它找控制器)。有一些关于地址和数据栈的文章,但我不太熟悉。我会阅读数据表.PP:使用更多RAM的控制器不是一个坏主意!我来看看有没有合适的东西。谢谢!
以上来自于百度翻译 以下为原文 Disabling interrupts is a good idea! The process is very fast so I think there won`t be a problem. I`m not very familiar with PMP(I sought controller with it). There is something written about address and data stacks, but I`m no familiar. I`ll read the datasheet. PP:Not a bad idea to use a controller with more RAM! I`ll see if there is something suitable. Thanks! |
|
|
|
我猜你找不到一个超过4K RAM字节的8位微芯片微控制器。
以上来自于百度翻译 以下为原文 I guess you will not find an existing 8bit Microchip Microcontroller with more than 4k RAM Bytes |
|
|
|
那么为什么是8位呢?有大量的16和32位微芯片MCU,以及8位Atmel(现在Microchip)XMega MCUs,高达32 KB RAM。
以上来自于百度翻译 以下为原文 So why 8 bit? There is a plenty of 16- and 32-bit Microchip MCUs available as well as 8-bit Atmel (now Microchip) XMega MCUs with up to 32 kB RAM. |
|
|
|
新的应该允许…32?我记得正确吗?或者16(6位银行业务),我仍然使用PIC24或32:
以上来自于百度翻译 以下为原文 New ones should allow for... 32? Do I recall correctly? or maybe 16 (6bits for banking) Still I'd use a PIC24 or 32 :) |
|
|
|
只有小组成员才能发言,加入小组>>
5037 浏览 9 评论
1936 浏览 8 评论
1872 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3089 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2157 浏览 5 评论
600浏览 1评论
465浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
494浏览 0评论
396浏览 0评论
IPECMD命令烧录AVR128DA48芯片,报找不到芯片错误
875浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-4 12:21 , Processed in 1.269272 second(s), Total 95, Slave 78 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191