OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4631|回复: 0

SD卡每次读完约512字节后进入中断?

[复制链接]

8

主题

11

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
224
金钱
224
注册时间
2016-11-25
在线时间
49 小时
发表于 2017-6-21 17:04:58 | 显示全部楼层 |阅读模式
我调用了文件系统,在main函数里面先打开一个txt文件,读取6个字节并按照功能进行转换,之后就使能定时器1,想要每次进入定时器中断后都从txt读取6个字节,并转换,通过SPI发送出去。但是发现每次读取一定数据后定时器中断进不了,因为我有片选线拉低和拉高,所以用示波器看到进过多次拉低和拉高的脉冲后,就没法进入了(此时txt并没有读完)。可能是什么原因呢?

main函数部分是这样的(已打开txt)
                                               usart4.printf("HAD OPEN\r\n");
                                                file_len = f_size(&file);
                                                usart4.printf("size: %d\r\n",file_len);
                                                f_read(&file,read_buffer,6,&counter);
       
                                                ASC2char(read_buffer);
                                                usart4.printf("start ADC\r\n");
                                                TIM1_Configuration();
                                                while(1)
                                                {}

定时器中断是这样的

void TIM1_UP_TIM10_IRQHandler(void)
{
if ( TIM_GetITStatus( TIM1, TIM_IT_Update) != RESET )
        {       
        TIM_ClearITPendingBit(TIM1 , TIM_IT_Update);
               
                SPI1_CS_OFF;
               
                send_data(dac_buffer[0]);
                send_data(dac_buffer[1]);
                send_data(dac_buffer[2]);
                SPI1_CS_ON;
               
                y++;
                if(y<(file_len/6))
                {
                f_read(&file,read_buffer,6,&counter);
                ASC2char(read_buffer);
                }
               
                else
                {
                       
                        f_lseek(&file,0);
               f_read(&file,read_buffer,6,&counter);
                   ASC2char(read_buffer);
                        y=0;
                }
               
        }
               
               
               
}       

每次进入中断拉低拉高片选

每次进入中断拉低拉高片选

发现读取一定字节后进不了中断

发现读取一定字节后进不了中断
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-17 23:22

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表