版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
LeadLibraryUser’sTableofGeneral GeneralPublic 電源部分使用說(shuō) Clock Clock使用說(shuō) GPIO 通用I/O模 LED網(wǎng)口燈使用說(shuō) 5-DirectionKey五向鍵使用說(shuō) Timer SysTick系統(tǒng)定時(shí)器使用說(shuō) Timer通用定時(shí)器使用說(shuō) UART模塊使用說(shuō) I2CModule(Inter-Integrated I2C-LED模塊使用說(shuō) Tube米字?jǐn)?shù)碼管模塊使用說(shuō) Module(PulseWidth Buzzer蜂鳴器使用說(shuō) ADC Wheel指輪傳感器使用說(shuō) Temp溫度傳感器使用說(shuō) LCD lcdContext公共結(jié)構(gòu) GeneralLeadLibrarySJTU-ViscodecS700實(shí)驗(yàn)板(TI 和 larisGraphicLibrary軟件包。使用時(shí)不依賴(lài)外部庫(kù)獨(dú)立編譯LeadLibrary設(shè)計(jì)目的為實(shí)驗(yàn)教學(xué),對(duì)嵌入式系統(tǒng)的初學(xué)者來(lái)說(shuō),閱讀源碼 GeneralPublicLeadLibrary-BoardsupportdevelotformforTIS larisMCU.Copyright(C)2012-2013WangYiqing.Thisprogramissoftware:youcanredistributeitand/ormodifyitunderthetermsoftheGNUGeneralPublicLicenseaspublishedbytheSoftwareFoundation,eitherversion3oftheLicense,or(atyouroption)anylaterversion.Thisprogramisdistributedinthehopethatitwillbeuseful,butWITHOUTANYWARRANTY;withouteventheimpliedwarrantyofMERCHANTABILITYorFITNESSFORAPARTICULARPURPOSE.SeetheGNUGeneralPublicLicenseformoredetails.YoushouldhavereceivedacopyoftheGNUGeneralPublicLicensealongwiththisprogram.Ifnot,see<>. 公共頭文件LeadLib.h是使用LeadLibrary需要的唯一頭文件,位/include#ifndef#ifndef #define #include<stdio.h>#include<math.h>//CStandardIO//CBool//CMath#include"ClockModule.h"#include"GpioModule.h"#include"UartModule.h"#include"I2cModule.h"#include" #include"AdcModule.h"#include"LcdModule.h"為使硬件正常工作,有以意事項(xiàng)。調(diào)試接口ICDIReset:連接跳帽JP40;M3.3V供電 連接跳帽P(pán)3.3V供電 連接跳帽板級(jí)5V供電 Clock ClockModuleAPI,頭文件為ClockModule.h位于/include文件夾下。#ifndef#ifndef #definevoidvoidClockSet50M(void);void//Setsystemclockfrequencyto//Setsystemclockfrequencyto//SetsystemclockfrequencytovoidDelayMilliSec(unsignedinttime); //DelaynmillisecondsvoidDelaySec(unsignedinttime); //DelaynsecondsClockvoidvoid時(shí)鐘設(shè)置為50MHz。void時(shí)鐘設(shè)置為80MHz(LM3S系列支持的最高主頻。voidDelayMilliSec(unisignedintvoidDelaySec(unsignedintGPIO GPIOModule通用I/O模塊提供了對(duì)板上通用I/O接口元件直接操作的API,頭文件為GpioModule.h位于/include文件夾下。GPIO模塊下主要有兩個(gè)子模塊:LED5-DKey#ifndef#ifndefGPIOMODULE_H_#defineGPIOMODULE_H_//EnumfornetLEDtypedefenum{//Enumfor5-Direction//Onlyonekeycanbetriggeredatatime.typedefenum{//NetvoidGpioLedInit(LEDvoidGpioLedOn(LEDled);voidGpioLedOff(LED//InittheGPIO//TurnontheGPIO//TurnofftheGPIOvoidGpioLedToggle(LEDled);//ToggletheGPIO//5-DvoidGpioKeyInit(void);//Initthe5-D//Readthetriggerstatusof5-DLEDLEDYellow口燈:連接跳帽JP2,斷開(kāi)跳帽JP39。LEDGreen綠色網(wǎng)口燈:連接跳帽JP3JP35。 ororvoidGpioLedInit(LEDvoidGpioLedOn(LEDvoidGpioLedOff(LED5-DirectionKey硬件:連接跳帽JP41(PressKey) 連接跳帽JP42(Up 斷開(kāi)跳帽連接跳帽JP43(RightKey) 連接跳帽JP44(DownKey) 斷開(kāi)跳帽JP30;連接跳帽JP45(Left voidKEY Timer TimerModule定時(shí)器模塊提供了對(duì)SysTick定時(shí)器和通用定時(shí)器Timer進(jìn)行操作的API,頭文件為T(mén)imerModule.h位于/include文件夾下。Timer模塊下主要有兩個(gè)子模塊:SysTickTimer通用定#ifndef#ifndefTIMERMODULE_H_#defineTIMERMODULE_H_//Enumfortimertypedefenum{//InitSysTickwithperiod(unit:millisecond)voidSysTickStart(void); //SysTickstartcountingvoid //SysTickstopboolSysTickOverflow(void); //CheckwhetherSysTickisoverflowvoidSysTickUserFunc(void);//**FunctioninterfaceforusertoredevelopvoidTimerInit(TIMER//InitvoidTimerPeriodSet(TIMERtimer,unsignedint//Settimerperiod(unit:millisecond)voidTimerStart(TIMERtimer); //Timerstartcounting //TimerstopboolTimerOverflow(TIMERtimer);//CheckwhetherTimeris//**Functioninterfaceforusertoredevelop**voidTimer0UserFunc(void);voidSysTick函數(shù)SysTickUserFunc不是用戶(hù)可調(diào)用的執(zhí)行函數(shù),提供的是一個(gè)載于voidSysTickInit(unsignedint計(jì)
PeriodMax(Second)=224/voidvoidboolbooltrue;否則返回falsevoidTimerTimer0UserFuncTimer1UserFunc不是用戶(hù)可調(diào)用的執(zhí)行函數(shù),提32voidTimerPeriodSet(TIMERtimer,unsignedintperiod為通用定時(shí)器的定時(shí)器初值,物理單位為毫秒。計(jì)
PeriodMax(Second)=232/voidTimerStart(TIMERbooltrue;否則返回falsevoidvoidUART #ifndef#ifndefUARTMODULE_H_#defineUARTMODULE_H_void //ConfigureUART0pinvoid //InitUART0withdefaultvoidUart0CharSendBlock(constchar//UART0sendcharwithblockingmodevoidUart0CharRecvBlock(char*data);//UART0receivecharwithblockingmodevoidUart0MsgSendBlock(constchar*msg);//UART0sendstringwithblockingmodeunsignedcharUart0MsgRecvBlock(char*msg);//UART0receivestringwithblockingboolUart0CharSend(constchar*data); //UART0sendcharboolUart0CharRecv(char*data); //UART0recievecharunsignedcharUart0MsgSend(constchar*msg); //UART0sendstringUART模塊SendSendorReceivevoidvoid位0位。voidUart0CharSendBlock(constchar*msgAPIUART0發(fā)送字符串。函數(shù)直到字符串中的APIUART0接收字符串。函數(shù)試圖從硬件接收緩沖區(qū)字符,若緩沖區(qū)中字符則以阻塞方式等待。只有當(dāng)?shù)教厥庾址?\r,\n和\0)后函數(shù)才返回。APIUART0發(fā)送一個(gè)字符。函數(shù)試圖將字booltruefalseAPIUART0接收一個(gè)字符。函數(shù)試圖從硬件接收緩沖區(qū)一個(gè)字符并返回,若此時(shí)硬件接收緩沖區(qū)中數(shù)據(jù),該函數(shù)仍booltruefalseunsignedcharUart0MsgSend(constchar*msgAPIUART0發(fā)送字符串。函數(shù)試圖將字符I2CModule(Inter-Integrated的API,頭文件為I2cModule.h位于/include文件夾下。 void //ConfigureI2C0pinvoid //InitI2C0mastervoid //InitexternalI2CvoidI2c0LedSet(chardata); //SetLEDsstatusonboardchar //GetLEDsstatusonvoidI2c0TubeSelSet(chardata); //Settubeselectedstatuschar //GettubeselectedvoidI2c0TubeSegLowSet(chardata); //Settubesegmenthighbitstatuschar //GettubesegmenthighbitvoidI2c0TubeSegHighSet(chardata);//SettubesegmentlowbitstatuscharI2c0TubeSegHighGet(void); //GettubesegmentlowbitstatusvoidI2c0TubeStringSet(char*string); //SettubestringvoidI2c0TubeDotSet(booldotUp,booldotDown);//SettubedotvoidI2c0TubeRefresh(void); //RefreshthetubevoidvoidvoidI2C-LED模塊orvoidI2c0LedSet(chardata中的Bit1~Bit77LED1點(diǎn)亮對(duì)應(yīng)LED;邏輯0熄滅對(duì)應(yīng)LED。I2C0總線上的擴(kuò)展LEDcharcharBit1~Bit77LED的狀態(tài)。1LED0LED處于熄滅狀態(tài)。Tube米字?jǐn)?shù)碼管模塊orororororvoidI2c0TubeSelSet(charchar位選信號(hào),對(duì)應(yīng)米字?jǐn)?shù)碼管Tube的位選信號(hào)Selected。對(duì)I2C0總線上的米字?jǐn)?shù)碼管Tube的段選低位信號(hào)SegmentLowcharI2C0TubeSegmentLow。對(duì)I2C0總線上的米字?jǐn)?shù)碼管Tube的段選信號(hào)SegmentHigh進(jìn)行操作charI2C0總線上的米字?jǐn)?shù)碼管Tube的段選信號(hào)SegmentHigh。Every4輪詢(xún)模式普通模式的API,并實(shí)現(xiàn)米字?jǐn)?shù)碼管的編碼和輪詢(xún)操作。其中I2c0TubeRefresh必須被定時(shí)調(diào)用(調(diào)用周期約為4毫秒voidI2c0TubeStringSet(charstring為要顯示在米字?jǐn)?shù)碼管上的字符串(4位還需定時(shí)調(diào)用I2c0TubeRefresh函數(shù)。voidI2cTubeDotSet(booldotUp,bool置為true則點(diǎn)亮該點(diǎn),若設(shè)置為false則熄滅該點(diǎn)。還需定時(shí)調(diào)用I2c0TubeRefresh函數(shù)。voidModule(PulseWidth模塊提供了控制占空比/頻率可調(diào)制脈沖波的常用API,頭文件為Module.h位于/include文件夾下。#ifndef#ifndef#define//ConfigureUART0pin//modulegeneralbuzzer////BuzzerFreqSet(unsignedshortfreq);//SetfrequencyofBuzzerDutySet(unsignedcharduty);//Setduty-cycleof Buzzer 硬件:連接跳帽JP2(將波輸出至 或連接跳帽JP39(將 波輸出至Buzzer蜂鳴器。 void voidvoid voidBuzzerFreqSet(unsignedshortfreq為Buzzer模塊 設(shè)置Buzzer模塊 BuzzerDutySet(unsignedcharduty為Buzzer模塊 設(shè)置Buzzer模塊波的占空比。ADC ADCModule模數(shù)轉(zhuǎn)換器模塊提供了對(duì)板上模擬信號(hào)器件進(jìn)行信號(hào)ADC模塊下有兩個(gè)子模塊:WheelTemp溫度傳感器模#ifndef#ifndefADCMODULE_H_#definevoid//ADC0modulegeneralvoidAdc0WheelInit(void);void//ConfigureADC0wheelpin//InitADC0wheelsample//Startsamplingthewheel//Getwheelvoltage(binarycode)boolAdc0WheelVoltageGet(unsignedshort*resultPtr);//Getwheelvoltage(physicalvaluewithvoidAdc0TempInit(void);void//ConfigureADC0temppin//InitADC0tempsample//Startsamplingthe//Gettemperature(binarycode)boolAdc0TempFloatValueGet(float*resultPtr);//Gettemperature(physicalvaluewithDegreesvoid(3V注:SPS為每秒AD采點(diǎn)數(shù)(采樣率。Wheel針對(duì)ADC模塊下的Wheel指輪傳感器有以意事項(xiàng)硬件:連接跳帽JP20(Vref) 連接跳帽JP48(Wheel) 斷開(kāi)跳帽JP45。ororvoid配置Wheelvoidvoid觸發(fā)WheelresultPtr指向采樣結(jié)果的緩沖區(qū)試圖Whee
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個(gè)人快遞包裹配送與包裝材料合同二4篇
- 四人合伙股份的協(xié)議書(shū)(二零二五年版)2篇
- 2025年金融產(chǎn)品銷(xiāo)售合同債務(wù)追討委托協(xié)議3篇
- 2025年度環(huán)保設(shè)備買(mǎi)賣(mài)雙方資金監(jiān)管與服務(wù)保障協(xié)議4篇
- 2025年高速公路施工升降機(jī)租賃及道路管制合同3篇
- 2025年度美甲店會(huì)員積分體系設(shè)計(jì)與運(yùn)營(yíng)合同4篇
- 2025年高校教材編輯與審核服務(wù)合同3篇
- 2025年度個(gè)人二手挖掘機(jī)買(mǎi)賣(mài)合同法律風(fēng)險(xiǎn)防范范本3篇
- 2025年心理咨詢(xún)服務(wù)協(xié)議書(shū)范本(心理咨詢(xún)服務(wù)與公益活動(dòng))3篇
- 2025年度人工智能技術(shù)應(yīng)用保密協(xié)議3篇
- 2024年國(guó)家工作人員學(xué)法用法考試題庫(kù)及參考答案
- 國(guó)家公務(wù)員考試(面試)試題及解答參考(2024年)
- 《阻燃材料與技術(shù)》課件 第6講 阻燃纖維及織物
- 人教版五年級(jí)上冊(cè)遞等式計(jì)算100道及答案
- 公司總經(jīng)理年會(huì)致辭范例2篇
- 三位數(shù)乘以?xún)晌粩?shù)-計(jì)算題大全
- 宏觀社會(huì)工作1
- 醫(yī)療大數(shù)據(jù)分析與挖掘技術(shù)
- 道路通行能力手冊(cè)第4章-高速公路基本路段
- 傳感器與測(cè)試技術(shù)試卷及答案
- 2020年普通高等學(xué)校招生全國(guó)統(tǒng)一數(shù)學(xué)考試大綱
評(píng)論
0/150
提交評(píng)論