完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我觉得必须有简单的我可以,但我有一吨的这个项目读取数据的问题。
这是(应该是,有一天,一个旧)袖珍计算机辅助模块。CS使单片机在低(从地址和片选译码的PC总线)。这触发了一个中断处理程序。效果很好。 从那里,我需要阅读其他的输入引脚,如地址设置,和R/W。现在我主要关注R/W引脚。我试图改变它的软件控制,增加了该登记。我试着改变它的同步。我已经尝试禁用它的缓冲区。似乎没有什么能使它正常工作。基本上,大部分时间它读取RW 1(高)无论是或不是。它偶尔会通过阅读这0期了,不管实际价值。在这一点上,当它被阅读0,我断开PC和上拉到VDD。我能读4.54v对钎料在评估板的加入,但调试断点仍显示值为0。曾经我以为我已经把单片机或什么的,但是,那是当我尝试切换到软件和登记…这就改变了它一直到阅读1。后来,换回来,剩下的是1。 这是令人沮丧的,因为在公共汽车上写的数据是相当不错的。然而,不能读任何有我完全阻断。 我会尝试重定向的另一个评价模块,只是排除吹单片机… 编辑/更新: 我试着把214009放在创业板和编程的一个简单的LED闪光灯的应用程序来测试阅读P0.4、P0.5。他们都读正确使用时,安装软件销。然后我切换输入引脚P3.2 P3.3和,和他们读好。所以,很显然,这是在我的项目的东西,不是吹单片机。有什么关于中断处理干扰引脚读取? PC-1500—Cyrkk.Soviv01.Zip 1兆字节 |
|
相关推荐
3个回答
|
|
将两个程序中的堆增加到0x200。
|
|
|
|
谢谢。我认为这有帮助。不管怎样,这似乎是有区别的,并且允许我取得进步,使我能够在严格的条件下读到一个地址。
条件似乎与时间和性能有关。 一旦中断处理程序启动,我就调用这个函数: 空的读地址(){//现在,我们只需生成一个单地址读和哑等待/ /地址=128;L地址= PiNoAddiSsRead();/CyDelayCype(2);/假装我们正在读取上面的8位…//Addio=地址* 256;地址=0x8000 } Load;//Addio=地址> StasuxAddiSrsAd Read(); 由于项目是现在,如果我正在运行调试分支,我可以成功地读取当前连接(4 LSB)地址位。但是,如果我给CyDelayCycles加上1,我就不能及时完成我的处理,而且我基本上得到了零点或间断的地址读取。 我尝试切换到发布分支,并添加详尽的速度优化,而且,在那里,我似乎能够添加延迟,仍然得到良好的阅读。延迟是因为我只有8个GPIO引脚来读取这个设备上的16个地址位(我想使用它,因为它在电路板上的紧凑和简单的实现),并且我需要用外部总线切换器将8个引脚从低电平切换到高位半地址。把事情搞定。 我很欣赏任何建议或指针,任何人都有这样的总线交互的性能优化和定时同步。 谢谢,保罗 我刚刚发现了一件有趣的事。在尝试启用我的代码的写入部分时,我正在破解读取…因为时间的缘故。阅读R/W位,根据其状态决定推迟的事情。然而,我能够得到它的工作(虽然不是做得还)。区别在于: 模式= CypSpIn Read Pin(PixRWY0);/MODE=PiNoRWSRead(); 看起来像是一cypins_readpin更快调用逻辑引脚读取功能…至少对于一个引脚。 再及可能有助于知道问题的Pocket PC是夏普PC-1500。CPU是一个8位CMOS器件运行在1.3mhz。访问时间系统SRAM 200ns。 另一个更新:我怀疑速度优化可能忽略cydelaycycles呼叫…这似乎确实如此。我调节到1024左右,而且它也没有差异;但是,再增加一个电话和一pin_address_read()引脚写入一个输出(包括实际的时机,将参与总线切换读完整地址),我又一次打破了我的测试代码。 是真的性能增益,多有创建自定义UDB中处理的地址和数据总线,或者我更好切换到多个设备,所以我至少可以有这些总线连续的块和避免总线切换? |
|
|
|
uwjfjsdfwer 发表于 2019-11-4 10:47 上周末我重定向我的项目来与创业板cy8c4247lqi-bl483。让我地址的低,高的地址,和dataeach自己的端口和使用directread写功能的端口全部字节而不是通过寄存器。我想/希望有somespeed优势与港口在timeinstead散落在端口引脚。在任何情况下,它看起来像这可能不够快,至少要阅读完整的地址。这是没有我的世界你好测试直到我重新编译全优化…但我用大数据的地址,所以我不认为优化是瞒着我什么事。 如果(这是bigif)我也可以读取数据总线和R/W位银泰,那么这将我的需要,一切需要做的单片机可以做到同步从PC上的CPU。我无法说明数据读取是否正常工作。我还没有得到一个戳在任何可识别的方式工作。我还不确定这是否是因为仍然有问题,我的代码或设计,或有可能在戳命令是一些安全检查,防止用户从pokeing非RAM地址。另一方面,尽管我清理我的bufferbefore写Hello World进去,经过测试的消息不包含非00数据空间。我不知道,那里除了通过电脑活动,试图写进空间(mywrite函数只接受writesto缓冲字节后你好世界人物。)当然,第三手,我无法拥有,如果这些garbagebytes值e PC CPU打算写:-) 下一步可能是砍一些lh5801机器语言尝试写入缓冲区,并看看会发生什么… |
|
|
|
只有小组成员才能发言,加入小组>>
718个成员聚集在这个小组
加入小组1910 浏览 1 评论
1664 浏览 1 评论
3418 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1580 浏览 6 评论
1387 浏览 1 评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
206浏览 2评论
193浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
336浏览 2评论
364浏览 1评论
74浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-5-9 19:15 , Processed in 0.774975 second(s), Total 82, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号