欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3072|回復: 2
收起左側

51單片機用UART模式往tf卡這寫數(shù)據(jù) 程序只能建立一個txt文件,但是文件是空的。

[復制鏈接]
ID:318531 發(fā)表于 2018-5-13 04:51 來自觸屏版 | 顯示全部樓層 |閱讀模式
  1. 在淘寶上買的北京博通電子的sd卡讀寫模塊SDV7O5M,給的測試程序只能建立一個txt文件,但是文件是空的。/************************************************************************************/
  2. /*     程序名:51單片機的串口---SDV700模塊測試程序                                  */
  3. /*                                                                                  */
  4. /*     晶振:22.1184 M         波特率115200                CPU型號:STC89C52        */
  5. /*                                                                                  */
  6. /*                                                                                  */
  7. /*     功能描述:單片機上電后,向SD卡得mydata.txt文件內不斷寫入數(shù)據(jù)                 */
  8. /*                                                                                  */
  9. /*                                                                                                                                                                */
  10. /*                                                                                  */
  11. /*                                                   北京博通電子   版權所有        */
  12. /*                                                                                  */   
  13. /*                                                         2009-08-20               */
  14. /************************************************************************************/

  15. #include <reg51.h>
  16. #include <string.h>

  17. #define uchar unsigned char
  18. #define uint unsigned int

  19. sbit P1_0 = P1 ^ 0;//busy忙標志管腳
  20. sbit P1_1 = P1 ^ 1;//SD模塊電源
  21. sbit P1_5 = P1 ^ 5;//測試板信號指示(指示發(fā)送數(shù)據(jù))


  22. uchar  date_temp[50]={0};//獲取系統(tǒng)狀態(tài)
  23. code uchar  top[]={"單位:北京博通電子 SDV700"};//獲取系統(tǒng)狀態(tài)
  24. code uchar  item[]={"    年-月-日 時:分  載荷記錄(kN)  工作狀態(tài)"};//獲取系統(tǒng)狀態(tài)
  25. uchar  D_date[]={"    09-08-07 12:55      878            正常"};//定義數(shù)據(jù)格式
  26. void Send_UART(unsigned int num/*字節(jié)數(shù)*/,unsigned char *Date_OUT/*數(shù)據(jù)數(shù)組*/);

  27. unsigned char a;

  28. /***********************************************************************************************/
  29. void Delay(unsigned char a)
  30. {
  31.         unsigned char i;
  32.         while( --a != 0)
  33.         {
  34.                 for(i = 0; i < 4; i++);
  35.         }
  36. }


  37. /***********************************************************************************************/
  38. void main (void)
  39. {
  40.         unsigned long tt=0;
  41.         //Timer0Init();
  42.         P1_1 = 1;//給SD卡模塊上電

  43.         SCON    =   0x50;   //0101,0000 串口方式1,允許接收,無奇偶校驗位
  44.     TMOD    =   0x20;   //0010,0000 時器1,定時方式2 自動重裝裝計數(shù)器
  45.     PCON = 0x80;  //SMOD=1
  46.         TL1 = 0xff;
  47.         TH1 = 0xff;
  48.         TR1 = 1;

  49.         P1_0 = 1;
  50.         Delay(4000);
  51.         //寫標題
  52.         while(P1_0);
  53.         memcpy(date_temp,top,25);
  54.     Send_UART(25,date_temp);
  55.         //寫條目
  56.         while(P1_0);
  57.         memcpy(date_temp,item,45);
  58.     Send_UART(45,date_temp);
  59.         
  60.         while(1)
  61.         {
  62.           //連續(xù)寫入數(shù)據(jù)
  63.           while(P1_0);
  64.           tt++;
  65.           D_date[21] = tt/100000000+'0';
  66.           D_date[22] = ((tt%100000000)/10000000)+'0';
  67.           D_date[23] = (((tt%100000000)%10000000)/1000000)+'0';
  68.           D_date[24] = ((((tt%100000000)%10000000)%1000000)/100000)+'0';
  69.           D_date[25] = (((((tt%100000000)%10000000)%1000000)%100000)/10000)+'0';
  70.           D_date[26] = ((((((tt%100000000)%10000000)%1000000)%100000)%10000)/1000)+'0';
  71.           D_date[27] = (((((((tt%100000000)%10000000)%1000000)%100000)%10000)%1000)/100)+'0';
  72.           D_date[28] = ((((((((tt%100000000)%10000000)%1000000)%100000)%10000)%1000)%100)/10)+'0';
  73.           D_date[29] = ((((((((tt%100000000)%10000000)%1000000)%100000)%10000)%1000)%100)%10)+'0';
  74.           memcpy(date_temp,D_date,43);
  75.       Send_UART(43,date_temp);
  76.           Delay(1);
  77.         }                                                   
  78. }


  79. void Send_UART(unsigned int num/*字節(jié)數(shù)*/,unsigned char *Date_OUT/*數(shù)據(jù)數(shù)組*/)
  80. {
  81.    unsigned int i=0;

  82.    P1_5 = 0;//點亮測試板指示燈

  83.    while(i<num)
  84.    {
  85.      TI     =   0;  //清零串口發(fā)送完成中斷請求標志
  86.      SBUF   =   Date_OUT[i];        //date[i]
  87.      while(TI ==0); //等待發(fā)送完成
  88.      TI     =   0;  //清零串口發(fā)送完成中斷請求標志
  89.      i++;
  90.    }

  91.    //WINDOWS里的是 13 + 10(ASCII碼值)作為換行
  92.    //-----------------------------------------------發(fā)送換行符0x0D
  93.    SBUF   =  0x0d;
  94.    while(TI ==0); //等待發(fā)送完成
  95.    TI     =   0;  //清零串口發(fā)送完成中斷請求標志

  96.    //-----------------------------------------------發(fā)送換行符0x0a
  97.    SBUF   =  0x0a;
  98.    while(TI ==0); //等待發(fā)送完成
  99.    TI     =   0;  //清零串口發(fā)送完成中斷請求標志

  100.    P1_5 = 1;//熄滅測試板指示燈
  101. }
復制代碼
回復

使用道具 舉報

ID:277550 發(fā)表于 2018-5-13 12:35 | 顯示全部樓層
這是特定的模塊,還是得有模塊的資料,和實踐,才知道問題
回復

使用道具 舉報

ID:318531 發(fā)表于 2018-5-13 16:49 來自觸屏版 | 顯示全部樓層
devcang 發(fā)表于 2018-5-13 12:35
這是特定的模塊,還是得有模塊的資料,和實踐,才知道問題

這就是那個模塊的資料,
収*O_20180513_164904.png
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表