首先,我的 PIC 是 16f1625,我使用 MPLAB 8.86 对其进行编程。我的问题很简单,我在 PC 和 PIC 之间进行通信,PC 发送一个字节,PIC 读取这个字节,然后做一些事情。我的问题是我想像这样改进它,PC发送一个像“R”这样的字母,然后他发送我想要设置的数字。今天我只有 4 种可能,PC 发送 0、1、2 或 5,我根据这些设置分辨率。
switch(i) {
case 1:
pulsesPerMm = 10;
break;
case 2:
pulsesPerMm = 20;
break;
case 5:
pulsesPerMm = 51;
break;
case 10:
pulsesPerMm = 102;
break;
}
我收到这样的命令:
while(!RCIF) /* set when register is not empty */
continue;
return RCREG;
现在我想做这样的事情:我收到“R”,表示下一个单词将是分辨率,在这些之后,2个字节,这将是新的分辨率,我只需要将字符串转换为 int (使用 atoi) 然后我可以设置 pulsesPerMm。问题是我有其他只需要一个字母的命令,所以我不想更改这些。