單片機上都有幾排小小的字,實際上,單片機的很多信息都在這幾排字上,F在就以STC12C5A60S2簡單介紹一下。
STC表示的是芯片的品牌,就不過多解釋了,“12”表示的是“STC 1T 12”相同工作頻率時,其速度是普通8051的8~12倍。對于普通51內核的單片機來說,12個時鐘周期是一個機器周期,即12T,而這一款的單片機晶振跳一下就運行一個指令,速度自然就快了。(對于12T的單片機,其延時一毫秒需要運行大概112步,那要達到相同效果,1T的如何寫延時程序呢?) “C”是指工作電壓,標識為“C”工作電壓是3.3~5V,標識為“LE”的工作電壓是2.2~3.6V。 5A表示其ROM為1280字節(這相關的內容上學期戰神課上有詳細講解)。60是指程序存貯空間大小,60是60K字節,類似還有08(8K字節),20(20K字節),32(32K字節)等等。有S2字樣時,表示有第二串口,有A/D轉換,有PWM,有內部EEPROM(這個也不解釋了吧,大概在最后幾節課會講到的。堅持。
2.關于程序的大小由上文可以看到,單片機的程序空間有限,如果用一些較為低級的單片機,很有可能把程序寫超了,如何看自己的程序的大小呢?在這里嗎?

hex文件顯示有9K但實際上燒進單片機的并沒有那么大。應該看這里:

這個是構建后頁面最下面的一小格。真正的大小是date,xdate,code這三個,相對于上一個小了不少吧。hex文件屬性里顯示的是程序儲存在計算機里的大小。這也是初學者很容易想當然的問題。不過我們用的芯片空間足夠大,常理來說很難出現關于程序大小的問題。
3.關于程序的調試 wxid 用codeblocks及其他c語言編程程序的同學該知道它們有一個很方便的功能---watch,監視功能,實際上keil也是有這一項功能的,就在這里: 在鼠標光標指示處,單擊后就會出現這個界面: 左側顯示的是運行所需時間等信息,右下側可以輸入需要監視的變量,功能與codeblocks基本完全一樣,只是需要簡單的設置(主要是如果需要得知精確時間,否則貌似不必設置),這就不詳細解釋了。 單片機還有很多相關的小知識待我們學習,了解后會對我們的使用有很大幫助。如果文中有錯誤,還請多多包涵。篇幅有限,很多地方解釋不很清楚,還請原諒。自己去探索其中樂趣吧!
|