導航:首頁 > 操作系統 > 單片機的運動控制編程用什麼軟體

單片機的運動控制編程用什麼軟體

發布時間:2022-10-21 22:24:29

① 51單片機, 編一個控制步進電機轉動的程序。

#include <reg51.h> //51晶元管腳定義頭文件
#include <intrins.h>//內部包含延時函數 _nop_();

#define uchar unsigned char
#define uint unsigned int

uchar code FFW[8]={0xf1,0xf3,0xf2,0xf6,0xf4,0xfc,0xf8,0xf9};
uchar code REV[8]={0xf9,0xf8,0xfc,0xf4,0xf6,0xf2,0xf3,0xf1};

/********************************************************/
/*
/* 延時t毫秒
/* 11.0592MHz時鍾,延時約1ms
/*
/********************************************************/
void delay(uint t)
{
uint k;
while(t--)
{
for(k=0; k<125; k++)
{ }
}
}
/********************************************************/
/*
/*步進電機正轉
/*
/********************************************************/
void motor_ffw(uint n)
{
uchar i;
uint j;
for (j=0; j<12*n; j++) //轉1×n圈
{
for (i=0; i<8; i++) //一個周期轉30度
{
P1 = FFW[i]; //取數據
delay(15); //調節轉速
}
}
}
/********************************************************/
/*
/*步進電機反轉
/*
/********************************************************/
void motor_rev(uint n)
{
uchar i;
uint j;
for (j=0; j<12*n; j++) //轉1×n圈
{
for (i=0; i<8; i++) //一個周期轉30度
{
P1 = REV[i]; //取數據
delay(15); //調節轉速
}
}
}
/********************************************************
*
* 主程序
*
*********************************************************/

main()
{
while(1)
{
motor_ffw(5); //電機正轉
delay(5000); //換向延時
//motor_rev(5); //電機反轉
//delay(1000); //換向延時
}
}

/********************************************************/

② 各位親們,有誰做的畢業設計是(基於單片機的車削數控運動控制)啊,或者差不多的論題也行啊。

基於單片機的儀表車床簡易數控系統的實現
第2章 數控系統的設計要求
2.1概述
該數控系統是為了適應國內眾多的普通機床改造而設計的主要考慮四個方面:
①經濟性
既然是用於普通機床的數控化改造,因此,必須充分考慮系統的成本,這是保證達到系統設計目的的關鍵。這里的成本包括整個系統的成本,包括數控系統、伺服驅動系統及機械傳動系統等,其核心在於數控系統的方案選擇。
②方便性
數控系統的方便性,又叫「宜人性」,主要反映在系統的編輯部分。編輯(編程)部分是人和系統直接打交道的部分,即所謂的「人機界面」。人機界而應當對用戶友好,也就是說編輯(編程)部分應當盡量給用戶提供力便、快捷舒適的操作使用環境。系統需從以下幾個途徑來體現:
●漢化按鍵,方便各種層次的操作者使用。
●輸入、檢索、修改盡量一體化。即輸入時可以檢索、修改,檢索時可以修改、輸入,並且自動顯示程序段號。
●快速檢索,即能對程序進行上下翻頁顯示。
③實用性
經濟則數控系統的設計不應追求功能的大而全,應以實用為原則。一般的機械加工只要能具有以下功能即可滿足需要:
●直線、圓弧插補。插補速度要充分考慮被機床本身的內在素質,如剛性、抗震性、耐磨性等,不宜過高。
●速度銜接技術,即速度升/降速控制。速度銜接技術可以保證系統在加工過程中實現2段程序間的速度平滑連接,從而避免造成加工刀痕或平台,保證精度。
●動態坐標顯示。
●加工程序的掉電保護能力。
●電動刀架控制。採用電動刀架,用軟體進行控制,可以提高生產效率。
●細分技術。細分技術是當今經濟型數控系統的一項重要技術。它可以有效解決步近電機的低頻振盪問題,同時使機床脈沖當量細化,提高控制精度;另外,還可以提高低速加工時的出刀。
④可靠性
由於數控系統工作環境十分惡劣,必須有足夠的可靠性才能保證系統穩定運行。
2.2數控系統的性能指標
按照廣述設計要求及設想,數控系統的性能指標可歸納為:
●X,Z兩軸聯動,開環控制方式。
●ISO國際數控標准格式代碼編程。
●快速定位。
●具有直線、圓弧插補能力。
●能與上價機串列通信、具有簡單的聯網能力。
●最大編程尺寸9999.99mm,z軸脈沖當量0.01mm,x軸脈沖當量0.005mm,最大進給速度為0.083m/s(5m/min)。
●預留螺紋加工功能的介面。
●具有連動、點動2種手動加工方式,以及自動連續加工方式。
第3章 總體方案的確定
3.1系統總體方案
本系統在研製過程中,緊緊圍繞可靠性、方便性、低成本等設計要求。確定總體方案如下:
3.1.1基於單片機的系統結構
按照上述設計思想,本系統採用基於單片機的系統結構。這種方案結構簡單,成本低。考慮到擴展性,主系統採用89S58單片機。AT89S51是一個低功耗,高性能CMOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件採用ATMEL公司的高密度、非易失性存儲技術製造,兼容標准MCS-51指令系統及80C51引腳結構,晶元內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應用系統提供高性價比的解決方案。
1.一個個8位的CPU
2、26個特殊功能寄存器(Special Function Register)
3、一個片內振盪器及時鍾電路
4、全靜態工作:0Hz-24KHz
5、32條可編程I/O線
6、2個16位可編程定時計數器
7、5個中斷優先順序2層中斷嵌套中斷
8、2個全雙工串列通信口
9、電源控制模式:低功耗的閑置和掉電模式
10、8031 CPU與MCS-51 兼容
11、4個8位並行(Parallel)I/O口
12、三級程序存儲器保密鎖定
13、128B 內部RAM
14、內部硬體看門狗電路
15、4k Bytes Flash片內程序存儲器(壽命:1000寫/擦循環)
16、一個SPI串列介面,用於晶元的在系統編程
17、可定址64KB的外部ROM和外部RAM的控制電路
這些我們稱為單片機的資源(Souce),單片機的應用就是怎麼充分合理地利用這些資源,來解決實際中的問題
3.1.2人機界面
(1)採用液晶顯示界面
作為一個簡易型數控系統,採用了12232漢字圖形點陣液晶顯示模塊,帶背光字元型液晶模塊作為主顯示界面,不採用數碼管顯示。這樣做的目的有3個:
●液晶顯示方式具有顯示容量大、可以顯示所有字元及自定義字元的能力。至於不能顯示圖形以實現加工曲線動態顯示的缺陷,可以通過上儀機模擬模擬加工來彌補。
●液晶顯示模塊自身具有控制器,可以減輕主CPU的負擔。
●使系統具有菜單驅動的基本素質。採用菜單驅功方式實現編輯模塊的全屏幕編輯功能,達到友好的人機界面要求。
●可顯示漢字和圖形。
(2)採用雙功能按鍵設計,簡化鍵盤
系統設計中充分考慮功能的需要、操作方便的需要及系統復雜性的要求三者之間的關系確定系統的大多數按鍵為雙功能鍵,使得整個系統界面簡潔。
3.1.3採用開環控制方式
系統設計的目的決定了系統只能採用開環控制方式。在開環型位置控制系統中,只能採用步進電機作為伺服執行單元。這是由步進電機車身的特性決定的。關於步進電機的特性等詳細內容參見本章後續有關章節。
開環控制系統的數控機床結構簡單,成本較低,僅適用於加工精度要求不很高的中小型數控機床,特別是簡易經濟型數控機床。
這類系統比較簡單,價格最便宜,可以用於小型車床、銑床、鑽床和線切割機床。如下圖是常見的兩坐標簡易數控系統的組成框圖。系統軟體固化在單片機的存儲器中,加工程序可通過鍵盤或磁帶機輸入,經系統軟體進行編輯處理後輸出一個系列脈沖,再經光電隔離,功率放大後大驅動兩台步進電機,分別控制機床兩個方向的運動,完成位置、軌跡和速度的控制。根據需要,微機還可通過繼電器電路,實現對諸如主軸起停、變速、各種輔助電機起停、刀架轉位、工件爽緊松開等動作的自動控制,使整個加工過程自動進行。

圖3-1開環步進電機與單片機連接電路
單片機控制步進電機拖動的開環系統具有價廉,技術成熟等優點,因而使用較多。但這種系統還存在拖動力矩偏小,過載能力差、速度偏低,精度不夠高及其價格隨力矩增加成指數卜升等缺點。為此,選用時要注意在適當的范圍內發揮其優勢。一般主要適用於拖動力矩小於15Nm的小型機床,如C616,C618,C620,C6140等普通車床。對於轉矩要求大、功能要求多的機床(如銑床、鏜床、鑽床及鏜銑床)和高精度機床(如坐標鏜床)就難於使用,需要開發與其適應的其他經濟型數控系統。
3.1.4功能精簡,提高可靠性
設計具備簡易型數控系統必需的基本功能
●直線、圓弧插補能力。
●端面、台階的循環加工。
●點動、連動、自動3種運行方式。
●申行通信能力。
3.2系統功能模塊及其分析
3.2.1系統功能模塊與總體框架
(1)系統操作界面
按照上述

圖3-2 系統的人機界面圖
復位——系統在死機、工作出錯等情況下的總清鍵,使系統回復設計的原始狀態。
運行——自動運行用戶的零件加工程序,包括程序的語法檢查、數據處理、編譯、插補運算及步進電機控制等。
暫停一—自動加工的暫停,是一個乒乓鍵,按一次,加工暫停,再按一次,繼續加工。
換刀一—用於手工換刀,每按一次.電動刀架轉一個工位,本系統中為90度。
手動——與「←、↑、→、↓」配合,以實現動作台的連動;在編輯程序時為游標移動鍵。數字1—9均為雙功能鍵、用於程序輸入、用「上下檔」鍵進行切換。
G—一準備功能鍵,用於ISO加工程序輸入。
M——輔助功能鍵,用於冷卻泵的啟/停、程序的結束等程序段的輸入。
插入—一用於程序編輯過程中「插入修改」方式的切換。也是乒乓鍵,用塊游標或下劃線游標指示。
刪除——在插入方式下,刪除當前的字元;在修改方式下,刪除當前游標位置字元。
上頁一—程序上翻到上一程序段。相當PC機的PageUp鍵。
下頁——程序下翻到下一程序段。與上頁鍵一樣是一個屏幕編輯鍵。相當PC機的PageDown鍵。
回車——確認鍵。
Esc——相當於PC機的Esc鍵。
(2)系統功能模塊與總體框架
系統從總體上分為人機界面模塊、伺服執行模塊、電動刀架擰制模塊、串列通信模塊及基於AT89S51單片機的主控模塊等5大模塊,參見圖3-2。各模塊的功能分別是:

圖3-3 系統模塊與總體框架
①人機界面模塊
該模塊主要完成人機的對話與交流,物理上表現為顯示器與鍵盤,核心功能是加工程序的編輯。由於採用全程菜單驅動形式.使該模塊具有較好的友善性。
②伺服執行模塊
該模塊主要由脈沖分配器、伺服驅動及步進電機等組成,是一個執行單元,按照主機的指令完成工作台與刀具的相對運動,實現車削加工。其速度特性、矩頻特性等直接影響加工的精度和速度。
③電動刀架控制模塊
採用2繼電器方式的4方電動刀架.用軟體完成刀架的換刀動作,即刀架電機的正轉拾刀→換刀→反轉鎖緊,是經濟型數控系統必不可少的部分,可以提高加工效率,大大減少在加工過程中因手工換刀帶來的誤差。
④串列通信模塊
該模塊的功能是完成與上位機的串列通信,採用三線制方式,使系統具有基本的組網能力。
⑤主控模塊
主要包括零片微處理器(也括監控程序)、加工程序存儲單元及與其他模塊的介面電路要完成程序編輯、加工程序處理、軟體插補達貿、電動刀架餃制及行程限位保護等。
3.2.2系統軟體框架
如圖3-4展示了系統軟體框圖。系統上電後,執行初始化程序、鍵盤掃描程序。如有「計數顯示」、「計數清零」、「點動」等功能鍵按下,執行其各自的工作子程序後返回初始化程序,並顯示其相應的提示符。順序控製程序也設計成子程序模塊,它的主要功能是讀入各行程開關及壓力繼電器的信號狀態組合,經分析判斷,輸出一系列控制信號,完成對工件的自動加工。如按下「點動」鍵,則顯示點動提示符,執行順序控製程序,即返回初始化程序,如按下「連動」功能鍵,則首先置連動工作標記(此時,除「返回」鍵外,其餘各鍵均用軟體屏蔽),然後開中斷,等待,刀具檢測信號,收到中斷請求信號後,執行中斷服務程序。在中斷服務控制中,先後執行順序控制子程序,鍵盤掃描及顯示子程序,並記錄和顯示數據。完成一次順序控制或有「返回」鍵按下,則返回主程序。回到主程序後,仍判斷是否有「返回」鍵按下,如有,則返回初始化程序。否則,重新等待中斷。
採用模塊化設計:
①點動,連動,換刀
該模塊主要實現工作台在x,z兩軸上正、反2個方向的點動、連動操作,以及手動控制換刀等,用於方便對刀、工作原點設置等。
②自動
該模塊主要實現加工程序的處理(包括程序語法檢查、程序編譯、數據處理等)、插補運算步進電機的控制及自動換刀控制等。
③參數設置
該模塊主要實現刀具補償參數設置、間隙補償參數設置等自動加工參數的設置。
④編輯模塊
該模塊主要實現零件加工程序的鍵盤編輯、輸入。
⑤通信模塊
該模塊主要實現與上位機或其他智能設備的串列通信,可用於加工程序的傳送等。

圖3-4 系統軟體原理框圖
第4章 硬體系統設計
4.1主模塊設計
4.1.1主模塊中關鍵器件及其選型
(1)單片機
本系統採用PHILIPS公司的8位單片機AT89S51為控制核心。AT89S51是一個低功耗,高性能CMOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件採用ATMEL公司的高密度、非易失性存儲技術製造,兼容標准MCS-51指令系統及80C51引腳結構,晶元內集成了通用8位中央處理器和ISP Flash存儲單元,全靜態工作,RAM可擴展到64K位元組,5個中斷優先順序,2層中斷嵌套中斷,32個外部雙向輸入/輸出(I/O)口,2個16位可編程定時計數器。外接一片2764EPROM,作為監控程序的程序存儲器和存放常用零件的加工程序。再選用一片6264RAM用於存放需要隨機修改的零件程序、工作參數。採用解碼法對擴展晶元進行定址,採用74LS138解碼器完成此功能。8279作為系統的輸入輸出口擴展,分別接鍵盤的輸入、輸出顯示,8255接步進電機的環形分配器,分別並行控制X軸和Z軸的步進電機。另外,還要考慮機床與單片機之間的光電隔離,功率放大電路等.

圖4-1單片機系統原理框圖
(2)數據存儲器的選用
系統採用單片機作為控制核心,最高速度為33MHz,我們用到22.1184MHz。速度高對外部電路特別是外部數據,程序存儲器擴展電路要求很高。必須滿足在CPU讀數據或程序指令時,外部數據或程序指令已准備好了。所以必須進行晶元的時序校驗。為了使系統工作可靠我們也進行存儲器的校驗。
首先,對存儲器作一介紹。單片機存儲器分為內部存儲器和外部存儲器,內部存儲器又分為內部數據存儲器和程序存儲器,同樣,外部存儲器也分為程序和數據存儲器。本系統採用AT89S51為核心單元,其本身帶有128B的RAM和4KB的Flash內部程序存儲器。對於數據存儲器,內外兩部分是獨立編址的,用不同指令來訪問不同的數據存儲器,即,MOV訪問片內,MOVC訪問片外,外部可擴展到64K,由於在外部數據存儲器和I/0是統一編址的,應給I/0留一定的空間,且本系統要求留有一定的擴展空間,所以本系統擴展採用的晶元是6264。Y62256是HUNDAI公司的一種高速低功耗32K的
CMOS的靜態RAM,採用現代公司的高速CMOS工藝技術。HY62265具有數據保持模式,以確保在最低供電電壓下2V數據有效。使用CMOS技術,電源電壓在2.OV~5.5V之間,數據保持電流幾乎沒有影響。HY62256適合使用在低壓和電池供電工作環境。M28256用於擴展程序存儲器,是一種採用ST微電子公司擁有知識產權的多極性硅技術製造的。在3V或}V供電條件下具有快諫低功耗工作模式。電路已被設計成可提供與微控制器柔性介面特徵。可使用軟體或硬體進行數據循環測試或位功能鎖定。可以使用標準的JEDEG運演算法則進行軟體數據保護。電路擴展如圖4-2所示。

圖4-2 存儲器擴展
(3)匯流排驅動、數據、地址鎖存及解碼電路
由於單片機的數據線和低位地址線共用必須加地址鎖存器進行低位地址鎖存。使用74LS373作為地址鎖存器,當應用系統規模過大,擴展所接晶元過多,超過匯流排的驅動能力時,系統將不能可靠工作,此時應加用匯流排驅動器來減少讀數據的持續時間。整個系統可擴展的外部數據總共為64K,由於單片機外部數據存貯器和工/0是統一編址的,我們將低32K作為外部擴展的數據存儲器,高解碼電路採用兩片74LS138,用了32K作為I/0使用或留給以後擴展用。由於外設使可編程器件,所以在使用138作解碼時需要產生兩種解碼地址:一種是地址連續,一種是段地址連續。其中Ll,L5可作為系統再次擴展時用。解碼地址輸出在圖4-3中已給出,Y0-Y7作為單地址晶元片選信號,Y8-Y15可作為可編程晶元片選信號,如8254可編程計數器。解碼電路如圖4-3.

圖4-3解碼電路
4.1.2主模塊電原理圖設計
本系統選用AT89S51CPU作為數控系統的中央處理機。主程序框圖如圖4-4。外接一片2764EPROM,作為監控程序的程序存儲器和存放常用零件的加工程序。再選用一片6264RAM用於存放需要隨機修改的零件程序、工作參數。採用解碼法對擴展晶元進行定址,採用74LS138解碼器完成此功能。8279作為系統的輸入輸出口擴展,分別接鍵盤的輸入、輸出顯示,8255接步進電機的環形分配器,分別並行控制X軸和Z軸的步進電機。另外,還要考慮機床與單片機之間的光電隔離,功率放大電路等。
8255A可編程並行I/O口擴展晶元可以直接與MCS系列單片機系統匯流排連接,它具有三個8位的並行I/O口,具有三種工作方式,通過編程能夠方便地採用無條件傳送、查詢傳送或中斷傳送方式完成CPU與外圍設備之間的信息交換。
CPU對8279的控制是先讀回8279的狀態字,查看PIFORAM中有無字元 ,若有將根據字元個數讀出所有字元,並進行相應處理;若無,則直接返回。CPU對8279的監視採用查詢方式,對8279分配的數據口地址為8000H,狀態口地址為8001H,CPU每隔10ms定時中斷查詢一次,所有顯示採用查詢段碼表的方式實現,簡化了程序設計過程,提高了程序質量。

圖4-4主程序框圖
4.2輸入/輸出模塊設計
4.2.1 I/O模塊電原理圖設計
8279作為系統的輸入輸出口擴展,分別接鍵盤的輸入、輸出顯示。8279是可編程介面晶元,通過編程使其實現相應的功能,編程的過程實際上就是CPU向8279發送控制指令的過程。在軟體設計中,顯示方式採用了8個字元顯示,左入方式,編碼掃描鍵盤,雙鍵鎖定。I/O模塊電原理圖如圖4-5所示。
圖4-5 I/O模塊電原理圖

圖4-6 8279工作程序框圖
4.2.2步進電機控制介面
X,Z兩軸採用3相6拍步進電機,並口8255向控制埠寫控制字,PUSLE來實現對步進電機的控制。8255接步進電機的環形分配器,通過3片4N25光電隔離,分別形成X、Z所需的3相控制信號,送往步進電機驅動電源,分別並行控制X軸和Z軸的步進電機。晶元YB013實現硬體環分任務,;達林頓光隔離管4N25實現計算機弱點部分和步進電機強電部分的隔離,既起功率放大作用,又充當無觸點開關,實現對計算機的保護。單片機控制步進電機連接如圖4-7所示。

圖4-7 單片機控制步進電機
4.2.3刀具控制介面
(1)電動刀架及其工作原理
電動刀架的機械部分類似於蝸輪機構,實現刀具的抬升、旋轉(交換刀具位置)及下降鎖緊,這里著重討論實現上述動作所必須的硬體條件和電路原理。
在圖4-8中,繼電器KA1,KA2實現電動刀架的動作切換控制,主要完成刀架電機的正、反轉切換。在刀架旋轉過程中,每個工位上的霍爾元件會依次切換為有效狀態,系統根據T1,T2,T3及T4狀態的變化,可以推斷出目前的刀號,並判斷是否為當前所選用刀具,一旦符合,則電機反向旋轉,鎖緊刀具。電動刀架各時序的切換反間隔是系統控制的關鍵,反向鎖緊所用時間取決於電動刀架生產廠家的推薦指標,過長會引起電機發熱甚至燒毀。為保證電動刀架安全運行,在電動刀架交流380V進線處加裝快速熔斷器和熱繼電器。

圖4-8電動刀架的電原理圖
(2)電動刀架與單片機的介面
電動刀架與系統的硬體介面主要是控制電機正、反轉信號J1,J2及刀號反饋信號TI,T2,T3和T4。上述信號均光電隔離後與單片機系統介面。
電動刀架軟體控制流程如圖4-9所示,採用查詢方式。

圖4-9電動刀架控制流程
程序為:
#include <AT89S51.h>
#include <absacc.h>
#define N1 XBYTE[ ]
typedef unsigned char uchar
void adc0809(uchar idata *x);
void delay();
void main()
{
static uchar idata ad[4];
adc0809(ad);
}
void adc0809(uchar idata *x)
{
uchar i,*ad_adr;
uchar motor=1;
ad_adr=&N1;
for(i=0;i<4;i++)
{
If(*ad_adr=i)
{
delay1( );
KA1=1;
delay2( );
return();
}
else KA1=0
}
}
void delay1(motor==0)
{
uchar j;
for(j=0;j<20000;j++)
{;}
}
void delay2(void)
{
uchar j;
for(j=0;j<150000;j++)
{;}
}
4.2.4急停、暫停、行程限位介面電路
限位開關為常開狀態;因此,X十,X一,Z十,Z一正常輸人為低電平狀態。因此如果行程開關被壓合,向INT0發出中斷信號,系統進行復位,步進電機的脈沖消失,也就無法繼續前行,起到保護機床的目的。本系統採用三輸入端與非門74HC10的輸出端作為一個共用的中斷信號接至單片機的INT0,用於實時處理緊急停車、暫停、限位報警功能。電路如圖4-8所示:

4.3串列通信電路
本系統由兩部分構成,上位機系統和下位機系統,由於上位機主要完成管理顯示等工作,下位機完成控制功能,所以上位機和下位機的數據傳輸實時性要求不高,我們採用串口通信。使用RS232標准,MAX232進行電頻的轉換。串口RS232標准,它是美國電子工業協會(Electronic Instry Association)的推薦標准。本系統採用9針連接器,其定義見表4-1。本系統採用三線制TXD,RXD,GND連接,以使電路簡單。
表4-1 連接器定義表

串口通訊電路主要由MAX 232電平轉換電路構成。MAX232是MAXIM公司產品,一種電平轉換晶元。可以將TTL轉換成RS232,或RS232轉換成TTL。滿足單片機和普通計算機的通訊電平轉換要求。電路如圖4-10所示。

圖4-10 通信介面電路
4.4人機界面模塊設計
4.4.1單片機應用系統中常用顯示方式及其比較
在單片機應用系統中,目前比較常用的顯示介質有數碼管(LED)、液晶顯示(LCD)及CRT等,在家用電器中用的比較多的是真空熒光屏(VFD)。現就各自特點簡述如下:
(1)數碼管
數碼管是一種主動發光器件。所謂主動發光.是指環境越暗越清晰。分為7段數碼管和「米」字數碼管2種。前者用於顯示ARCⅡ碼,顯示信息量小;後者除了可顯示ARCⅡ字元外,還可顯示一些自定義的比較復雜的字元。數碼管按驅動電流分,又可分為普通亮度、高亮、超高亮等。數碼管由於其廉價而且擴展方便等特性,—直是單片機系統中用得最多、最廣的一種顯示器件。國內有不少型號的數控系統、尤其是早期的數控系統,廣泛採用數碼管作為顯示界面。
(2)液晶顯示
液晶顯示器是一種被動發光器件。所謂被動發光,是指環境越亮越清晰,黑暗環境下必須加入背光才能清晰顯示。分為欄位型液晶顯示器、字元型液晶顯示器及圖形點陣液晶顯示器。欄位型只能顯示ASCII字元,字元型可以顯示ASCII字元,顯示效果比欄位型好,而且可以顯示少量的自定義字元;圖形點陣液晶顯示器是目前在單片機系統中比較流行的新型顯示器件,可以顯示所有字元及圖形,由於其可以顯示漢字的特性,被廣泛用於國內智能設備中,國內的數控系統也開始廣泛採用。
(3)CRT
CRT顯示器分為單色和彩色2種,在數控系統中,尤其是高檔數控系統中應用日益廣泛。其特點是成本低、顯示容量大;可以顯示所合字元、圖形及漢字;採用視頻專用介面電路MC6847等與單片機介面,比較復雜,因而在—般的應用中比較少見。
(4)真空熒光屏
真空熒光屏簡稱VFD(vacuunm fluorescent display mole),是一種新型的顯示器件。它由3個基本電極——陰極(燈絲)、陽極及柵做封裝在一個真空的玻璃容器內構成。陰極是塗敷了金屬氧化物的鎢絲;柵極是極細的金屬網;陽極為段或點陣型的導電電極,它上面的熒光物質可顯示相應的字元或符號。柵極和陽極之間加有正電壓,從陰極發射出來的電子被這個正電壓加速,碰擅到陽極表面的熒光物質產生輻射,發出波長為505nm左右的談綠色熒光。通過按制柵極和陽極之間的電壓,就可以顯示各種字元。VFD由於其以下特點而被廣泛應用於家用電器、商場POS機以及新型的儀器儀表中。①亮度高,並且不存在視角問題,②工作溫度范圍寬、壽命長;②外圍電路簡單,只需十5v電源就可以工作,提供准8位數據匯流排介面;④功耗低。但這種顯示器目前用在數控系統上還比較少。
4.4.2點陣液晶顯示模塊
(1)字元型液晶顯示模塊
本數控系統採用字元點陣液晶顯示模塊DM12232。該模塊具有以下特點:
●能顯示122列32行
●電源VDD3.3V~5V(內置升壓電路,無需負壓)
●與微處理器接8位或4位並行/ 3位串列
●多種軟體功能:自定義字元、畫面移動、游標顯示、睡眠模式等功能
●配置LED背光

③ 怎麼學習能控制機械運動的單片機。

開始學習很多都是選擇AT89C51或是52入門。首先得對單片機有興趣。去網上搜索郭天祥老師的視頻教程,我是都學習了一遍的,講得很好,然後按照視頻里講的,下載一些相關編程軟體和電路模擬軟體,跟著教程練習,學下來單片機的基本內容就算掌握了。紙質教材嘛,大學時計科系,機電系用的那本教材就不錯,具體書名時隔幾年到忘了,網上搜一下吧,有條件的就去網購一塊單片機開發板,畢竟實踐出真知。我的體會是,要想學的更好,在初步掌握單片機後把基礎的模電數電過幾遍看透了,同時多看一些單片機相關書籍。我覺著,單片機越學越有意思,一定程度了可以自己做東西的。
關鍵是有信心堅持走下去,祝你如願!

④ 如何用計算機控制機械的運動

http://www.pic16.com/幫你找了個網站,看看吧!
http://ke..com/view/1012.html?wtp=tt
單片機定義
單片機是指一個集成在一塊晶元上的完整計算機系統。盡管他的大部分功能集成在一塊小晶元上,但是它具有一個完整計算機所需要的大部分部件:CPU、內存、內部和外部匯流排系統,目前大部分還會具有外存。同時集成諸如通訊介面、定時器,實時時鍾等外圍設備。而現在最強大的單片機系統甚至可以將聲音、圖像、網路、復雜的輸入輸出系統集成在一塊晶元上。
單片機也被稱為微控制器(Microcontroller),是因為它最早被用在工業控制領域。單片機由晶元內僅有CPU的專用處理器發展而來。最早的設計理念是通過將大量外圍設備和CPU集成在一個晶元中,使計算機系統更小,更容易集成進復雜的而對體積要求嚴格的控制設備當中。INTEL的Z80是最早按照這種思想設計出的處理器,從此以後,單片機和專用處理器的發展便分道揚鑣。
早期的單片機都是8位或4位的。其中最成功的是INTEL的8031,因為簡單可靠而性能不錯獲得了很大的好評。此後在8031上發展出了MCS51系列單片機系統。基於這一系統的單片機系統直到現在還在廣泛使用。隨著工業控制領域要求的提高,開始出現了16位單片機,但因為性價比不理想並未得到很廣泛的應用。90年代後隨著消費電子產品大發展,單片機技術得到了巨大的提高。隨著INTEL i960系列特別是後來的ARM系列的廣泛應用,32位單片機迅速取代16位單片機的高端地位,並且進入主流市場。而傳統的8位單片機的性能也得到了飛速提高,處理能力比起80年代提高了數百倍。目前,高端的32位單片機主頻已經超過300MHz,性能直追90年代中期的專用處理器,而普通的型號出廠價格跌落至1美元,最高端的型號也只有10美元。當代單片機系統已經不再只在裸機環境下開發和使用,大量專用的嵌入式操作系統被廣泛應用在全系列的單片機上。而在作為掌上電腦和手機核心處理的高端單片機甚至可以直接使用專用的Windows和Linux操作系統。
單片機比專用處理器更適合應用於嵌入式系統,因此它得到了最多的應用。事實上單片機是世界上數量最多的計算機。現代人類生活中所用的幾乎每件電子和機械產品中都會集成有單片機。手機、電話、計算器、家用電器、電子玩具、掌上電腦以及滑鼠等電腦配件中都配有1-2部單片機。而個人電腦中也會有為數不少的單片機在工作。汽車上一般配備40多部單片機,復雜的工業控制系統上甚至可能有數百台單片機在同時工作!單片機的數量不僅遠超過PC機和其他計算的綜合,甚至比人類的數量還要多。
[編輯本段]單片機介紹

單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。
單片機內部也用和電腦功能類似的模塊,比如CPU,內存,並行匯流排,還有和硬碟作用相同的存儲器件,不同的是它的這些部件性能都相對我們的家用電腦弱很多,不過價錢也是低的,一般不超過10元即可......用它來做一些控制電器一類不是很復雜的工作足矣了。我們現在用的全自動滾筒洗衣機、排煙罩、VCD等等的家電裡面都可以看到它的身影!......它主要是作為控制部分的核心部件。
它是一種在線式實時控制計算機,在線式就是現場控制,需要的是有較強的抗干擾能力,較低的成本,這也是和離線式計算機的(比如家用PC)的主要區別。
單片機是靠程序的,並且可以修改。通過不同的程序實現不同的功能,尤其是特殊的獨特的一些功能,這是別的器件需要費很大力氣才能做到的,有些則是花大力氣也很難做到的。一個不是很復雜的功能要是用美國50年代開發的74系列,或者60年代的CD4000系列這些純硬體來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國70年代成功投放市場的系列單片機,結果就會有天壤之別!只因為單片機的通過你編寫的程序可以實現高智能,高效率,以及高可靠性!
由於單片機對成本是敏感的,所以目前占統治地位的軟體還是最低級匯編語言,它是除了二進制機器碼以上最低級的語言了,既然這么低級為什麼還要用呢?很多高級的語言已經達到了可視化編程的水平為什麼不用呢?原因很簡單,就是單片機沒有家用計算機那樣的CPU,也沒有像硬碟那樣的海量存儲設備。一個可視化高級語言編寫的小程序裡面即使只有一個按鈕,也會達到幾十K的尺寸!對於家用PC的硬碟來講沒什麼,可是對於單片機來講是不能接受的。 單片機在硬體資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計算機上的操作系統和應用軟體拿到家用PC上來運行,家用PC的也是承受不了的。
可以說,二十世紀跨越了三個「電」的時代,即電氣時代、電子時代和現已進入的電腦時代。不過,這種電腦,通常是指個人計算機,簡稱PC機。它由主機、鍵盤、顯示器等組成。還有一類計算機,大多數人卻不怎麼熟悉。這種計算機就是把智能賦予各種機械的單片機(亦稱微控制器)。顧名思義,這種計算機的最小系統只用了一片集成電路,即可進行簡單運算和控制。因為它體積小,通常都藏在被控機械的「肚子」里。它在整個裝置中,起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了。現在,這種單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。各種產品一旦用上了單片機,就能起到使產品升級換代的功效,常在產品名稱前冠以形容詞——「智能型」,如智能型洗衣機等。現在有些工廠的技術人員或其它業余電子開發者搞出來的某些產品,不是電路太復雜,就是功能太簡單且極易被仿製。究其原因,可能就卡在產品未使用單片機或其它可編程邏輯器件上。
單片機歷史
單片機誕生於20世紀70年代末,經歷了SCM、MCU、SoC三大階段。
1.SCM即單片微型計算機(Single Chip Microcomputer)階段,主要是尋求最佳的單片形態嵌入式系統的最佳體系結構。「創新模式」獲得成功,奠定了SCM與通用計算機完全不同的發展道路。在開創嵌入式系統獨立發展道路上,Intel公司功不可沒。
2.MCU即微控制器(Micro Controller Unit)階段,主要的技術發展方向是:不斷擴展滿足嵌入式應用時,對象系統要求的各種外圍電路與介面電路,突顯其對象的智能化控制能力。它所涉及的領域都與對象系統相關,因此,發展MCU的重任不可避免地落在電氣、電子技術廠家。從這一角度來看,Intel逐漸淡出MCU的發展也有其客觀因素。在發展MCU方面,最著名的廠家當數Philips公司。
Philips公司以其在嵌入式應用方面的巨大優勢,將MCS-51從單片微型計算機迅速發展到微控制器。因此,當我們回顧嵌入式系統發展道路時,不要忘記Intel和Philips的歷史功績。
3.單片機是嵌入式系統的獨立發展之路,向MCU階段發展的重要因素,就是尋求應用系統在晶元上的最大化解決;因此,專用單片機的發展自然形成了SoC化趨勢。隨著微電子技術、IC設計、EDA工具的發展,基於SoC的單片機應用系統設計會有較大的發展。因此,對單片機的理解可以從單片微型計算機、單片微控制器延伸到單片應用系統。
[編輯本段]單片機的應用領域
目前單片機滲透到我們生活的各個領域,幾乎很難找到哪個領域沒有單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網路通訊與數據傳輸,工業自動化過程的實時控制和數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統,錄象機、攝象機、全自動洗衣機的控制,以及程式控制玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領域的機器人、智能儀表、醫療器械了。因此,單片機的學習、開發與應用將造就一批計算機應用與智能化控制的科學家、工程師。
單片機廣泛應用於儀器儀表、家用電器、醫用設備、航空航天、專用設備的智能化管理及過程式控制制等領域,大致可分如下幾個范疇:
1.在智能儀器儀表上的應用
單片機具有體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優點,廣泛應用於儀器儀表中,結合不同類型的感測器,可實現諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。採用單片機控制使得儀器儀表數字化、智能化、微型化,且功能比起採用電子或數字電路更加強大。例如精密的測量設備(功率計,示波器,各種分析儀)。
2.在工業控制中的應用
用單片機可以構成形式多樣的控制系統、數據採集系統。例如工廠流水線的智能化管理,電梯智能化控制、各種報警系統,與計算機聯網構成二級控制系統等。
3.在家用電器中的應用
可以這樣說,現在的家用電器基本上都採用了單片機控制,從電飯褒、洗衣機、電冰箱、空調機、彩電、其他音響視頻器材、再到電子秤量設備,五花八門,無所不在。
4.在計算機網路和通信領域中的應用
現代的單片機普遍具備通信介面,可以很方便地與計算機進行數據通信,為在計算機網路和通信設備間的應用提供了極好的物質條件,現在的通信設備基本上都實現了單片機智能控制,從手機,電話機、小型程式控制交換機、樓宇自動通信呼叫系統、列車無線通信、再到日常工作中隨處可見的行動電話,集群移動通信,無線電對講機等。
5.單片機在醫用設備領域中的應用
單片機在醫用設備中的用途亦相當廣泛,例如醫用呼吸機,各種分析儀,監護儀,超聲診斷設備及病床呼叫系統等等。
6.在各種大型電器中的模塊化應用
某些專用單片機設計用於實現特定功能,從而在各種電路中進行模塊化應用,而不要求使用人員了解其內部結構。如音樂集成單片機,看似簡單的功能,微縮在純電子晶元中(有別於磁帶機的原理),就需要復雜的類似於計算機的原理。如:音樂信號以數字的形式存於存儲器中(類似於ROM),由微控制器讀出,轉化為模擬音樂電信號(類似於音效卡)。
在大型電路中,這種模塊化應用極大地縮小了體積,簡化了電路,降低了損壞、錯誤率,也方便於更換。
此外,單片機在工商,金融,科研、教育,國防航空航天等領域都有著十分廣泛的用途。
[編輯本段]學習應中六大重要部分
單片機學習應中的六大重要部分

一、匯流排:我們知道,一個電路總是由元器件通過電線連接而成的,在模擬電路中,連線並不成為一個問題,因為各器件間一般是串列關系,各器件之間的連線並不很多,但計算機電路卻不一樣,它是以微處理器為核心,各器件都要與微處理器相連,各器件之間的工作必須相互協調,所以就需要的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨連線,則線的數量將多得驚人,所以在微處理機中引入了匯流排的概念,各個器件共同享用連線,所有器件的8根數據線全部接到8根公用的線上,即相當於各個器件並聯起來,但僅這樣還不行,如果有兩個器件同時送出數據,一個為0,一個為1,那麼,接收方接收到的究竟是什麼呢?這種情況是不允許的,所以要通過控制線進行控制,使器件分時工作,任何時候只能有一個器件發送數據(可以有多個器件同時接收)。器件的數據線也就被稱為數據匯流排,器件所有的控制線被稱為控制匯流排。在單片機內部或者外部存儲器及其它器件中有存儲單元,這些存儲單元要被分配地址,才能使用,分配地址當然也是以電信號的形式給出的,由於存儲單元比較多,所以,用於地址分配的線也較多,這些線被稱為地址匯流排。
二、數據、地址、指令:之所以將這三者放在一起,是因為這三者的本質都是一樣的——數字,或者說都是一串『0』和『1』組成的序列。換言之,地址、指令也都是數據。指令:由單片機晶元的設計者規定的一種數字,它與我們常用的指令助記符有著嚴格的一一對應關系,不可以由單片機的開發者更改。地址:是尋找單片機內部、外部的存儲單元、輸入輸出口的依據,內部單元的地址值已由晶元設計者規定好,不可更改,外部的單元可以由單片機開發者自行決定,但有一些地址單元是一定要有的(詳見程序的執行過程)。數據:這是由微處理機處理的對象,在各種不同的應用電路中各不相同,一般而言,被處理的數據可能有這么幾種情況:
1•地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。
2•方式字或控制字(如MOV TMOD,#3),3即是控制字。
3•常數(如MOV TH0,#10H)10H即定時常數。
4•實際輸出值(如P1口接彩燈,要燈全亮,則執行指令:MOV P1,#0FFH,要燈全暗,則執行指令:MOV P1,#00H)這里0FFH和00H都是實際輸出值。又如用於LED的字形碼,也是實際輸出的值。
理解了地址、指令的本質,就不難理解程序運行過程中為什麼會跑飛,會把數據當成指令來執行了。
三、P0口、P2口和P3的第二功能用法:初學時往往對P0口、P2口和P3口的第二功能用法迷惑不解,認為第二功能和原功能之間要有一個切換的過程,或者說要有一條指令,事實上,各埠的第二功能完全是自動的,不需要用指令來轉換。如P3.6、P3.7分別是WR、RD信號,當微片理機外接RAM或有外部I/O口時,它們被用作第二功能,不能作為通用I/O口使用,只要一微處理機一執行到MOVX指令,就會有相應的信號從P3.6或P3.7送出,不需要事先用指令說明。事實上『不能作為通用I/O口使用』也並不是『不能』而是(使用者)『不會』將其作為通用I/O口使用。你完全可以在指令中按排一條SETB P3.7的指令,並且當單片機執行到這條指令時,也會使P3.7變為高電平,但使用者不會這么去做,因為這通常這會導致系統的崩潰。
四、程序的執行過程: 單片機在通電復位後8051內的程序計數器(PC)中的值為『0000』,所以程序總是從『0000』單元開始執行,也就是說:在系統的ROM中一定要存在『0000』這個單元,並且在『0000』單元中存放的一定是一條指令。
五、堆棧: 堆棧是一個區域,是用來存放數據的,這個區域本身沒有任何特殊之處,就是內部RAM的一部份,特殊的是它存放和取用數據的方式,即所謂的『先進後出,後進先出』,並且堆棧有特殊的數據傳輸指令,即『PUSH』和『POP』,有一個特殊的專為其服務的單元,即堆棧指針SP,每當執一次PUSH指令時,SP就(在原來值的基礎上)自動加1,每當執行一次POP指令,SP就(在原來值的基礎上)自動減1。由於SP中的值可以用指令加以改變,所以只要在程序開始階段更改了SP的值,就可以把堆棧設置在規定的內存單元中,如在程序開始時,用一條MOV SP,#5FH指令,就時把堆棧設置在從內存單元60H開始的單元中。一般程序的開頭總有這么一條設置堆棧指針的指令,因為開機時,SP的初始值為07H,這樣就使堆棧從08H單元開始往後,而08H到1FH這個區域正是8031的第二、三、四工作寄存器區,經常要被使用,這會造成數據的混亂。不同作者編寫程序時,初始化堆棧指令也不完全相同,這是作者的習慣問題。當設置好堆棧區後,並不意味著該區域成為一種專用內存,它還是可以象普通內存區域一樣使用,只是一般情況下編程者不會把它當成普通內存用了。
六、單片機的開發過程: 這里所說的開發過程並不是一般書中所說的從任務分析開始,我們假設已設計並製作好硬體,下面就是編寫軟體的工作。在編寫軟體之前,首先要確定一些常數、地址,事實上這些常數、地址在設計階段已被直接或間接地確定下來了。如當某器件的連線設計好後,其地址也就被確定了,當器件的功能被確定下來後,其控制字也就被確定了。然後用文本編輯器(如EDIT、CCED等)編寫軟體,編寫好後,用編譯器對源程序文件編譯,查錯,直到沒有語法錯誤,除了極簡單的程序外,一般應用模擬機對軟體進行調試,直到程序運行正確為止。運行正確後,就可以寫片(將程序固化在EPROM中)。在源程序被編譯後,生成了擴展名為HEX的目標文件,一般編程器能夠識別這種格式的文件,只要將此文件調入即可寫片。在此,為使大家對整個過程有個認識,舉一例說明:
ORG 0000H
LJMP START
ORG 040H
START:
MOV SP,#5FH ;設堆棧
LOOP:
NOP
LJMP LOOP ;循環
END ;結束
[編輯本段]單片機學習

目前,很多人對匯編語言並不認可。可以說,掌握用C語言單片機編程很重要,可以大大提高開發的效率。不過初學者可以不了解單片機的匯編語言,但一定要了解單片機具體性能和特點,不然在單片機領域是比較致命的。如果不考慮單片機硬體資源,在KEIL中用C胡亂編程,結果只能是出了問題無法解決!可以肯定的說,最好的C語言單片機工程師都是從匯編走出來的編程者因為單片機的C語言雖然是高級語言,但是它不同於台式機個人電腦上的VC++什麼的單片機的硬體資源不是非常強大,不同於我們用VC、VB等高級語言在台式PC上寫程序畢竟台式電腦的硬體非常強大,所以才可以不考慮硬體資源的問題。
以8051單片機為例講解單片機的引腳及相關功能;
《單片機引腳圖》
40個引腳按引腳功能大致可分為4個種類:電源、時鍾、控制和I/O引腳。
⒈ 電源:
⑴ VCC - 晶元電源,接+5V;
⑵ VSS - 接地端;
註:用萬用表測試單片機引腳電壓一般為0v或者5v,這是標準的TTL電平。但有時候在單片機程序正在工作時候測試結果並不是這個值而是介於0v-5v之間,其實這是萬用表的響應速度沒這么快而已,在某一個瞬間單片機引腳電壓仍保持在0v或者5v。
⒉ 時鍾:XTAL1、XTAL2 - 晶體振盪電路反相輸入端和輸出端。
⒊ 控制線:控制線共有4根,
⑴ ALE/PROG:地址鎖存允許/片內EPROM編程脈沖
① ALE功能:用來鎖存P0口送出的低8位地址
② PROG功能:片內有EPROM的晶元,在EPROM編程期間,此引腳輸入編程脈沖。
⑵ PSEN:外ROM讀選通信號。
⑶ RST/VPD:復位/備用電源。
① RST(Reset)功能:復位信號輸入端。
② VPD功能:在Vcc掉電情況下,接備用電源。
⑷ EA/Vpp:內外ROM選擇/片內EPROM編程電源。
① EA功能:內外ROM選擇端。
② Vpp功能:片內有EPROM的晶元,在EPROM編程期間,施加編程電源Vpp。
⒋ I/O線
80C51共有4個8位並行I/O埠:P0、P1、P2、P3口,共32個引腳。
P3口還具有第二功能,用於特殊信號輸入輸出和控制信號(屬控制匯流排)
[編輯本段]常用單片機晶元簡介
PIC單片機:
是MICROCHIP公司的產品,其突出的特點是體積小,功耗低,精簡指令集,抗干擾性好,可靠性高,有較強的模擬介面,代碼保密性好,大部分晶元有其兼容的FLASH程序存儲器的晶元.
EMC單片機:
是台灣義隆公司的產品,有很大一部分與PIC 8位單片機兼容,且相兼容產品的資源相對比PIC的多,價格便宜,有很多系列可選,但抗干擾較差.
ATMEL單片機(51單片機):
ATMEl公司的8位單片機有AT89、AT90兩個系列,AT89系列是8位Flash單片機,與8051系列單片機相兼容,靜態時鍾模式;AT90系列單片機是增強RISC結構、全靜態工作方式、內載在線可編程Flash的單片機,也叫AVR單片機.
PHLIPIS 51PLC系列單片機(51單片機):
PHILIPS公司的單片機是基於80C51內核的單片機,嵌入了掉電檢測、模擬以及片內RC振盪器等功能,這使51LPC在高集成度、低成本、低功耗的應用設計中可以滿足多方面的性能要求.
HOLTEK單片機:
台灣盛揚半導體的單片機,價格便宜,種類較多,但抗干擾較差,適用於消費類產品.
TI公司單片機(51單片機):
德州儀器提供了TMS370和MSP430兩大系列通用單片機.TMS370系列單片機是8位CMOS單片機,具有多種存儲模式、多種外圍介面模式,適用於復雜的實時控制場合;MSP430系列單片機是一種超低功耗、功能集成度較高的16位低功耗單片機,特別適用於要求功耗低的場合

⑤ 對單片機編程要用什麼軟體

keil最流行單片機開發中除必要的硬體外,同樣離不開軟體,我們寫的匯編語言源程序要變為CPU可以執行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟體將源程序變為機器碼,用於MCS-51單片機的匯編軟體有早期的A51,隨著單片機開發技術的不斷發展,從普遍使用匯編語言到逐漸使用高級語言開發,單片機的開發軟體也在不斷發展,Keil軟體是目前最流行開發MCS-51系列單片機的軟體,這從近年來各模擬機廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的模擬調試器等在內的完整開發方案,通過一個集成開發環境(uVision)將這些部份組合在一起。運行Keil軟體需要Pentium或以上的CPU,16MB或更多RAM、20M以上空閑的硬碟空間、WIN98、NT、WIN2000、WINXP等操作系統。掌握這一軟體的使用對於使用51系列單片機的愛好者來說是十分必要的,如果你使用C語言編程,那麼Keil幾乎就是你的不二之選(目前在國內你只能買到該軟體、而你買的模擬機也很可能只支持該軟體),即使不使用C語言而僅用匯編語言編程,其方便易用的集成環境、強大的軟體模擬調試工具也會令你事半功倍。 目前最新的版本是keil uv3,可下載破解版本,否則有容量限制。

⑥ 運動控制卡如何使用

運動控制卡,控制的是驅動器,而不是直接的電機,
一般有2種控制方式脈沖,模擬量,
脈沖控制:驅動器是工作在位置環,脈沖的多少代表走的長度,頻率表示速度
模擬量控制:驅動器工作在速度環或者電流環,模擬量的大小對應電機的速度,與位置,但這些還是靠電機的反饋編碼器來衡量。

你的是直線電機,如果用運動控制卡控制,必須有,直線電機+光柵尺(磁柵尺)+驅動器+運動控制卡 可能有上位機(看你這個系統也不會只是一個直線電機)

光柵尺相當於編碼器,使電機的位置閉環。像伺服電機要有後面的編碼器一樣

運動控制卡有發脈沖的,和模擬量的之分。模擬量的貴,考慮到PID的演算法一般成熟的多是國外的。當然國內的也有。至於多少錢,跟軸數有關,外國的4軸的模擬量一般在8000以上把

因為你的是直線電機,最好用模擬量的,

至於用什麼語言的話,國內的沒有接錯過,外國的一般他們有專門的軟體及其語言類似VB,C,如果你最後要集成到上位機的話,多有開發包(API),VB,VC,LABVIEW等等幾乎所有語言應該多可以支持

⑦ 急求啊 基於AVR單片機的三軸雕刻機運動控制,要用到ATMEGA16、C語言,要編程但是本人不會編程,求大神指點

網上有個Grbl學下把,非常優秀的G代碼軟體

⑧ 51單片機用什麼軟體編程

開源軟體mcu8051ide 功能不是一般的強,用c語言編程,界面不輸給商業軟體,而且提供多種模擬器件如:led 數碼管,矩陣數碼管(8×8)按鍵,矩陣按鍵,甚至溫度感測器。開源的沒有任何限制,完全免費,自動生成多種燒錄文件(我們一般就用.HEX的)感覺keil c弱爆了。
安裝方法,下載sdcc(mcu8051ide是基於sdcc的)和mcu 8051 ide都安裝好就可以啦,頭文件在sdcc的安裝文件夾內(include)有些關鍵字要加兩個連在一起的下劃線比如 __interrup, __code.
頭文件與keil的不通用,比如定義P0口
在keil下是: sfr P0=0x80; 在sdcc下是: __sfr __at P0 0x80; 這個P0^1的不行,但sdcc裡面有很多頭文件8051.h 80c51.h 80c52.h等等 基本滿足要求,給stc單片機編程不用改,加一點特殊的就可以。這樣優秀的開源軟體不用真的是白不用啊。

⑨ 誰幫我推薦幾款三軸運動控制器,可以示教編程的

EMAC200獨立式可編程運動控制器——4軸
(特點:運行速度最快的運動控制、功能設置簡介通過程序內部相當可以輕松引導客戶完成硬體配置)(今年來在高校運用的量增加,所以針對實驗程序的案例比較多,完整系統運用程序因為受到此控制器程序保護功能因素,所以相對要少)

ACR9000獨立式可編程運動控制器——2、4、6、8軸
(特點:功能最全面的運動控制、幾乎涵蓋了運動控制運用中的所以應用能力)(在工廠使用的比較多,案常式序比較完整)

PMAC2可編程運動控制卡,需要搭載工控機運行
(特點:美國第一款進入中國的運動控制卡,功能強大但程序設計復雜)(這款控制卡運用比較早,案常式序繁雜)

獨立式可編程運動控制器是已經封裝好了外殼,在內部提升了防護等級,如抗干擾、振動、防塵燈,一般單台規格為2、4、6、8軸,需要更多的軸是通過匯流排外擴充一般擴展軸速也都能達到256軸以上。可以脫離電腦通自己的CPU獨立運行,同時可以考慮加裝觸摸屏來監視,設備運行情況。

運動控制卡(板塊型)通常通過PCI插槽連接到電腦上,工廠一般用工控機來和運動控制卡組合使用,因為工控機可以提供多個插槽給運動控制卡以便擴展軸數。

⑩ 用c語言編寫控制電機運動的程序

1、有三個輸入,分別是一個按鈕、兩個霍爾感測器(也就是接近開關),我用P0.0到P0.2來代替;輸出2個或以上(這看接什麼顯示器,如果是PC的話,就不用數字量輸出,直接串口就可以了)控制正反轉的繼電器管腳用P1.0、P1.1;需要與一個全局變數轉動次數k連接起來,另外兩個輸入接近開關選用NPN感測器或用光電隔離,總之有效信號能把管腳電壓拉低就可以。
2、常式:

#include<reg51.h>//選用晶振11.0592MHz
unsignedchark=0;//k表示正反轉次數
sbitX0=P3^2;//調節按鈕
sbitX1=P1^1;//上限位接近開關信號
sbitX2=P1^2;//下限位接近開關信號
sbitY1=P0^0;//電機上升(注意:我使用的是管腳輸出為0時候,電機運動,這樣可以避免啟動時候,單片機自復位對電機點動的影響)
sbitY2=P0^1;//電機下降
voiddelay50ms(unsignedinti)
{
unsignedintj;
for(i;i>0;i--)
for(j=46078;j>0;j--);
}
main()
{
IT0=1;//下降沿觸發
EX0=1;//開P3.2外部中斷
EA=1;//總中斷開
while(1)
while(k)
{
Y1=0;//正轉
while(X1==1);//等待正轉接近開關反應
Y1=1;//正轉停
delay50ms(1);//停止時間50ms
Y2=0;//反轉
while(X2==1);//等待反轉接近開關反應
Y2=1;//反轉停
k--;//圈數減一
}
}
voidcounter0(void)interrupt0
{
k++;//外部中斷控制圈數加一
//這個位置可以加你顯示程序
}
閱讀全文

與單片機的運動控制編程用什麼軟體相關的資料

熱點內容
什麼app能查醫生 瀏覽:175
輕量級的編程語言 瀏覽:338
程序員那麼可愛生孩子 瀏覽:432
後綴him3加密文件是什麼軟體 瀏覽:984
堅果隱藏app為什麼要140版本才能用 瀏覽:313
淘寶dns伺服器地址 瀏覽:259
領英轉型app哪個好用 瀏覽:943
壓縮軟體的圖標 瀏覽:97
賣鞋哪個app是真的 瀏覽:469
python迭代是累計嗎 瀏覽:419
程序員哪些平台接私活 瀏覽:175
單片機充電電路原理圖 瀏覽:1000
android軟體雲伺服器地址 瀏覽:213
如何用伺服器做內網穿透服務 瀏覽:401
oracle加密表空間重置密碼 瀏覽:302
mdk編譯後目標文件 瀏覽:616
老人動手解壓 瀏覽:720
小米sd卡解壓 瀏覽:996
程序員那麼可愛陸漓替老袁說情 瀏覽:28
當女程序員遇見問題 瀏覽:746