|
发表于 2016-8-20 01:24:42
|
显示全部楼层
本帖最后由 darkorigin 于 2016-8-20 01:26 编辑
个人觉得:
1、 第19行 myFile = SD.open("test01.txt", FILE_WRITE); 可以放到14行后面做个ELSE
这样不用每个循环都重新打开文件,浪费系统资源。
- File myFile;
- char inByte; // incoming serial byte
- void setup()
- {
- Serial.begin(1200,SERIAL_8E2); // "_8E2"是个什么鬼?
- // while (!Serial) { ; } 这句话有点不知所谓,判断了不执行任何语句
- pinMode(10, OUTPUT);
- myFile = SD.open("test01.txt", FILE_WRITE); //你这里不打开 后面的语句咋生效呢?
- // if (!SD.begin(4)) { return; } 其实并不需要return SETUP()函数自动终止的.
- }
- void loop()
- {
- // myFile = SD.open("test01.txt", FILE_WRITE);
- // if (myFile) //这里myfile是一个 FILE类型的值,并不是逻辑值这个判断是否有必要?
- // {
- //
- if (Serial.available() > 0)
- {
- inByte = Serial.read();
- Serial.println(inByte,HEX);
- myFile.println(inByte,HEX);
- }
- delay(500) ;
- // }
- }
复制代码
个人从代码优化的角度做的修改和备注,如果执行之后还是有错误,考虑是否硬件有问题.
过多过于复杂的判断 会影响代码的效率,本来几十步的流程弄成几百步,就显得有点啰嗦,执行起来也会容易出各种小问题.
代码尽量逻辑清晰,复杂问题简单化是编程的目的. |
|