新聞中心

單片機(jī)編程語(yǔ)言

作者: 時(shí)間:2016-11-26 來(lái)源:網(wǎng)絡(luò) 收藏

前言

編程語(yǔ)言也就是"計(jì)算機(jī)語(yǔ)音"。相對(duì)于PC或電腦來(lái)說(shuō),Microcontroller(微控制器,俗稱單片機(jī))編程語(yǔ)言則是嵌入式編程語(yǔ)言。由于單片機(jī)編程與硬件緊密相連,故其軟件又成為"固件(firmware)"。隨著硬件性能的提升,編程語(yǔ)言也在發(fā)生著變化。

機(jī)器語(yǔ)言

本文引用地址:http://m.butianyuan.cn/article/201611/321960.htm

早期的編程使用的是機(jī)器語(yǔ)言。需要將程序的機(jī)器指令一位一位地輸入到單片機(jī)中,或者將指令做成紙帶輸入到單片機(jī),進(jìn)行計(jì)算。

圖 1 紙帶

匯編語(yǔ)言

隨著發(fā)展,人們開(kāi)始用指令助記符替代機(jī)器語(yǔ)言,于是就有了匯編語(yǔ)言。匯編語(yǔ)言書(shū)寫(xiě)的效率大大地提高了。直到現(xiàn)在還有好多人在使用匯編語(yǔ)言進(jìn)行程序設(shè)計(jì)。

圖 2 匯編語(yǔ)言

stm8/

#include "mapping.inc"

#include "stm8s_conf.inc"

segment rom

BRES PB_DDR,#7 ;input

BSET PB_CR1,#7 ;Pull-up

BSET PB_CR2,#7;with interrupt

BSET EXTI_CR1,#2 ;01: Rising edge only

BRES EXTI_CR1,#3

LD A,#$CC

LD IWDG_KR,A

LD A,$55

LD IWDG_KR,A

LD A,$2

LD IWDG_PR,A

LD A,$FF

LD IWDG_RLR,A

MOV IWDG_KR,#$AA

……

C語(yǔ)言

為了提高代碼書(shū)寫(xiě)效率,出現(xiàn)了高級(jí)的語(yǔ)音-C語(yǔ)音。 C語(yǔ)言的出現(xiàn),使得人書(shū)寫(xiě)代碼更容易,也更容易移植到不同的平臺(tái)中。

圖 3 C語(yǔ)言

int i = 0;

unsigned char uc = 0;

unsigned long Temp;

ADC_CR1 |= 0x01;

i = 6;

while(i--);

ADC_CR1 |= 0x01;

while(!(ADC_CSR & 0x80));

AD_Value = ((((unsigned int)ADC_DRH)<<2)+ADC_DRL);

TIM2_CCR2H=0x00;

TIM2_CCR2L=(unsigned char)(AD_Value>>2);

if (AD_Value>0x10)

{

Temp=(unsigned char)(AD_Value>>8);

if ((TIM3_ARRH>Temp+0x05)||(TIM3_ARRH

{

TIM3_ARRH = Temp;

TIM3_ARRL = (unsigned char)(AD_Value&0xff);

TIM3_CCR1H = (unsigned char)(AD_Value>>9);

TIM3_CCR1L = (unsigned char)((AD_Value>>1)&0xff);

}

}

while ( uc < duration )

{

while ( i < 1200 )

{

i++;

}

i = 0;

uc++;

}

……

Arduino

Arduino是一種開(kāi)源硬件,可以讓電子愛(ài)好者很快設(shè)計(jì)出產(chǎn)品的原型來(lái)。設(shè)計(jì)趨向于簡(jiǎn)單化。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 單片機(jī)編程語(yǔ)

評(píng)論


技術(shù)專區(qū)

關(guān)閉