時(shí)間:2018-08-19 00:00:00 來源:信盈達(dá) 作者:信盈達(dá)
學(xué)習(xí)嵌入式都是先從單片機(jī)開始入門的,下面將下如何編寫第一個(gè)單片機(jī)程序。
拿最常用的51單片機(jī)說起,首先說明下單片機(jī)的最小系統(tǒng),也就是單片機(jī)可以正常工作的最基本的電路構(gòu)成。
一般的單片機(jī)的最小系統(tǒng)電路都是由3部分電路構(gòu)成:
復(fù)位電路,為了保證單片機(jī)上單后可以正常的進(jìn)入工作狀態(tài),需要復(fù)位電路。
振蕩電路,為了給單片機(jī)提供運(yùn)行的時(shí)鐘,單片機(jī)運(yùn)行需要時(shí)鐘,就想機(jī)器需要發(fā)動(dòng)機(jī)一個(gè)道理
供電電源,一般用穩(wěn)壓芯片
有個(gè)最小系統(tǒng),然后開始寫第一個(gè)程序,單片機(jī)程序主要用兩種語言寫,一種是匯編語言,一種是C語言,
匯編語言不常用,下面主要講下C語言
單片機(jī)C語言程序構(gòu)成:
啟動(dòng)程序,啟動(dòng)程序是單片機(jī)剛上電的時(shí)候最開始運(yùn)行的一段代碼,類似于電腦的開機(jī)程序。一般在建立工程時(shí)候,會(huì)自動(dòng)生成,這個(gè)不用太在意
單片機(jī)的寄存器描述文件,用來描述單片機(jī)寄存器的文件,或者說是對(duì)單片機(jī)寄存器的映射文件,一般包含在開發(fā)環(huán)境中,只需要把它的頭文件(*.h文件)加載一下就可以了。
主程序文件,就是包含main函數(shù)的文件,主程序文件在一個(gè)工程里面只能有一個(gè)。
單片機(jī)開發(fā)建立功能流程(我們使用KEIL C51)
新建一個(gè)文件夾,接著打開KEIL,鼠標(biāo)放在工程菜單下選擇新建工程,我們?nèi)⌒鹿こ堂麨門EST,然后保存到新建的文件夾下。
點(diǎn)擊target opinion 下的device,選擇對(duì)應(yīng)的單片機(jī)型號(hào)
點(diǎn)擊target opinion 下的output,勾選Create HEX File,然后點(diǎn)擊OK按鈕
新建一個(gè)文件并保存,取名為main.c
右鍵點(diǎn)擊工程框下的Source Group,選擇添加文件,將剛剛新建的main.c文件添加到工程里面。
在main.c文件里面寫入一下代碼
#include <reg52.h> void main(void) { while(1) { } } 到此一個(gè)空的工程文件就建立完成了,接著就可以在這個(gè)工程里面寫應(yīng)用程序了。 GPIO控制程序示例(每隔0.5s,P1.01管腳取反一次): main.c: #include <reg52.h> //------------------------------------------------------- //ms延時(shí)函數(shù) void Delay_xms(uint x) { uint ii,j; for(ii=x;ii>0;ii--) for(j=110;j>0;j--); } //======================================== //======主函數(shù)====== void main (void) { while(1) { P1^0=0; Delay_xms(500); P1^0=1; Delay_xms(500); } }
信盈達(dá)2008年在深圳特區(qū)南山高新科技園成立。自成立至今近九年來專注為企業(yè)和個(gè)人提供高端方案設(shè)計(jì)、高端嵌入式/Android培訓(xùn)等服務(wù)。公司下設(shè)信盈達(dá)實(shí)訓(xùn)學(xué)院、信盈達(dá)研發(fā)中心、信盈達(dá)教學(xué)儀器三大業(yè)務(wù)板塊。九年來公司堅(jiān)持"技術(shù)領(lǐng)先、服務(wù)領(lǐng)先",以雄厚的實(shí)力和專業(yè)的品質(zhì)成為國內(nèi)唯一有實(shí)力從產(chǎn)品最底層研發(fā)到系統(tǒng)層開發(fā)的嵌入式實(shí)訓(xùn)、產(chǎn)品解決方案提供商。為中國IT行業(yè)提供最具價(jià)值的職業(yè)教育服務(wù)。專業(yè)培訓(xùn)嵌入式、物聯(lián)網(wǎng)、人工智能、Java、單片機(jī)等課程,想了解更多信息點(diǎn)擊立馬咨詢
免費(fèi)領(lǐng)取試聽卡
申請(qǐng)已經(jīng)提交
老師會(huì)馬上給您安排試聽課程!
申請(qǐng)出錯(cuò)了
您可以加老師QQ:914865590報(bào)名咨詢!