




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第八期全國電子專業(yè)人才
師資培訓(xùn)班嵌入式設(shè)計(jì)與開發(fā)項(xiàng)目概述嵌入式設(shè)計(jì)與開發(fā)競賽規(guī)則CT117E硬件資源介紹CT117E使用方法及程序設(shè)計(jì)CT117E驅(qū)動(dòng)安裝及調(diào)試方法
使用KeilMDK開發(fā)環(huán)境編寫一個(gè)應(yīng)用程序STM32外設(shè)模塊介紹及編程嵌入式設(shè)計(jì)與開發(fā)項(xiàng)目模擬題分析競賽規(guī)則競賽采用Cortex-M3處理器STM32F103RB。采用KeilMDK4.10集成開發(fā)環(huán)境。競賽不涉及操作系統(tǒng)相關(guān)知識(shí)。競賽分值比例:CT117E簡介(1)嵌入式學(xué)習(xí)與實(shí)訓(xùn)產(chǎn)品Colink調(diào)試器STM32F103RB處理器演示程序選拔賽及決賽指定專用平臺(tái)
支持KeilMDK及IAREWARM集成開發(fā)環(huán)境CT117E簡介(2)處理器外設(shè)資源72MHzCortex-M3處理器
128K字節(jié)Flash,20K字節(jié)SRAMADCUSBRTC/Timer/SysTicksUSART/I2C/SPI(EEPROM)GPIO(Led/Key/Buzzer/LCD)硬件資源電源選擇跳線-JP1電容USB頭5V-DC插座三端穩(wěn)壓管AMS1117復(fù)位電路按鍵電阻、電容硬件資源
CoLink調(diào)試工具
EEPROM芯片(ATMEL93C46)USB轉(zhuǎn)串口芯片(FT2232)
USB插座JTAG調(diào)試接口(CN7)硬件資源
GPIO-LED/Key/Buzzer/LCD功能管腳名稱外部設(shè)備管腳功能LED鎖存PD2573鎖存腳蜂鳴器PB4蜂鳴器驅(qū)動(dòng)腳按鍵PA0按鍵B1PA8按鍵B2PB1按鍵B3PB2按鍵B4LCD模塊PB9CS#PB8RSPB5WR#PB10RD#PC0~PC7低位總線PC8~PC15高位總線硬件資源
GPIO-LEDGPIO-Key硬件資源源GPIO-LCD硬件資源源GPIO-Buzzer硬件資源源串行總線線-SPI/I2C/USART/USB硬件資源源功能管腳名稱外部設(shè)備管腳功能UART2(MUX)PA3RXD2PA2TXD2UART1PA10RXD1PA9TXD1SPI(SD卡)PB14SD0PB10SD1PB11SD2PB12SD3PB15SD_CMDPB13SD_CLKI2CPB6PB7SCLSDAUSBPA11USB_D-PA12USB_D+串行總線線-SPI硬件資源源串行總線線-I2C硬件資源源串行總線線-USART1硬件資源源串行總線線-USART2硬件資源源串行總線線-USB硬件資源源USB轉(zhuǎn)串口驅(qū)驅(qū)動(dòng)安裝裝通過USB(CN2)接口供供電選擇“從從列表或或指定位位置安裝裝”CT117E使用方法法CT117E使用方法法CooCoxforMDK驅(qū)動(dòng)安裝裝雙擊安裝路徑徑設(shè)置為為Keil軟件安裝裝位置CT117E使用方法法程序調(diào)試試與下載載單擊Project菜單,單單擊“OptionsforTarget”在Debug標(biāo)簽中選選擇CooCoxDebbugerCT117E使用方法法程序調(diào)試試與下載載單擊Settings選項(xiàng)在Debug的Adapter下拉菜單單中選擇擇ColinkCT117E使用方法法程序調(diào)試試與下載載FlashDownload選項(xiàng)中單單擊ADD選擇STM32中密度產(chǎn)產(chǎn)品(STM32F10xMed-DensityFlash)CT117E使用方法法程序調(diào)試試與下載載單擊Utilities標(biāo)簽在下拉菜菜單中選選擇CooCoxDebuggerCT117E程序設(shè)計(jì)計(jì)基于STM32固件庫的的程序設(shè)設(shè)計(jì)步驟驟(1)創(chuàng)建工程程目錄相關(guān)文件件拷貝修改配置置文件創(chuàng)建工程程,添加加相關(guān)文文件設(shè)置路徑徑保存工程程文件,,進(jìn)行程程序調(diào)試試CT117E程序設(shè)計(jì)計(jì)基于STM32固件庫的的程序設(shè)設(shè)計(jì)步驟驟(2)創(chuàng)建工程程目錄及及文件拷拷貝拷貝STM32固件庫Example中的stm32f10x_it.c拷貝STM32固件庫Example中的stm32f10x_it.hstm32f10x_conf.h根據(jù)產(chǎn)品品Flash存儲(chǔ)器大大小,選選擇相應(yīng)應(yīng)的啟動(dòng)動(dòng)代碼,復(fù)制到所所建文件件夾中。。CT117E程序設(shè)計(jì)計(jì)基于STM32固件庫的的程序設(shè)設(shè)計(jì)步驟驟(3)修改頭文文件-stm32f10x.h定義STM32芯片的規(guī)規(guī)模類型型如果使用用標(biāo)準(zhǔn)固固件庫,定義宏USE_STDPERIPH_DRIVERCT117E程序設(shè)計(jì)計(jì)基于STM32固件庫的的程序設(shè)設(shè)計(jì)步驟驟(3)修改配置置文件-stm32f10x_conf.hSTM32處理器外外設(shè)資源源頭文件件,可根根據(jù)工程程需求打打開和關(guān)關(guān)閉。CT117E程序設(shè)計(jì)計(jì)基于STM32固件庫的的程序設(shè)設(shè)計(jì)步驟驟(3)修改應(yīng)用用文件-stm32f10x_it.c中斷服務(wù)務(wù)函數(shù),,根據(jù)程程序設(shè)計(jì)計(jì)要求,,編寫相相關(guān)代碼碼基于STM32固件庫的的程序設(shè)設(shè)計(jì)步驟驟(4)創(chuàng)建工程程,添加加相關(guān)文文件CT117E程序設(shè)計(jì)計(jì)添加啟動(dòng)動(dòng)代碼.\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm文件system_stm32f10x.c必須添加加.\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x更具程序序設(shè)計(jì)需需求,選選擇性添添加驅(qū)動(dòng)動(dòng)外設(shè)源源文件。。.\Libraries\STM32F10x_StdPeriph_Driver\srcCT117E程序設(shè)計(jì)計(jì)基于STM32固件庫的的程序設(shè)設(shè)計(jì)步驟驟(5)路徑設(shè)置設(shè)置H文件路徑:(1).\Libraries\STM32F10x_StdPeriph_Driver\inc(2).\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x(3).\include(包含stm32f10x_it.h、stm32f10x_conf.h以及其它用戶戶自定義的頭頭文件)CT117E程序設(shè)計(jì)編寫一個(gè)應(yīng)用用程序(1)main.c#include“stm32f10x.h”/*#include““stm32f10x_lib.h”*/intmain(void){RCC_Configuration();/*外設(shè)時(shí)鐘使能能*/GPIO_Configuration();/*處理器IO引腳配置*/NVIC_Configuration();/*中斷控制器配配置*/USART_Configuration();/*串口配置函數(shù)數(shù)*/……Sys_Init();/*系統(tǒng)初始化*/while(1){……}}CT117E程序設(shè)計(jì)編寫一個(gè)應(yīng)用用程序(2)stm32f10x_it.c#include“stm32f103x_it.h””externunsignedcharRx;voidUSART1_IRQHandler(void)//串口中斷服務(wù)務(wù)函數(shù){if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET);{Rx=USART_ReceiveData(USART1);}USART_ClearITPendingBit(USART1,USART_IT_RXNE);//清除中斷標(biāo)志志位}CT117E程序設(shè)計(jì)STM32外設(shè)模塊介紹紹-GPIOIO引腳功能IO引腳的結(jié)構(gòu)IO引腳編程方法法IO引腳測試程序序-LED控制IO引腳測試程序序-Buzzer控制STM32IO引腳功能通用I/O單獨(dú)的位設(shè)置置或位清除外部中斷/喚醒線復(fù)用功能(AF)和重映射GPIO鎖定機(jī)制CT117E程序設(shè)計(jì)CT117E程序設(shè)計(jì)STM32IO引腳結(jié)構(gòu)(1)CT117E程序設(shè)計(jì)STM32IO引腳結(jié)構(gòu)(2)CT117E程序設(shè)計(jì)STM32IO引腳編程方法法使能相應(yīng)引腳腳時(shí)鐘源根據(jù)外設(shè)配置置引腳工作模模式操作IO引腳輸入輸出出CT117E程序設(shè)計(jì)//LED測試程序#include“stm32f10x.h”//頭文件voidGPIO_Configuration(void);//函數(shù)聲明voiddelay(u32t);//函數(shù)聲明intmain(void){unsignedchari;GPIO_Configuration();//GPIO引腳配置while(1)//循環(huán){for(i=0;i<8;i++){GPIO_Write(GPIOC,~(1<<(8+i)));//LED循環(huán)點(diǎn)亮GPIO_SetBits(GPIOD,GPIO_Pin_2);GPIO_ResetBits(GPIOD,GPIO_Pin_2);//鎖存器鎖存delay(500000);//延時(shí)}}}CT117E程序設(shè)計(jì)//Buzzer測試程序#include"stm32f10x.h"voidGPIO_Configuration(void);voiddelay(u32t);intmain(void){GPIO_Configuration();//蜂鳴器引腳配配置while(1){GPIO_SetBits(GPIOB,GPIO_Pin_4);//打開蜂鳴器delay(3000000);GPIO_ResetBits(GPIOB,GPIO_Pin_4);//關(guān)閉蜂鳴器delay(3000000);}}CT117E程序設(shè)計(jì)STM32外設(shè)模塊介紹紹-SysTickSysTick介紹SysTick編程方法基于SysTick的毫秒延時(shí)演演示程序基于SysTick的按鍵功能測測試?yán)藽T117E程序設(shè)計(jì)SysTick介紹24位減法計(jì)數(shù)器器,自動(dòng)裝載載定時(shí)初值計(jì)數(shù)頻率為內(nèi)內(nèi)核時(shí)鐘SysTicks應(yīng)用產(chǎn)生一個(gè)精準(zhǔn)準(zhǔn)的延時(shí)函數(shù)數(shù)產(chǎn)生操作系統(tǒng)統(tǒng)的時(shí)鐘節(jié)拍拍SysTick編程方法SysTick配置函數(shù)(core_cm3.h):static__INLINEuint32_tSysTick_Config(uint32_tticks)//例程#include“stm32f10x.h”intmain(void){SysTick_Config(SystemCoreClock/1000);//配置Systick時(shí)鐘配置、中中斷配置、重重載值//重新載入值:SysTick->LOAD=(ticks&SYSTICK_MAXCOUNT)-1;//#denfineSYSTICK_MAXCOUNT((1<<24)–1)……}CT117E程序設(shè)計(jì)基于SysTick的毫秒延時(shí)演演示程序main.c#include“stm32f10x.h”voidGPIO_Configuration(void);intmain(void){GPIO_Configuration();//GPIO配置Systick_Config(SystemCoreClock/1000);//SysTick配置……while(1);}stm32f10x_it.cvoidSysTick_Handler(void)//Systick中斷服務(wù)函數(shù)數(shù){TimingDelay_Decrement();}CT117E程序設(shè)計(jì)CT117E程序設(shè)計(jì)基于SysTick的按鍵功能測測試?yán)贪存I區(qū)抖方法法(硬件):RS觸發(fā)器濾波電容按鍵去抖動(dòng)((軟件):軟件延時(shí)STM32外設(shè)模塊介紹紹-RTCSTM32RTC構(gòu)成STM32RTC的編程方法RTC測試?yán)藽T117E程序設(shè)計(jì)CT117E程序設(shè)計(jì)STM32RTC的時(shí)鐘源LSI振蕩器、LSE振蕩器或HSE振蕩器128分頻STM32RTC構(gòu)成(1)APB1接口部分RTC核心部分預(yù)分頻模塊32位獨(dú)立定時(shí)計(jì)計(jì)數(shù)器CT117E程序設(shè)計(jì)STM32RTC構(gòu)成(2)STM32RTC的編程方法((1)打開電源管理理和備份寄存存器時(shí)鐘使能RTC和備份寄存器器的訪問選擇時(shí)鐘源使能中斷設(shè)置RTC預(yù)分頻器fTR_CLK=fRTCCLK/(PRL[19:0]+1)fTR_CLK=fRTCCLK/(PRL[19:0]+1)時(shí)鐘源32.768KHz,預(yù)分頻裝載載寄存器值為為0x7FFFFCT117E程序設(shè)計(jì)STM32RTC的編程方法((2)voidRTC_Configuration(void){RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE);RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP,ENABLE);PWR_BackupAccessCmd(ENABLE);//使能RTC及備份寄存器器的訪問BKP_DeInit();//BKP外設(shè)復(fù)位RCC_LSICmd(ENABLE);//打開因此使用用內(nèi)部低速振振蕩器while(RCC_GetFlagStatus(RCC_FLAG_LSIRDY)==RESET);//等待LSI準(zhǔn)備就緒RCC_RTCCLKConfig(RCC_RTCCLKSource_LSI);//選擇時(shí)鐘源RCC_RTCCLKCmd(ENABLE);//使能RTC時(shí)鐘RTC_WaitForSynchro();//等待RTC時(shí)鐘與APB時(shí)鐘同步RTC_WaitForLastTask();RTC_ITConfig(RTC_IT_SEC,ENABLE);//使能RTC秒中斷RTC_WaitForLastTask();//等待RTC寄存器完成寫寫操作RTC_SetPrescaler(40000);//設(shè)置RTC寄存器預(yù)分頻頻值產(chǎn)生1秒信號(hào)RTC_WaitForLastTask();//等待RTC寄存器完成寫寫操作}CT117E程序設(shè)計(jì)STM32RTC測試?yán)蘨ntmain(void){NVIC_Configuration();//中斷配置RTC_Configuration();//RTC配置RTC_WaitForLastTask();//等待上次寫操操作完成RTC_SetCounter(RTCTime);//將計(jì)數(shù)值寫入入RTC寄存器RTC_WaitForLastTask();STM3210B_LCD_Init();//LCD初始化LCD_Clear(Black);LCD_SetTextColor(White);LCD_SetBackColor(Black);while(1){RTC_LCDDisplay();//獲取時(shí)間并通通過LCD顯示}}CT117E程序設(shè)計(jì)STM32USART結(jié)構(gòu)STM32USART引腳配置STM32USART增強(qiáng)功能STM32USART硬件流控STM32USART的編程方法STM32USART中斷測試程序序CT117E程序設(shè)計(jì)STM32USART引腳配置(1)CT117E程序設(shè)計(jì)STM32USART引腳配置(2)CT117E程序設(shè)計(jì)STM32USART增強(qiáng)功能LIN模式USART同步模式USART單線半雙工通通信USART的智能卡功能能USART的IrDA模式USART的DMA通信CT117E程序設(shè)計(jì)STM32USART硬件流控CT117E程序設(shè)計(jì)STM32USART編程方法(1)使能串口及GPIO引腳時(shí)鐘源復(fù)位串口串口波特率及及其它配置數(shù)據(jù)發(fā)送與接接收串口狀態(tài)查詢?cè)僀T117E程序設(shè)計(jì)STM32USART編程方法(2)voidUSART_Configuration(void){USART_InitStructure.USART_BaudRate=9600;//設(shè)置串口傳輸輸波特率為9600USART_InitStructure.USART_WordLength=USART_WordLength_8b;USART_InitStructure.USART_StopBits=USART_StopBits_1;//1位停止位USART_InitStructure.USART_Parity=USART_Parity_No;//無奇偶校驗(yàn)USART_InitStructure.USART_HardwareFlowControl=\USART_HardwareFlowControl_None;//禁能硬件流控控制模式USART_InitStructure.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;USART_Init(USART1,&USART_InitStructure);//USART1配置USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);//使能USART1接收中斷//USART_ITConfig(USART1,USART_IT_TXE,ENABLE);//使能USART1發(fā)送中斷USART_Cmd(USART1,ENABLE);//使能串口}CT117E程序設(shè)計(jì)STM32USART中斷測試程程序(1)intmain(void){GPIO_Configuration();NVIC_Configuration();//LCD初始化STM3210B_LCD_Init();LCD_Clear(Black);LCD_SetBackColor(Black);LCD_SetTextColor(White);USART_Configuration();while(1){if(RxOver==1){//Line:X方向顯示起起始地址,,Column:Y方向顯示起起始地址LCD_DisplayChar(Line*20,Column*16,RxByte);CT117E程序設(shè)計(jì)STM32USART中斷測試程程序(2)Column--;if(Column==0){Column=20;Line++;if(Line==12){LCD_Clear(Black);//寫滿清
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度企業(yè)年會(huì)短視頻拍攝制作合同
- 二零二五年度戶外廣告發(fā)布合作合同
- 二零二五年度草原雇傭放羊與生態(tài)補(bǔ)償協(xié)議
- 二零二五年度資質(zhì)借用及資源共享協(xié)議
- 2025年度施工安全協(xié)議個(gè)人責(zé)任履行細(xì)則
- 二零二五年度房地產(chǎn)項(xiàng)目銷售代理與節(jié)能環(huán)保技術(shù)合作合同
- 二零二五年度休閑度假村包租合作合同
- 二零二五年度醫(yī)療行業(yè)勞動(dòng)合同管理規(guī)范與醫(yī)護(hù)人員保障措施
- 掛靠證件合同模板(2025年度)適用于文化創(chuàng)意產(chǎn)業(yè)
- 二零二五年度電子商務(wù)借款居間服務(wù)合同協(xié)議
- 2024年財(cái)政部會(huì)計(jì)法律法規(guī)答題活動(dòng)題目及答案一
- 《冠心病》課件(完整版)
- 餐廳服務(wù)員禮儀培訓(xùn)(30張)課件
- 肺結(jié)核共45張課件
- SCI論文寫作031112課件
- (完整)PICC導(dǎo)管堵塞的預(yù)防及處理ppt
- 公司舉辦讀書分享會(huì)活動(dòng)策劃5篇
- 行政法整套ppt課件完整版教學(xué)教程最全電子講義(最新)
- Q∕SY 1802-2015 石油煉制與化工裝置工藝設(shè)計(jì)包編制規(guī)范
- 人工挖孔樁防護(hù)驗(yàn)收表(范本模板)
- 麥琴每日讀經(jīng)計(jì)劃表
評(píng)論
0/150
提交評(píng)論