使用STM32F103 通过FSMC总线连接CH438引发总线异常问题【求助】

使用STM32F103ZET6做了设计,FSMC总线上挂载了1片SRAM芯片和2片CH438芯片。
SRAM芯片接在NCE3上,1片CH438接在NE1上,一批接在NE4上。
目前程序测试SRAM芯片读写都正常,但通过FSMC总线操作CH438就会引起异常。

CH438是参考官方51单片机程序来修改的,估计还是程序没有搞对。

官方是否有STM32 FSMC总线操作CH438的例程?

下面是一份STM32F103的FSMC操作CH438的代码,实测可用,您可以在此基础上进行修改

icon_rar.gifCH438 _STM32_FSMC.zip



几天未上来看。
谢谢Felix 。参考你的代码FSMC调试已经OK了。已经可以正常与CH438通讯。

目前在调试大数据收发的问题,打开FIFO功能。发现上位机一次性发送超过112个字节给CH438,CH438的接收终端中只能接收到111个字节,会丢失一个字节。不超过112个字节就有问题。

继续找问题。



您好,可以检查一下FIFO的触发设置。

FIFO接收的数据到达FIFO触发点就会产生一个接收数据可用中断,如果FIFO数据不足触发点设置的数据在超过4个数据的时间没有收到数据,就会产生一个接收数据超时中断。所以您如果FIFO触发点设置的是112字节触发,那么在数据少于112字节都会触发接收数据超时中断,而超过这个数据量就会触发接收数据可用中断。所以产生这两个都需要接收数据。


只有登录才能回复,可以选择微信账号登录