OpenEdv-开源电子网

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

为什么文件不能写入呢

[复制链接]

2

主题

3

帖子

0

精华

新手入门

积分
18
金钱
18
注册时间
2019-3-5
在线时间
2 小时
发表于 2019-4-23 18:46:02 | 显示全部楼层 |阅读模式
1金钱
#include "stm32f10x.h"
#include "SysTick.h"
#include "sdio_sdcard.h"
#include "usart1.h"       
#include "adc_dma.h"
#include "key_led.h"
#include "ff.h"
#define usart_EN 1

int res;  
FIL fdst;
FATFS fs;
UINT br, bw;            // File R/W count
BYTE textFileBuffer[] = "ch0,ch1,ch2,ch3,ch4,ch5,ch6,ch7,ch8,ch9,ch10,ch11,ch12,ch13,ch14,ch15\r\n";
uint8_t start_flag;
uint8_t end_flag;
uint8_t usart_finished;
int main(void)
{         
        uint8_t i,j;
        start_flag=0;
        end_flag=0;
        Free_Buf_Now=BUF2;
        Buf_Ok=0;
  SysTick_Init();
        LED_GPIO_Config();
        EXTI_PE5_Config();
        USART1_Config(115200);/* USART1 config */
//        USART1_Config();
        SD_NVIC_Configuration();/* Interrupt Config */
adc_dma_config();

        printf ( "\r\n test starting......\r\n" );
        while(1)
        {
                //while(!(start_flag==1));
                start_flag=0;
                       
                f_mount(0,&fs);                  
//                res = f_open(&fdst,"0:/êy¾Y.TXT",FA_CREATE_ALWAYS        | FA_WRITE); //ÿ′Î′æ′¢oó¸2¸ÇÔ′Îļt
                res = f_open(&fdst,"0:/êy¾Y.TXT",FA_CREATE_ALWAYS        | FA_WRITE); //ÿ′Î′æ′¢oó¸2¸ÇÔ′Îļt
               
                printf ( "Îļt′ò¿a£¨′′½¨£©3é1|.\r\n" );
               
                if (res==FR_OK)
                {
                        printf("Open File Succes!\r\n");
                        GPIO_WriteBit(GPIOE,GPIO_Pin_3,Bit_SET);
                        f_lseek(&fdst, f_size(&fdst));   // point to the end of a file
                        res = f_write(&fdst, textFileBuffer, sizeof(textFileBuffer), &bw);
                        adc_dma_start();
                        for(;;)
                        {
                                res=f_sync(&fdst);  //±ß2é¼ˉ±ß±£′æÎÄμμ,oüÖØòa£¡£¡£¡
                                if(Buf_Ok==1)
                                {
                                        Buf_Ok=0;
                                        if(Free_Buf_Now==BUF1)
                                        {
                                                dma_2_set();
                                                adc_start();
                                                for(i=0;i<TT_NUM;i++)
                                                {
                                                        for(j=0;j<CH_NUM-1;j++)
                                                                f_printf(&fdst, "%d,",ad1[i][j]);
                                                        f_printf(&fdst, "%d\r\n",ad1[i][CH_NUM-1]);
                                                }
                                                //printf("1\r\n");       
                                        }
                                        else if(Free_Buf_Now==BUF2)
                                        {
                                                dma_1_set();
                                                adc_start();
                                                for(i=0;i<TT_NUM;i++)
                                                {
                                                        for(j=0;j<CH_NUM-1;j++)
                                                                f_printf(&fdst, "%d,",ad2[i][j]);
                                                        f_printf(&fdst, "%d\r\n",ad2[i][CH_NUM-1]);
                                                }
                                                //printf("2\r\n");
                                        }
                                }
                                if(end_flag==1)
                                {
                                        end_flag=0;
                                        break;
                                }
                        }
                        GPIO_WriteBit(GPIOE,GPIO_Pin_3,Bit_RESET);
                        printf("end!\r\n");               
                }
                else  
                {
                        printf("Open File Failed!\r\n");
                        //GPIO_WriteBit(GPIOE,GPIO_Pin_4,Bit_RESET);
                }
                f_close(&fdst);                                              /* 1&#216;±&#213;′ò&#191;aμ&#196;&#206;&#196;&#188;t */
                printf("closed!\r\n");
        }
}

/*******************************************************END OF FILE************/



为什么写入SD卡失败呢?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2019-4-24 01:43:19 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-24 21:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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