我很迷茫,如何解决这个问题,它应该如此简单。我正在使用pic16F1526,并试图将模拟量从0-255的读数大致调整为50-100。我正在使用这个公式模拟到数字输入标定方程适用于代码块,但不适用于微控制器
result =((user_input + 200)* 200)/ 800;
在代码块和我的计算器中,它可以在0-255的所有数字下工作,并且无论我在代码bloack中使用8位,16位变量,它都能很好地工作。 我已经验证了AtoD输入正在正确地将数据发送到UART。即使我输入静态数字代替样本,我也会得到奇怪的结果。
当acd读取一个255或我输入一个255时,该公式给出了一个十进制数31,而不是像它应该的100。我能想到的唯一的事情就是越来越乱,因为它有点微,因此8位PIC是数学算术。
好的一点,我甚至都没有把它简化成一个简单的等式,我有点匆忙,只是把数字插入我的计算器,因为我正在修改一个不同的等式,这个和数学不是我的强项。 –