书上都有,你没注意而已。
我现在对CSMA/CD的理解是:节点在发送的同时也在不断的接受信号,包括自己刚发出去的信号,当发现接受的信号ID与自己发出的ID相同时就自动丢弃,不同则接受进接受缓冲区.对吗?
NO!节点在发送的同时,检测到的必然是自己正在发送的信号。因此“包括”一词容易混淆概念。 节点在发送期间,所有滤波电路是关闭的!(自测试开放除外)怎么可能校验ID? 这些问题自己做个实验证实一下就行了,谁说的都不算。自己质疑,自己解惑。---可别说“必然”二字不严密,“另一个节点同时也在发送怎么办?.......”
我现在想继续问的是:如果发现接受的信号与自己刚发送出去的信号不同时,是认为总线在竞争呢还是认为出错呢?会引起中断吗?
实验中打开“仲裁丢失中断”和“错误中断”,看看那个中断发生?区别可根据TXERR是否计数。 |