今天給大家分享一下STM32 流水燈簡(jiǎn)單的仿真吧,我感覺這個(gè)提供有用的,但是自己也是第一次使用,主要是感覺曲線很高級(jí)。在PWM中查看脈寬很有用。
code: led.c
#include "led.h"#include "delay.h"/*GPIO的控制寄存器的配置1、配置輸出引腳2、打開對(duì)應(yīng)的輸出的寄存器的時(shí)鐘3、配置引腳輸出的模式:強(qiáng)上拉、推完、開漏輸出4、配置輸出的速度。*/void Led_funcing(){GPIO_DeInit(LED_GPIO_PORT);// 注意這里的函數(shù)非常的重要,這里是將對(duì)應(yīng)的GPIO端口初始化成默認(rèn)的樣子,因?yàn)檫@個(gè)端口可能在以前使用過,其他的配置可能發(fā)生了改變GPIO_InitTypeDef GPIOC_LED_Init; // 定義GPIO的結(jié)構(gòu)體,也就是外設(shè)的結(jié)構(gòu)體RCC_APB2PeriphClockCmd( LED_GPIO_CLK,ENABLE); //打開對(duì)應(yīng)的GPIO的時(shí)鐘,注意這里不同的外設(shè)可能掛載的時(shí)鐘不同,所以需要開原理圖,GPIOC_LED_Init.GPIO_Pin=LED_GPIO_PIN ; // 配置需要使用的引腳GPIOC_LED_Init.GPIO_Mode=GPIO_Mode_Out_PP; //配置引腳的輸出的模式GPIOC_LED_Init.GPIO_Speed=GPIO_Speed_50MHz; // 配置輸出的頻率,這個(gè)在輸入的時(shí)候不需要配置GPIO_Init(LED_GPIO_PORT,&GPIOC_LED_Init); // 使用初始化函數(shù)初始化剛剛定義的結(jié)構(gòu)體,以及對(duì)應(yīng)的GPIO端口}
code: mian.c
#include "stm32f10x.h"#include "led.h"#include "delay.h"/*功能的實(shí)現(xiàn),注意在KEIL5中不要使用中文的空格這樣將會(huì)出現(xiàn)錯(cuò)誤。重點(diǎn),重點(diǎn),重點(diǎn)*/int main(){Led_funcing();// int k=5;while(1){GPIO_SetBits(LED_GPIO_PORT, LED_GPIO_PIN ); // 將對(duì)應(yīng)的GPIO端口對(duì)應(yīng)的引腳設(shè)置為高電平delay(10000);//延時(shí)GPIO_ResetBits(LED_GPIO_PORT, LED_GPIO_PIN); // 將對(duì)應(yīng)的GPIO端口對(duì)應(yīng)的引腳設(shè)置成低電平delay(10000);//延時(shí),}}
總結(jié):
1、在進(jìn)行不同功能函數(shù)的編寫的時(shí)候,最好在USER文件夾下面建一個(gè)對(duì)應(yīng)的文件,注意有C文件,那么就一定有H文件。
2、在編譯C文件的時(shí)候,首先在配中找到對(duì)應(yīng)的H文件的文件夾目錄。
3、不同的芯片對(duì)應(yīng)的庫函數(shù)具有一定的差異,所以在進(jìn)行引入庫的時(shí)候,可能會(huì)出錯(cuò)誤。
4、如果在編譯的時(shí)候出現(xiàn)相關(guān)的庫函數(shù)文件無法正常的打開,那么首先需要查看是否指定相關(guān)的路徑。
5、在魔術(shù)棒中的文件的輸出最好都定義到自己的文件夾中,這樣便于進(jìn)行需要找。
配置仿真:
1,選擇使用對(duì)應(yīng)的CPU即可

2,查看狀態(tài)配置

3,仿真結(jié)果

4,最后仿真的結(jié)果:時(shí)間與單片機(jī)上實(shí)際運(yùn)行的時(shí)間一致,如果不一致,請(qǐng)查看晶振或者時(shí)鐘配置。
-
led
+關(guān)注
關(guān)注
243文章
24615瀏覽量
691055 -
STM32
+關(guān)注
關(guān)注
2310文章
11164瀏覽量
373559 -
keil
+關(guān)注
關(guān)注
69文章
1230瀏覽量
172690 -
仿真調(diào)試
+關(guān)注
關(guān)注
0文章
9瀏覽量
7715
發(fā)布評(píng)論請(qǐng)先 登錄
LAT1621_STM32N6 在 PSRAM 上運(yùn)行代碼的調(diào)試
使用 Keil Studio for Visual Studio Code開發(fā) STM32 設(shè)備
Renesas E1/E20 仿真器:設(shè)計(jì)與調(diào)試的全方位指南
瑞薩E1/E20仿真器:設(shè)計(jì)、調(diào)試與使用全解析
Renesas E1/E20 仿真器:設(shè)計(jì)與調(diào)試全解析
LAT1187+在 Keil 中使用 STM32CubeProgrammer應(yīng)用筆記
LAT1198+通過 KEIL 制作 QSPI 接口的外部 Flash 下載算法應(yīng)用筆記
【瑞薩RA6E2】 配置Keil開發(fā)環(huán)境+使用按鍵控制LED+串口/調(diào)試器燒錄程序
請(qǐng)問jlink的調(diào)試跟keil的調(diào)試有啥區(qū)別???
如何使用CMSIS DAP仿真器調(diào)試,通過NucleiStudio調(diào)試蜂鳥SOC
stm32H745 M4核不能調(diào)試和下載怎么解決?
keil調(diào)試階段無法進(jìn)行仿真,能進(jìn)到仿真界面,但是無法執(zhí)行程序怎么解決?
STM32H745XIH6不能進(jìn)行雙核調(diào)試,CM4不能進(jìn)行在線調(diào)試怎么解決?
如何通過J-Link實(shí)現(xiàn)STM32H5控制調(diào)試端口
Keil仿真調(diào)試STM32與LED
評(píng)論