消耗時間比較多
我敢打賭,很少有人把單片機消耗到慢下來的地步
除非是故意的,或者是在uS級別中斷中加入計算
否則,在很多時候,是不需要考慮單片機運算速度的,因為,單片機單單依靠軟件去計算本身就很慢,在很多時候是不需要單片機很快的,要它快的時候,自然有對應(yīng)的處理辦法,比如增加片上的硬件加法器,或者硬件乘法器
而對于發(fā)送到串口,很多時候是不能用BCD碼的,這一點很重要,大多時候是要發(fā)送ASCII碼的
因為,發(fā)送數(shù)據(jù)或者BCD碼,都有可能出現(xiàn)'\0',也就是0x00,這是C語言中的字符串結(jié)束,有一些函數(shù)碰到結(jié)束符就會結(jié)束處理,這樣就容易出錯了,因為,發(fā)送的是0x00這個是數(shù)據(jù),但上位機覺得你發(fā)的是結(jié)束符,提前收工了
就算是上位機給單片機發(fā)送數(shù)據(jù),一般都不會直接發(fā)送,大多是發(fā)送ASCII或者字符串,很少有直接心頭數(shù)據(jù),除非很有必要 |