|
Basic語言已經(jīng)發(fā)展到QuickBASIC以后,已經(jīng)具備了很多結(jié)構(gòu)化思想和編程方式,如函數(shù)、模塊、局部變量、全局變量、數(shù)據(jù)傳遞等。 早期的BASIC語言由于生成的代碼不是最終目標(biāo)機器的代碼,而是經(jīng)過一個RNUTIME程序解釋后運行的,因而執(zhí)行效率低。而單片機的BASIC編譯器直接將代碼編譯成相應(yīng)芯片的機器碼,不需要在單片機的內(nèi)存中駐留RNUTIME程序,執(zhí)行效率與其他編譯器編譯出來的一樣。 MCS Electronics公司開發(fā)的BASCOM-8051開發(fā)環(huán)境是以Basic語言為基礎(chǔ)的單片機編程系統(tǒng),具有易學(xué)易用、功能強大、開發(fā)周期短等特點。 一、命令分類 1.偽指令 偽指令是一些對開發(fā)環(huán)境的設(shè)置指令,如:$Large 是說明應(yīng)用程序大于2K;$asm~$end asm 是使用匯編語言;$crystal 是說明單片機應(yīng)用系統(tǒng)中的時鐘頻率等等。 2.一般命令 這一類命令和Basic 語言中的命令用法、功能是一樣的。如:for to step、if else endif、WHILE……WEND SELECT CASE等。初學(xué)者十分容易掌握。 3.針對單片機硬件的命令 主要提供了直接對單片機及其外部硬件的操作,簡化了開發(fā)過程,是開發(fā)人員重點學(xué)習(xí)的部分。如:LCD 命令可以用一條命令來實現(xiàn)LCD 的操作。 Cls ;清LCD 屏 Lcd“Hello world.” ;向LCD輸入字符串 還有對I2C存儲器的專用命令,如:12Cstart、12Cstop、12Crbyte、12Cwbyte等。 最重要的是提供了對單片機端口的直接操作,如:P1、P2、P2.1、P0.3等等。 二、應(yīng)用例程 1 閃爍的LED 線路連接:LED接下8051的P1.1口,并加一只1左右的電阻。 目的:LED間隔一秒鐘閃爍一次。 源程序: While I=1 ;一直循環(huán) P1.1=Not P1.1 ;使P1.1口狀態(tài)反轉(zhuǎn),實現(xiàn)LED閃爍 Wait I ;等待一秒 WEND End ;結(jié)束程序 2 串口通信 線路連接:8051串口接MAX232,再接到PC機串行口. 目的:接受PC數(shù)據(jù),并返回. 源程序: $band=1200 ;定義串口為1200b/s $crystal=12000000 ;8051主頻12MHZ Dim S As String * 8 ;定義一個字符串變量 Input"輸入姓氏", S ;從串口接受數(shù)據(jù) Print "你好!", S ;發(fā)送數(shù)據(jù)到串口 End ;程序結(jié)束 |