我還只是個(gè)土八路 C PLC MCU
以前摸了很長(zhǎng)時(shí)間的計(jì)算機(jī)C等,很長(zhǎng)一段時(shí)間很癡迷于計(jì)算機(jī)的高級(jí)編程語(yǔ)言,因?yàn)橛?jì)算機(jī)的匯編太……,感覺(jué)就象是拿著小米加步槍在打老美——不爽!
摸上PLC后,很喜歡PLC的那種傻瓜式的編程方式,可做一段時(shí)間后,發(fā)現(xiàn)那對(duì)自己一點(diǎn)吸引力也沒(méi)有,感覺(jué)太限制創(chuàng)造性了——不爽!
摸上MCU后,我才發(fā)現(xiàn)什么叫著——爽極了!但我不喜歡單片機(jī)C語(yǔ)言,很不喜歡,當(dāng)然,別人喜歡我也不反對(duì),這東西是蘿卜青菜,各有所愛(ài)!我喜歡MCU,就因?yàn)槭窍矚g的那種一切盡在掌握的編程感覺(jué),但單片機(jī)C更多的是讓自己無(wú)法全在掌握中!我也沒(méi)寫(xiě)個(gè)什么大程序,最多的也就不到8000行,但都是拿匯編寫(xiě)的!我想,MCU更大的好處還是讓我們?cè)诰幊痰臅r(shí)候一切盡在掌握,離開(kāi)了這點(diǎn),MCU的特色就要大打折扣!樓主要說(shuō)的無(wú)非是追求一個(gè)最好的程序結(jié)構(gòu),但很多時(shí)候,它并不是適合你的產(chǎn)品的!如果你只是一個(gè)程序員,你可以一直這樣做,但你如果要結(jié)合別的問(wèn)題考慮,很多時(shí)候你不得不屈服于現(xiàn)實(shí)的客觀(guān)條件,例如,你要考慮可靠性嗎?!當(dāng)然要考慮,所以就拿樓主24C01例子來(lái)說(shuō),我承認(rèn),樓主的辦法不錯(cuò),我自己也嘗試那么用過(guò),但我現(xiàn)在更贊同MAYCHENG的說(shuō)法,盡是點(diǎn)純參數(shù)的東西,用不著將簡(jiǎn)單的問(wèn)題復(fù)雜化!就是效率也不能說(shuō)是浪費(fèi),因?yàn)槲蚁矚g在剛上電的時(shí)候,做一點(diǎn)24C01的測(cè)試,主要是為了生產(chǎn)上的方便!如果出問(wèn)題了,他們可以一目了然的判斷故障點(diǎn),如果將這些都引入主程序,反倒是對(duì)主程序效率的浪費(fèi)!還把簡(jiǎn)單的問(wèn)題復(fù)雜化了!
我個(gè)人認(rèn)為:一個(gè)完全符合計(jì)算機(jī)編程思想的MCU程序結(jié)構(gòu),也未必是一個(gè)好的單片機(jī)程序!很多時(shí)候,技巧性的搞點(diǎn)東東,還是很有必要的,當(dāng)然,高級(jí)語(yǔ)言的很多編程思想我們也必須掌握,只有通過(guò)不斷的取舍判斷,我們才能造出一個(gè)自己滿(mǎn)意的程序。(我只說(shuō)是自己滿(mǎn)意,可不知道是不是好程序,這東西好象沒(méi)人給我打過(guò)分,反正老板又不會(huì)打分,只要能掙錢(qián),我就是滿(mǎn)分,哈哈)另外那個(gè)關(guān)于KEY的程序,我也不同意,最適合的才是最好的,你用復(fù)制幾次的辦法來(lái)實(shí)現(xiàn)幾個(gè)鍵控的辦法,對(duì)于一個(gè)鍵的控制如果要考慮這些……明顯是開(kāi)著奔馳拉牛車(chē)——太浪費(fèi)感情!
寫(xiě)到這里,都不知道自己到底說(shuō)了什么!我還只是個(gè)土八路,水平有限,我閃!