【ch01】一種新的C語言學(xué)習(xí)方式_第1頁
【ch01】一種新的C語言學(xué)習(xí)方式_第2頁
【ch01】一種新的C語言學(xué)習(xí)方式_第3頁
【ch01】一種新的C語言學(xué)習(xí)方式_第4頁
【ch01】一種新的C語言學(xué)習(xí)方式_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

機(jī)器人程序設(shè)計(jì)(C語言)新工科建設(shè)之路·機(jī)器人技術(shù)與應(yīng)用系列一種新的C語言學(xué)習(xí)方式第一章單片機(jī)和微控制器一臺(tái)能夠工作的計(jì)算機(jī)包括CPU(CentralProcessingUnit,中央處理單元,進(jìn)行運(yùn)算和控制,包括運(yùn)算器和控制器等)、存儲(chǔ)器(如RAM、ROM等)、輸入設(shè)備、輸出設(shè)備(包括串行/并行接口、USB等)。下述基本智能任務(wù)和綜合競(jìng)賽任務(wù):人機(jī)對(duì)話,交換信息。完成精確的運(yùn)動(dòng)軌跡。安裝傳感器,以探測(cè)周邊環(huán)境?;趥鞲衅餍畔⒆龀鰶Q策。循線完成機(jī)器人游歷、智能搬運(yùn)、擂臺(tái)賽等任務(wù)。機(jī)器人與C語言學(xué)習(xí)平臺(tái)具體步驟包括:①安裝編程開發(fā)環(huán)境。②連接機(jī)器人到電池或者供電的電源。③連接教學(xué)板到計(jì)算機(jī),以便編程調(diào)試和交互。④運(yùn)用C語言編寫第一個(gè)單片機(jī)程序,運(yùn)用編譯器編譯生成可執(zhí)行文件,下載到單片機(jī),觀察機(jī)器人單片機(jī)教學(xué)板的執(zhí)行結(jié)果。⑤斷開電源。獲得軟件01獲得軟件1.C51單片機(jī)C語言集成開發(fā)環(huán)境KeilC語言是美國KeilSoftware公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。2.ISP軟件Progisp是一款免費(fèi)下載的ISP軟件,不需要專門的安裝即可使用,非常方便。使用該軟件,讀者可以將C語言程序生成的可執(zhí)行文件下載到機(jī)器人單片機(jī)上。獲得軟件3.串口調(diào)試軟件串口調(diào)試工具就是串行通信接口調(diào)試軟件,集數(shù)據(jù)發(fā)送、數(shù)據(jù)接收、數(shù)據(jù)監(jiān)控、數(shù)據(jù)分析等功能于一身,具有小巧精致、操作簡捷、功能強(qiáng)大的特點(diǎn),可以在串口通信監(jiān)控、設(shè)備通信測(cè)試工作中有效提高效率。安裝軟件02安裝軟件安裝KeilμVision4IDE①運(yùn)行KeilμVision4IDE安裝程序,選擇EvalVersion版進(jìn)行安裝。②在出現(xiàn)的窗口中一直單擊“Next”按鈕,將程序默認(rèn)安裝在C:\ProgramFiles\Keil文件夾下。③將安裝包中的“頭文件”文件夾中的文件復(fù)制到C:\ProgramFiles\Keil\C5ININC文件夾中。安裝軟件KeilμVision4IDE軟件安裝完成后,會(huì)在計(jì)算機(jī)的桌面上建立一個(gè)快捷方式。Progisp和SerialDebugTool.exe軟件都不需要安裝,只需將安裝包復(fù)制到計(jì)算機(jī)上即可。硬件連接03硬件連接C語言教學(xué)板需要連接電源來運(yùn)行,同時(shí)需要連接到計(jì)算機(jī)以便編程和交互。硬件連接連接計(jì)算機(jī)C語言教學(xué)板通過USBA轉(zhuǎn)B信號(hào)線連接到計(jì)算機(jī),程序的下載和信息的交互都通過該信號(hào)線完成。圖1-3為本書使用的USBA轉(zhuǎn)B信號(hào)線。硬件連接連接計(jì)算機(jī)硬件連接連接電源在一般的編程和調(diào)試時(shí),建議使用6V/2A的電源適配器給C語言教學(xué)板供電。當(dāng)需要機(jī)器人進(jìn)行自主運(yùn)動(dòng)或者進(jìn)行比賽時(shí),用3.7V鋰電池給機(jī)器人供電。將鋰電池裝入專門的電池盒時(shí),注意按照標(biāo)記的電池極性(“+”和“-”)裝入。硬件連接教學(xué)板和單片機(jī)通電檢查教學(xué)板上有一個(gè)三位開關(guān)(如圖1-4所示),開關(guān)撥到“OFF”位時(shí)斷開教學(xué)板電源。無論是否將電池組或者其他電源連接到教學(xué)板上,只要三位開關(guān)位于“OFF”位,那么設(shè)備就處于關(guān)閉狀態(tài)。硬件連接教學(xué)板和單片機(jī)通電檢查硬件連接現(xiàn)在將三位開關(guān)由“OFF"位撥至“1”位,打開教學(xué)板電源,如圖1-5所示。教學(xué)板和單片機(jī)通電檢查硬件連接教學(xué)板上有一個(gè)二位開關(guān)(如圖1-6所示),當(dāng)需要給單片機(jī)下載程序時(shí),需將開關(guān)撥到“ISP”位,接通單片機(jī)下載通道。教學(xué)板程序下載與通信功能的切換第一個(gè)程序04第一個(gè)程序創(chuàng)建并編輯第一個(gè)程序雙擊KeilμVision4IDE的圖標(biāo),啟動(dòng)KeilμVision4IDE,出現(xiàn)如圖1-7所示的窗口,可以通過“Project”菜單的“NewProject”命令新建項(xiàng)目文件。第一個(gè)程序創(chuàng)建并編輯第一個(gè)程序①在“Project”菜單中選擇“NewμVisionProject”命令(如圖1-8所示),出現(xiàn)如圖1-9所示的對(duì)話框。第一個(gè)程序創(chuàng)建并編輯第一個(gè)程序②在“文件名”文本框中輸入“HelloRobot”,保存在需要的位置(如“E:\C語言程序設(shè)計(jì)程序”),可不用加后綴名。單擊“保存”按鈕,出現(xiàn)如圖1-10所示的對(duì)話框。第一個(gè)程序創(chuàng)建并編輯第一個(gè)程序③選擇項(xiàng)目芯片的類型。KeilμVision4IDE幾乎支持所有的C51核心單片機(jī),并以列表的形式給出。第一個(gè)程序第一個(gè)C語言程序:HelloRobot.c#include<uart.h>intmain(void)uart_Init();//串口初始化printf("Hello,thisisamessagefromyourRobot\(n");while(1);第一個(gè)程序第一個(gè)C語言程序:HelloRobot.c①單擊圖1-12中的“+”,出現(xiàn)如圖1-14所示的列表。第一個(gè)程序第一個(gè)C語言程序:HelloRobot.c②右鍵單擊“SourceGroup1”,在出現(xiàn)的快捷菜單中選擇“AddFileToGroup”→“SourceGroup1”,出現(xiàn)“AddExistingFilestoGroupSource'Group1'”對(duì)話框,從中選擇需要添加的程序文件,如剛才建立的HelloRobot.c;單擊“Add”按鈕,把所選文件添加到項(xiàng)目文件中。第一個(gè)程序第一個(gè)C語言程序:HelloRobot.c③程序文件添加到項(xiàng)目文件后,這時(shí)圖1-14中“SourceGroup1”的前面出現(xiàn)“+”;單擊它,將出現(xiàn)剛才添加的源文件名,如圖1-15所示(注意,圖中顯示的文件名是剛才輸入的文件名)。第一個(gè)程序第一個(gè)C語言程序:HelloRobot.c第一個(gè)程序編譯程序下面生成下載需要的可執(zhí)行文件。生成可執(zhí)行的HEX文件需要對(duì)目標(biāo)工程“Target1”進(jìn)行編譯設(shè)置。單擊KeilμVisionIDE快捷工具欄中的按鈕,Keil的C編譯器根據(jù)要生成的目標(biāo)文件類型對(duì)目標(biāo)工程項(xiàng)目中的C語言源文件進(jìn)行編譯。第一個(gè)程序程序調(diào)試如果程序在編譯過程中出現(xiàn)了錯(cuò)誤,就不能生成可下載的十六進(jìn)制執(zhí)行文件。第一個(gè)程序程序調(diào)試C語言對(duì)函數(shù)名稱的大小寫是敏感的,也就是同一個(gè)名字不同的大小寫表示的是兩個(gè)函數(shù),標(biāo)準(zhǔn)的函數(shù)大小寫寫錯(cuò)也會(huì)提示語法錯(cuò)誤。比如,將“printf”寫成了“Printf”,編譯時(shí)會(huì)出現(xiàn)如下警告和錯(cuò)誤信息:第一個(gè)程序程序調(diào)試首先警告程序中的Printf沒有函數(shù)原型,后面是錯(cuò)誤信息,這個(gè)函數(shù)需要ANSI型函數(shù)原型。由此可見,一個(gè)小小的語法錯(cuò)誤可以導(dǎo)致編譯時(shí)出現(xiàn)很多錯(cuò)誤信息??傊Z法錯(cuò)誤相對(duì)來說比較容易調(diào)試和修改,只要簡單檢查,就可以很快排除,特別是根據(jù)錯(cuò)誤信息提示進(jìn)行排除,就會(huì)更快。第一個(gè)程序下載可執(zhí)行文件到單片機(jī)將教學(xué)板的二位開關(guān)撥至“ISP”位,單擊Progisp快捷方式,打開下載軟件窗口,如圖1-19所示。第一個(gè)程序用串口調(diào)試軟件查看單片機(jī)輸出信息將教學(xué)板上的二位開關(guān)撥至“USART”位,打開串口調(diào)試軟SerialDebugTool.exe,出現(xiàn)串口調(diào)試窗口,如圖1-20所示,在左邊的“通信設(shè)置”欄的“串口號(hào)”列表框中選擇串口“COMxx”后,單擊下面的“連接”按鈕。第一個(gè)程序HelloRobot.c是如何工作的C語言是一個(gè)非常龐大的系統(tǒng),是為開發(fā)大型程序而準(zhǔn)備的。即使是最小的一個(gè)程序,其框架結(jié)構(gòu)也很復(fù)雜。main()函數(shù)主體中有2行語句:第1行是串口初始化函數(shù)uart_Init(),用來規(guī)定單片機(jī)串口是如何與計(jì)算機(jī)通信的。第一個(gè)程序printf()函數(shù)print()函數(shù)稱為格式輸出函數(shù),其功能是按用戶指定的格式,把指定的數(shù)據(jù)輸出顯示。printf()函數(shù)是C語言提供的標(biāo)準(zhǔn)輸出函數(shù),定義在C語言的標(biāo)準(zhǔn)函數(shù)庫中,要使用它,必須包括定義標(biāo)準(zhǔn)函數(shù)庫的頭文件stdio.h。第一個(gè)程序“while(1);”的作用while(1)實(shí)際上是一個(gè)死循環(huán)。HEX文件加載到單片機(jī)Flash存儲(chǔ)器上時(shí),是從頭開始往下加載的。斷開電源05斷開電源工程素質(zhì)和技能歸納本章涉及的主要技能①KeilμVisionIDE(集成開發(fā)環(huán)境)的安裝和使用。②C語言教學(xué)板與計(jì)算機(jī)的連接。③在集成開發(fā)環(huán)境中創(chuàng)建目標(biāo)工程文件,并添加和編輯C語言源程序。④C語言程序的編譯和可執(zhí)行文件的生成。⑤Progisp下載軟件的使用和程序下載。⑥程序的執(zhí)行和串口調(diào)試終端的使用。⑦C語言程序的基本架構(gòu)和格式輸出函數(shù)printf()的使用。斷開電源工程素質(zhì)和技能歸納常見錯(cuò)誤①函數(shù)名稱的大小寫問題。②編輯窗口中可以用中文給程序進(jìn)行注釋,中文與英文所占的字符數(shù)不一樣,一個(gè)漢字要占兩個(gè)英文字符的空間。③修改的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論