版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
智能車制作初步及MC9S12XS128簡介
2023/5/10簡單智能車制作132總結歷屆參賽體會智能車相關智能車制作初步經(jīng)驗與教訓——歷屆參賽體會分享智能車競賽賽程智能車系統(tǒng)簡介單片機基本知識XS系列單片機介紹CodeWarrior軟件實驗說明XS128簡介經(jīng)驗與教訓—歷屆參賽體會第一次去華龍是很興奮的,只是不知道那兒周日是關門的,所以當我們興沖沖趕過去的時候,見到的只是緊鎖的門面小車根本就不能跑起來(后來證明電路圖沒有任何問題,華龍老板給我們提供的電阻電容參數(shù)有大大的問題?。┲貑⒌膯栴}:在檢測板子時,意外的測試到一個引腳的電壓不穩(wěn)定。發(fā)現(xiàn)原來是LM2940的VCC腳虛焊了。板子忽然斷電,而且組員聞到了一股燒焦的味道。這下慘了,用萬用表一查,慘了,板子上的VCC和GND短接了。POWER的連接線太細了,難以承受住高電壓,勢必會燒掉,最終我們不得不采取飛線的方法,以挽救我們的板子!這個主要怪我最開始沒有多問問學長,不知道功率線都應該加粗的,只有信號線無所謂經(jīng)驗與教訓——歷屆參賽體會還記得智能車剛拿回來的時候,我們很興奮地拆開包裝就將一些部件安到小車上,可是安裝舵機時螺絲斜著擰進去了,結果導致里面的螺紋磨掉了,舵機接口很松,這是我們遇到的第一個問題,當時挺郁悶的,剛買的新車模就被弄成這樣,真倒霉啊。不過后面還是用502膠粘牢了,檢查了下,舵機運轉還是挺正常的。經(jīng)驗與教訓——歷屆參賽體會我們歡樂過,在看到智能車的成功,心中的喜悅難以言傳;我們苦悶過,面對時間就那樣一天天過去,我們的程序始終無法建立,心中構想的思路一次次被現(xiàn)實的問題拒之門外,那種壓抑,那種郁悶不敢再次回味;我們徘徊過,當?shù)谝粋€程序建立受阻時,我們徘徊要不要換思路,當比賽進行到第三周還沒有什么突破時,我們猶豫要不要放棄;我們堅持拼搏過,在比賽的過程中,無論遇到什么樣的困難,我們都堅持拼搏,堅信有付出就一定會有回報;我們遺憾過,遺憾我們思路難點時間太晚,最后整理程序的時間完全不夠。那幾周里,我們團結一致,將團隊合作發(fā)揮到極致,我們最后連續(xù)幾天不合眼,幾乎將我們的精力用到極致。比賽短暫兩天,卻讓我們歷經(jīng)人生酸甜苦辣,這將是我們人生中最有意義最難忘的時刻,也是我們參加比賽的最大收獲。經(jīng)驗與教訓——歷屆參賽體會剛開始接觸的時候確實感覺有些困難。這塊單片機的編程和以往學的程序編寫思路完全不同。它的邏輯幾乎全部在中斷里完成,一個周期這個中斷就要執(zhí)行一次,那么這個算法就會是一個我們以前沒接觸過的結構,通俗點說就是一遍一遍的刷這個中斷的邏輯。這樣的結構實時性很強,但是做好與前一周期的銜接以及保持一定周期內的策略一致性就是一個問題。我花了些時間寫了點測試程序并在開發(fā)板上運行,通過LED的顯示,對于這塊單片機的程序結構和運行方式終于有了一個感官上的認識。然后,初始化和AD轉換成了我面臨的又一大難題。這一部分幾乎全是靠控制字來控制,意味著我必須面對繁雜難懂的技術手冊,一個位一個位的弄懂它們的意思和功能,這個過程非??菰?。但是最后還是搞定了光電車最重要的多通道AD轉換初始化和讀取AD轉換值的部分。這期間,我也嘗試寫了第一個完整的小車程序。東南大學智能車競賽賽程相關課程——邊做邊學微機系統(tǒng)與接口(微機原理)電子電路單片機控制理論檢測技術電機控制與驅動智能車簡介智能車簡介智能車控制系統(tǒng)框圖微控制器微控制器可從不同方面進行分類:根據(jù)數(shù)據(jù)總線寬度可分為8位、16位和32位機;根據(jù)存儲器結構可分為Harvard結構和VonNeumann結構;根據(jù)內嵌程序存儲器的類別可分為OTP、掩膜、EPROM/EEPROM和閃存Flash;根據(jù)指令結構又可分為CISC(ComplexInstructionSetComputer)和RISC(ReducedInstructionSetComputer)微控制器。Freescale8/16/32單片機總線結構比較
從同一存儲器空間取指令和取操作數(shù)據(jù)。限制了數(shù)據(jù)流量。從兩個獨立的存儲空間分別取指令和存取操作數(shù)。數(shù)據(jù)流量增加。針對程序區(qū)和數(shù)據(jù)區(qū)可以設計不同的數(shù)據(jù)線寬度。程序和數(shù)據(jù)存儲器馮-紐曼結構8-位CPU數(shù)據(jù)存儲器8-位12/14/16-位哈佛結構CPU微機結構總線結構單片機內部結構開放實驗說明地點:教一411房間預約聯(lián)系人:
袁云kystillshy@校賽人人網(wǎng)主頁/seusmartcar校內訪問網(wǎng)站:6XS128開放實驗套件實驗開發(fā)板開放實驗內容基本入門實驗3個:1.通用I/O和定時中斷2.A/D轉換實驗3.PWM模塊實驗開放實驗內容提高實驗針對各個組別的賽道識別環(huán)節(jié)實驗光電組(自己制作硬件)電磁組(自己制作硬件)攝像頭組(自己準備攝像頭)實驗驗收:完成賽道識別和舵機控制Freescale單片機Freescale公司單片機的發(fā)展演變概況MC9S12汽車系列路線圖Freescale單片機的命名規(guī)則①產品狀態(tài)。MC—FullyQualified(合格);PC—ProductEngineering(測試品);XC表示部分合格品,有限質量保證,用于性能評估的器件。②存儲器類型標志?!盁o”表示片內帶ROM或片內沒有程序存儲器;7表示片內帶EPROM或一次可編程ROM(onetimeprogrammableROM,OTPROM);8表示片內帶EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory);9表示片內帶閃存FlashEEPROM。③芯片內核類型。如08表示HC08內核、S08表示HCS08內核、RS08表示RS08內核、S12是基于速度更快的CPU12內核等。④子系列型號標志。如GP、GB、GZ等。⑤存儲器大小。如256表示內部集成256KB的Flash等。⑥Flash版本標志,反映不同的擦寫電壓、時間等。⑦工作溫度范圍標志?!盁o”表示商用溫度范圍0℃~70℃;C表示-40℃~85℃;V表示-40℃~105℃;M表示-40℃~125℃。⑧封裝形式。如:P為雙列直插DPI封裝。選用某款芯片制作電路板時要特別注意封裝形式。⑨E表示leadfreepackaging,即無鉛封裝。在⑨之后有些還有一個可選項,例如MC68HC912B32ACFUE8,此處的“8”表示總線速度為8MHz。Freescale16位單片機根據(jù)內核的不同,可把Freescale的16位單片機分為MC68HC12系列MC9S12系列MC9S12X系列MC9S12系列單片機
MC9S12系列單片機(也稱為HCS12系列,簡稱S12系列)是基于速度更快的CPU12內核的單片機系列。目前該系列單片機有MC9S12A、B、C、D、E、G、H、K、Q、R、T,XS等系列。MC9S12X系列單片機S12XV1S12XD系列:帶有CAN總線;S12XHZ系列:帶LCD和步進電機驅動模塊。S12XV2S12XE系列:12位ADC;S12XS系列:沒有XGate,智能車推薦使用。S12X系列單片機最大的特點是增加了一個平行處理的外圍協(xié)處理器XGATE模塊。XGATE是一個獨特的、完全獨立可編程的協(xié)處理器,可單獨對所有的外圍模塊和RAM進行操作。專門處理中斷和I/O,提高系統(tǒng)的實時性能。MC9S12X系列單片機如圖所示,XGATE模塊直接讀取ADC數(shù)據(jù),并在RAM中對數(shù)據(jù)進行處理,然后發(fā)送到CAN總線上,這期間不需CPU的介入。芯片封裝知識簡介雙列直插式(DualInlinePackage,DIP)絕大多數(shù)中小規(guī)模IC均采用這種封裝形式,引腳<100
IntelCPU4004芯片封裝知識簡介塑料方型扁平式(PlasticQuadFlatPackage,PQFP)塑料扁平式(PlasticFlatPackage,PFP)間距小,管腳細,管腳數(shù)>100專用工具(表面安裝設備SMD)裝卸高頻使用、可靠性高,封裝面積小芯片封裝知識簡介引腳網(wǎng)格陣列(PinGridArray,PGA)專用PGA插槽操作方便,可靠性高,但電耗大IntelCPU中80286、80386和某些486ZIF(ZeroInsertionForce)插座,486以后芯片封裝知識簡介球狀網(wǎng)格陣列(BallGridArray,BGA)>100MHz,>208PinBGA封裝引腳數(shù)雖然增多,但引腳間距大于QFP傳輸延遲小,散熱性能好(可控塌陷封裝法)共面焊接,可靠性提高單片機種類繁多,令人眼花繚亂,每種單片機都有其應用定位。選擇最合適的單片機來應用,而不是給單片機接口以適應不同的應用。初步使用S12X1)S12X技術概述2)工作模式3)儲存器映射4)總線時鐘頻率5)通用I/O接口6)PWM模塊S12X技術概述通信和I/O兩個支持LIN的串行通信接口(SCI)1個MSCAN模塊兼容CAN2.0A、B1個串行外設接口(SPI)模塊高達91個通用輸入/輸出(GPIO)引腳內存64KB至256KB嵌入式閃存,帶糾錯碼(ECC)功能4KB至12KBRAM高達4KB至8KB的data-flash扇區(qū)大小為256B系統(tǒng)與時鐘40MHz16位CPU12X,前向兼容MC9S12指令集增強型中斷模塊帶有單線接口的后臺調試模塊(BDM)3.3V至5.0V工作電壓溫度范圍:-40度至+125度帶內部濾波的鎖相環(huán)(IPLL)一無需外部組件從省電的STOP模式快速喚醒,并立即執(zhí)行程序定時器和模數(shù)轉換器(ADC)1個ADC模塊,提供8/10/12位分辨率,可復用為16個模擬輸入通道8通道8位或4通道16位脈寬調制器(PWM)定時器(TIM),提供8通道16位輸入捕捉或輸出比較功能接口概述PortA,BandKusedasgeneralpurposeI/OPortEassociatedwiththeIRQ,XIRQinterruptinputsPortTassociatedwith1timermodulePortSassociatedwith2SCImoduleand1SPImodulePortMassociatedwith1MSCANPortPconnectedtothePWM-inputscanbeusedasanexternalinterruptsourcePortHandJusedasgeneralpurposeI/O-inputscanbeusedasanexternalinterruptsourcePortADassociatedwithone16-channelATDmoduleModesofOperation工作模式Operatingmodes:Normalsingle-chipmodeSpecialsingle-chipmodewithactivebackgrounddebugmodeLow-powermodes:SystemstopmodesPseudostopmodeFullstopmodewithfastwake-upoptionSystemwaitmode內部存儲器映射-寄存器寄存器,RAM,EEPROM可以通過設置INITRG,INITRM,INITEE來重新分配他們的位置。這些寄存器只能寫一次,建議在初始化分配寄存器,RAM,EEPROM的位置。對每個INITxx賦值后,在其指令后需插入一空指令。如果映射有沖突,寄存器具有最高優(yōu)先級,與其重疊的RAM和EEPROM此時無效。復位后,寄存器從0x0000開始,但可以被映射到64K空間內的前32K的范圍內,而且映射的地址必須是2K的整數(shù)倍。系統(tǒng)時鐘總線時鐘頻率外部晶振=16MHZ;BusClock=40MHZ通過設置CLKSEL寄存器,確定內部總線的時鐘源;通過PLL編程,設置PLLCLK;SYNR時鐘合成寄存器
VCOFRQ[7:6]SYNDIV[5:0]REFDV時鐘分頻寄存器
REFFRQ[7:6]REFDIV[5:0]總線時鐘頻率SYNR和REFDV都是低6位來設定所要超的頻率,其高2位是根據(jù)你要超的頻率來配置,通過合理的配置VCOFRQ,REFFRQ來提高系統(tǒng)時鐘穩(wěn)定性??偩€時鐘頻率voidinitPLL(void){//鎖相環(huán)初始化,將總線頻率調整到40MCLKSEL=0X00;//禁止鎖相環(huán)
PLLCTL_PLLON=1;//打開鎖相環(huán)
SYNR=0x49;REFDV=0x43;//pllclock=fvco=2*osc*(1+SYNR)/(1+REFDV)=80MHz;POSTDIV=0x00;_asm(nop);//BUSCLOCK=40M_asm(nop);while(!(CRGFLG_LOCK==1));//等待鎖相環(huán)初始化完成
CLKSEL_PLLSEL=1;//使用鎖相環(huán)}寄存器說明超頻示例voidSetBusCLK_120M(void)
{
CLKSEL=0X00;
//disengagePLLtosystem
PLLCTL_PLLON=1;
//turnonPLL
SYNR=0xc0|0x0d;
REFDV=0x80|0x01;
POSTDIV=0x00;
//pllclock=2*osc*(1+SYNR)/(1+REFDV)=240MHz;
_asm(nop);
//BUSCLOCK=120M
_asm(nop);
while(!(CRGFLG_LOCK==1));
//whenpllissteady,thenuseit;
CLKSEL_PLLSEL=1;
//engagePLLtosystem;
}
通用I/O接口voidinitGPIO(void){//通用IO口初始化
DDRA=0x00;//A口輸入
DDRB=0xFF;//B口輸出
DDRK=0xFF;//K口輸出}PWM模塊S12X微控制器PWM模塊是由獨立運行的8位脈沖計數(shù)器PWMCNT、兩個比較寄存器PWMPER和PWMDTY組成。PWM調制波有8個輸出通道,每一個輸出通道都可以獨立的進行輸出。每一個輸出通道都有一個精確的計數(shù)器(計算脈沖的個數(shù)),一個周期控制寄存器和兩個可供選擇的時鐘源。每一個PWM輸出通道都能調制出占空比從0—100%變化的波形。PWM模塊PWM啟動寄存器PWME用來啟動和關閉相應通道的PWM波形輸出。當任意的PWMEx位置1,則相關的PWM輸出通道就立刻可用。PWM極性選擇寄存器PWMPOL該寄存器是0~7通道PWM輸出起始極性控制位,用來設置PWM輸出的起始電平。用法:PWMPOL_PPOL0=1---通道0在周期開始時輸出為高電平,當計數(shù)器等于占空比寄存器的值時,輸出為低電平。對外輸出波形先是高電平然后再變?yōu)榈碗娖?。PWM時鐘選擇寄存器PWMCLKS12的PWM共有四個時鐘源,每一個PWM輸出通道都有兩個時鐘可供選擇(ClockA、ClockSA或ClockB、ClockSB))。其中0、1、4、5通道可選用ClockA和ClockSA,
2、3、6、7通道可選用ClockB、ClockSB通道。該寄存器用來實現(xiàn)幾個通道時鐘源的選擇。用法:PCLK0=1---通道0(PTP0)的時鐘源設為ClockSAPCLK2=0---通道2(PTP2)的時鐘源設為ClockBPWM預分頻寄存器PWMPRCLKPWMPRCLK寄存器包括ClockA預分頻和ClockB預分頻的控制位。ClockA、ClockB的值為總線時鐘的1/2n(0≤n≤7)PWM分頻寄存器PWMSCLA、PWMSCLBClockSA是通過對PWMSCLA寄存器的設置來對ClockA進行分頻而產生的。其計算公式為:ClockSA=ClockA/(2*PWMSCLA)PWMSCLB寄存器與PWMSCLA寄存器相似,PWM控制寄存器PWMCTLPWMCTL_CON67=1---通道6、7級聯(lián)成一個16位的PWM通道。此時只有7通道的控制字起作用,原通道7的使能位、PWM輸出極性選擇位、時鐘選擇控制位以及對齊方式選擇位用來設置級聯(lián)后的PWM輸出特性PWMCTL_CON67=0---通道6,7通道不級聯(lián)PSWAI和PFRZPSWAI=1---MCU一旦處于等待狀態(tài),就會停止時鐘的輸入。這樣就不會因時鐘在空操作而費電;當它置為0,則MCU就是處于等待狀態(tài),也允許時鐘的輸入。PFRZ=1---MCU一旦處于凍結狀態(tài),就會停止計數(shù)器工作。PWM通道計數(shù)寄存器PWMCNTxPWMCNTx寄存器共有8個,每一個通道都有一個8位PWM加/減雙向計數(shù)器,通道級聯(lián)后可變成16位PWM加/減雙向計數(shù)器。計數(shù)器以所選時鐘源的頻率運行。計數(shù)器在任何時候都可以被讀,而不影響計數(shù),也不影響對PWM通道的操作。任何值寫入PWMCNT0寄存器都會導致計數(shù)器復位置0,且其計數(shù)方向會被設置為向上計數(shù),并且會立刻從緩沖器載入任務和周期值,并會根據(jù)翻轉極性的設置來改變輸出。當計數(shù)器達到計數(shù)值后,會自動清零。只有當通道使能后,計數(shù)器才開始計數(shù)。PWM通道周期寄存器PWMPERxPWMPERx寄存器共有8個,每一個通道都有一個這樣的周期寄存器。這個寄存器的值就決定了相關PWM通道的周期。每一個通道的周期寄存器都是雙緩沖的,因此如果當通道使能后,改變他們的值,將不會發(fā)生任何作用,除非當下列情況之一發(fā)生:*有效的周期結束。*對計數(shù)器進行寫操作(計數(shù)器復位)*通道不可用(PWMEx=0)這樣就會使PWM輸出波形要么是新波形要么是舊波形,并不會在兩者之間進行交替變換。如果通道不可用,那么對周期寄存器進行寫操作,將會直接導致周期寄存器同緩沖器一起閉鎖。PWM通道占空比寄存器PWMDTYxPWMDTYx寄存器也有8個,每一個通道都有一個這樣的占空比常數(shù)寄存器。這個寄存器的值就決定了相關PWM通道輸出波形的占空比。當計數(shù)值與占空比常數(shù)PWMDTY相等時,則比較輸出器有效,這時就會將觸發(fā)器置位,然后PWMCNT繼續(xù)計數(shù),當計數(shù)值與周期常數(shù)PWMPER相等時,比較器輸出有效,將觸發(fā)器復位,同時也使PWMCNT復位,結束一個輸出周期。PWM波形對齊寄存器PWMCAEPWMCAE寄存器包含8個控制位來對每個PWM通道設置左對齊輸出或中心對齊輸出。用法:PWMCAE_CAE0=1---通道0中心對齊輸出
PWMCAE_CAE7=0---通道7左對齊輸出
只有輸出通道被關閉后才能對其進行設置。
左對齊方式在該方式下,脈沖計數(shù)器為循環(huán)遞增計數(shù),計數(shù)初值為0。當PWM使能后,計數(shù)器PWMCNT從0開始對時鐘信號遞增計數(shù),開始一個輸出周期。當計數(shù)值與占空比常數(shù)寄存器PWMDTY相等時,比較器1輸出有效,將觸發(fā)器置位,而PWMCNT繼續(xù)計數(shù);當計數(shù)值與周期常數(shù)寄存器PWMPER相等時,比較器2輸出有效,將觸發(fā)器復位,同時PWMCNT也復位,結束一個輸出周期。中心對齊方式在該方式下,脈沖計數(shù)器為雙向計數(shù),計數(shù)初值為0。當PWM使能后,計數(shù)器PWMCNT從0開始對時鐘信號遞增計數(shù),開始輸出一個周期。當計數(shù)器與占空比常數(shù)寄存器PWMDTY相等時,比較器1輸出有效,觸發(fā)器翻轉,而PWMCNT繼續(xù)計數(shù),當計數(shù)值與周期常數(shù)PWMPER相等時,比較器2輸出有效,此時改變PWMCNT的計數(shù)方向,使其遞解計數(shù);當PWMCNT再次與PWMDTY相等時,比較器1再一次輸出有效,使觸發(fā)器再次翻轉,而P
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物流運輸數(shù)據(jù)庫課程設計
- 2025年度定制化家具銷售合同范本2篇
- 機器視覺課課程設計書
- 2025年度建筑設備安全施工與安裝服務協(xié)議
- 二零二五年度商業(yè)綜合體給排水專業(yè)分包合同2篇
- 2025年度知識產權質押委托保證反擔保服務合同3篇
- 貪吃蛇課程設計c語言
- 英語語法課程設計依據(jù)
- 2025年中學校長開學典禮講話(2篇)
- 網(wǎng)上投票系統(tǒng)課程設計
- 腦惡性腫瘤的護理查房
- 2022公務員錄用體檢操作手冊(試行)
- 骨盆骨折PPT完整版
- 事業(yè)單位登記管理講座課件
- 柴油加氫設備-加氫循環(huán)氫壓縮機
- 中小學德育工作指南考核試題及答案
- 雪夜的老人閱讀答案6篇
- 2022數(shù)學課程標準解讀及實踐:八下平行四邊形大單元設計
- 昌樂二中271課堂教學模式
- 深基坑變形監(jiān)測方案
- 衛(wèi)生專業(yè)技術資格任職聘用證明表
評論
0/150
提交評論