完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
目标:驱动CH382通过串口发送数据
问题:PCIe的RC访问PCIe时要求4字节对齐访问,目前串口可以发送数据,但是波特率不对,看上去就像是波特率分频寄存器的值全是FF,程序如下: 初始化: /* *(uint32_t *)((char*)pcieIOBase + 0xC0 + LCR) = 0x80; *(uint32_t *)((char*)pcieIOBase + 0xC0 + DLL) = 0x0C; *(uint32_t *)((char*)pcieIOBase + 0xC0 + DLM) = 0x00; *(uint32_t *)((char*)pcieIOBase + 0xC0 + LCR) = 0x03; *(uint32_t *)((char*)pcieIOBase + 0xC0 + FCR) = 0x01; */ *(uint32_t *)((char*)pcieIOBase + 0xC0) = 0x80000000; *(uint32_t *)((char*)pcieIOBase + 0xC0) = 0x8000000C; *(uint32_t *)((char*)pcieIOBase + 0xC0) = 0x0300000C; *(uint32_t *)((char*)pcieIOBase + 0xC0) = 0x03010000; 发送: *(uint32_t *)((char*)pcieIOBase + 0xC0 + 0) = i + 0x03010000; 由于对CH382内部PCIe处理情况不是很了解,上述代码是否存在问题呢? |
|
相关推荐
1个回答
|
|
按照字节访问试了一下是可以的,昨天有个地方搞错了
*((char*)pcieIOBase + 0xC0 + LCR) = 0x80; *((char*)pcieIOBase + 0xC0 + DLL) = 0x0C; *((char*)pcieIOBase + 0xC0 + DLM) = 0x00; *((char*)pcieIOBase + 0xC0 + LCR) = 0x03; *((char*)pcieIOBase + 0xC0 + FCR) = 0x01; |
|
|
|
只有小组成员才能发言,加入小组>>
463 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2868 浏览 2 评论
2357 浏览 1 评论
808浏览 2评论
CH569通过HSPI实现USB3.0和FPGA高速双向通讯
630浏览 1评论
492浏览 1评论
CH32F103C8T6使用当前官网上的CDC例程会出现设备描述符请求失败
356浏览 1评论
630浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 05:26 , Processed in 1.183468 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号