單片機腳本
① 使用定時器1編寫一個單片機延時函數,要求延時10s左右後,點亮2.6控制的LED燈
時鍾周期:
1/時鍾源,在我現在這塊板子上,晶振頻率是11.0592M,也就是時鍾周期是 1/11059200秒
機器周期:
一般51單片機是12個時鍾周期,我的板子也就是 12/11059200秒
單次定時最長時間:
如果是16位的計數器,16位最大值是65535,共可計數65536次。基本的常數一定要記住,還要記住8位最大值是255,共可計數256次,還要記住8位上每位代表的數值。
12 * 65536/11059200 = 0.0711 s,也就是,71 ms內的定時可以單次定時就完成。如果定時時間超過71 ms,就要循環了。
一次定時需要幾次機器周期:
計算公式:定時秒數/機器周期
比如我要定時1秒, 1/(12/11059200)= 921600次,16位計數器最大可計數65536次,921600次早就益出了。我們可以每次定時10 ms,循環100次就可以定時1秒了,1 s縮小100百倍就是10 ms, 也就是每次需要計數9216次。
確實計數器初始值:
定時10 ms時,如果計數器從0開始計數,我們就不知道什麼時候到了9216次。所以應該計數了9216次,16位計數器最多計數95536次,然後就溢出,一溢出TCON的TF位就會置1,我們只要經常檢測TF位就可以知道什麼時候完成10ms的定時了。
計算公式:計數器初始值=最大計數次數 - 需要計數次數
如果定時10 ms,計數器的初始值就是 65536 - 9216
計算計數器的高位和低位:
16位的計數器,也就是兩個8位組成,8位的最大計數次數是256。所以:
計數器高位 = 初始值/256
計數器低位 = 初始值%256
② 單片機應用程序的開發步驟
具體步驟如下:
1、首先,開啟我們的keil軟體,具體的安裝步驟就不做太多的介紹了;
開啟後,點擊菜單欄上的Project選項,創建我們的工程,如圖所示;
編譯完成後,在我們的文件夾下找到.hex的文件,將其燒寫到我們的晶元中即可。
③ javascript可以寫單片機么
js只是web程序用的腳本。只有瀏覽器才帶有解釋引擎。而單片必須要匯編語言才可以。這完全是風馬牛不相及的兩種語言
④ 有用於單片機程序開發的解釋型語言(腳本語言)嗎
單片機變成現在已經很簡單了,用C可以搞定。
不過單片機要實現復雜的功能的,需要考慮的因素很多很多,這點和游戲不同,游戲的流程是簡單的向下發展的,用腳本很容易實現,單片機屬於復雜程序處理范疇,簡單的功能可以像你說的用腳本實現,稍微難一點的就不行了,因為還需要和硬體還有具體功能配合好。
我用過的一款iccavr編譯器,支持圖形界面設置單片機的一些簡單參數,自動編程,不過真正執行的程序還得自己用C編,沒辦法,細節太多,之間的關系也太多,腳本做不來的。