首頁(yè) > 評(píng)測(cè) > [ LKS32MC037E開(kāi)發(fā)板評(píng)測(cè) ]+環(huán)境搭建與點(diǎn)燈實(shí)驗(yàn)
[ LKS32MC037E開(kāi)發(fā)板評(píng)測(cè) ]+環(huán)境搭建與點(diǎn)燈實(shí)驗(yàn)
- [導(dǎo)讀]
- #申請(qǐng)?jiān)瓌?chuàng)# 開(kāi)發(fā)板LKS32MC037E已收到有段時(shí)間了,前段時(shí)間嘗試采用MCPWM方式去驅(qū)動(dòng)尼得科無(wú)刷直流電機(jī),帶霍爾接口的。電機(jī)一直原地抖動(dòng),并未能轉(zhuǎn)動(dòng)起來(lái),手里要有臺(tái)示波器就好了。今天星期六,也是來(lái)年工作的第一個(gè)
#申請(qǐng)?jiān)瓌?chuàng)# 開(kāi)發(fā)板LKS32MC037E已收到有段時(shí)間了,前段時(shí)間嘗試采用MCPWM方式去驅(qū)動(dòng)尼得科無(wú)刷直流電機(jī),帶霍爾接口的。電機(jī)一直原地抖動(dòng),并未能轉(zhuǎn)動(dòng)起來(lái),手里要有臺(tái)示波器就好了。今天星期六,也是來(lái)年工作的第一個(gè)周末,先來(lái)分享一下簡(jiǎn)單的點(diǎn)燈測(cè)試。
LKS32MC037E開(kāi)發(fā)套件包含MCU板+功率底板,這款MCU搭建32位Cortex-M0內(nèi)核,主頻48MHz,采用SSOP24封裝,工業(yè)級(jí)工作溫度范圍,適用于有感BLDC、無(wú)感BLDC、有感FOC、無(wú)感FOC及步進(jìn)電機(jī)、永磁同步、異步電機(jī)等控制系統(tǒng)。也可適用于數(shù)字電源控制系統(tǒng)。LKS_EVB_MVPOWPRE_V2.0支持DC7~24V輸入,DC24V時(shí)功率在80W以下,可實(shí)現(xiàn)無(wú)感方波、有感或無(wú)感FOC控制,支持按鍵啟停和模擬電位器調(diào)速,F(xiàn)G輸出,串口通訊等功能。開(kāi)發(fā)板的系統(tǒng)資源框圖如下:
“LKS_EVB_MVPOWPRE_V2.0”板子的PCB點(diǎn)位圖如下,可以大致得了解各接口的布局。
從官網(wǎng):https://www.linkosemi.com/LKS03x/list.aspx可以獲取關(guān)于LKS32MC037E的開(kāi)發(fā)資源包(包括基于Keil的pack包)。電腦中已經(jīng)裝好Keil,只需將下載好的“Linko.LKS03x.1.0.6.pack”文件,雙擊打開(kāi)并安裝,后續(xù)打開(kāi)官方提供的demo例程即可選擇工程對(duì)應(yīng)的MCU型號(hào)。
此次實(shí)驗(yàn)意在點(diǎn)亮LED2,接下來(lái)我們根據(jù)官方提供的資料,找出LED2與MCU板上的LKS32MC037E連接管腳。
由此可見(jiàn),只需要將P1.4管腳輸出高電平則LED2燈被點(diǎn)亮,P1.4管腳輸出低電平則LED2熄滅。在GPIO參考例程中,簡(jiǎn)單修改即可點(diǎn)亮LED2.
復(fù)制代碼復(fù)制代碼復(fù)制代碼 編譯完成后,將JLink燒錄器連接到MCU板上的J1接口,Keil中的Debug中選擇J-LINK方式下載程序,識(shí)別到JLink調(diào)試器。
程序下載到MCU后,然后將蜂鳴器連接到MCU板上P1排針上的1、2管腳上,按一下RESET鍵,重啟開(kāi)發(fā)板,則會(huì)發(fā)現(xiàn)LED2點(diǎn)亮的同時(shí),蜂鳴器報(bào)警聲響起。此次簡(jiǎn)單的點(diǎn)燈測(cè)試就到此結(jié)束,感謝凌鷗提供的板子,至于電機(jī)驅(qū)動(dòng)功能評(píng)測(cè)部分,工程中還需要針對(duì)電機(jī)類(lèi)型進(jìn)行調(diào)試,參考例程的注釋比較專(zhuān)業(yè),沒(méi)有接觸過(guò)工業(yè)電機(jī)應(yīng)用行業(yè)的開(kāi)發(fā)者,理解起來(lái)還是比較吃力的,后續(xù)有時(shí)間調(diào)試再評(píng)測(cè)電機(jī)應(yīng)用方面的測(cè)試效果。
LKS32MC037E點(diǎn)LED2與鳴蜂鳴器
LKS32MC037E開(kāi)發(fā)套件包含MCU板+功率底板,這款MCU搭建32位Cortex-M0內(nèi)核,主頻48MHz,采用SSOP24封裝,工業(yè)級(jí)工作溫度范圍,適用于有感BLDC、無(wú)感BLDC、有感FOC、無(wú)感FOC及步進(jìn)電機(jī)、永磁同步、異步電機(jī)等控制系統(tǒng)。也可適用于數(shù)字電源控制系統(tǒng)。LKS_EVB_MVPOWPRE_V2.0支持DC7~24V輸入,DC24V時(shí)功率在80W以下,可實(shí)現(xiàn)無(wú)感方波、有感或無(wú)感FOC控制,支持按鍵啟停和模擬電位器調(diào)速,F(xiàn)G輸出,串口通訊等功能。開(kāi)發(fā)板的系統(tǒng)資源框圖如下:

“LKS_EVB_MVPOWPRE_V2.0”板子的PCB點(diǎn)位圖如下,可以大致得了解各接口的布局。

從官網(wǎng):https://www.linkosemi.com/LKS03x/list.aspx可以獲取關(guān)于LKS32MC037E的開(kāi)發(fā)資源包(包括基于Keil的pack包)。電腦中已經(jīng)裝好Keil,只需將下載好的“Linko.LKS03x.1.0.6.pack”文件,雙擊打開(kāi)并安裝,后續(xù)打開(kāi)官方提供的demo例程即可選擇工程對(duì)應(yīng)的MCU型號(hào)。

此次實(shí)驗(yàn)意在點(diǎn)亮LED2,接下來(lái)我們根據(jù)官方提供的資料,找出LED2與MCU板上的LKS32MC037E連接管腳。



由此可見(jiàn),只需要將P1.4管腳輸出高電平則LED2燈被點(diǎn)亮,P1.4管腳輸出低電平則LED2熄滅。在GPIO參考例程中,簡(jiǎn)單修改即可點(diǎn)亮LED2.
- #include "lks32mc03x_lib.h"
- #include "hardware_init.h"
- #include "delay.h"
- void Hardware_init(void)
- {
- __disable_irq(); /* 關(guān)閉中斷 中斷總開(kāi)關(guān) */
- SYS_WR_PROTECT = 0x7a83; /* 開(kāi)啟寫(xiě)使能*/
- IWDG_DISABLE(); /* 關(guān)閉獨(dú)立看門(mén)狗使能*/
- FLASH_CFG |= 0x00080000; /* FLASH 預(yù)取加速使能*/
-
- delay_init(48); /* 延時(shí)函數(shù)初始化時(shí)鐘48MHz*/
- GPIO_init(); /* GPIO初始化 */
- delay_us(100); /* 延時(shí)等待硬件初始化穩(wěn)定 */
- __enable_irq(); /* 開(kāi)啟總中斷 */
- }
- void Clock_Init(void)
- {
- SYS_WR_PROTECT = 0x7a83; /* 解除系統(tǒng)寄存器寫(xiě)保護(hù) */
- SYS_VolSelModule(1); /* 0: 3.3V ; 1: 5.0V*/
- SYS_AFE_REG0 |= BIT15; /* BIT15:PLLPDN */
- SoftDelay(100); /* 等待PLL穩(wěn)定*/
- SYS_CLK_CFG = 0x000001ff; /* BIT[9:8]:0: CLK_HS,1:PLL,2:LRC,3:LRC
- | BIT[7:0]CLK_DIV | 0x1ff對(duì)應(yīng)48M時(shí)鐘 */
- }
- void SystemInit(void)
- {
- Clock_Init(); /* 時(shí)鐘初始化 */
- }
- void GPIO_init(void)
- {
- GPIO_InitTypeDef GPIO_InitStruct;
- GPIO_StructInit(&GPIO_InitStruct);
- /* P1.4*/
- GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT; /*輸出模式*/
- GPIO_InitStruct.GPIO_Pin = GPIO_Pin_4;
- GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_NOPULL; /*不上拉*/
- GPIO_Init(GPIO1, &GPIO_InitStruct);
- GPIO_ResetBits(GPIO1, GPIO_Pin_4); /* LED2 滅*/
- }
- void SoftDelay(u32 cnt)
- {
- volatile u32 t_cnt;
- for (t_cnt = 0; t_cnt < cnt; t_cnt++)
- {
- __nop();
- }
- }
- #include "delay.h"
- #include "lks32mc03x_lib.h"
- static u32 fac_us = 0;
- static u32 fac_ms = 0;
- void delay_init(u32 SYSCLK)
- {
- SysTick->CTRL&=~(1<<2); //SYSTICK使用外部時(shí)鐘源,1/8 HCLK
- fac_us=SYSCLK/8; //不論是否使用OS,fac_us都需要使用,每產(chǎn)生1us,需要多少次數(shù),因?yàn)槭峭ㄟ^(guò)一個(gè)計(jì)數(shù)寄存器計(jì)時(shí)的。
- fac_ms=(u16)fac_us*1000; //非OS下,代表每個(gè)ms需要的systick時(shí)鐘數(shù)
- }
- void delay_us(u32 nus)
- {
- u32 temp;
- SysTick->LOAD=nus*fac_us; //時(shí)間加載
- SysTick->VAL=0x00; //清空計(jì)數(shù)器
- SysTick->CTRL=0x01 ; //開(kāi)始倒數(shù)
- do
- {
- temp=SysTick->CTRL;
- }while((temp&0x01)&&!(temp&(1<<16))); //等待時(shí)間到達(dá)
- SysTick->CTRL=0x00; //關(guān)閉計(jì)數(shù)器
- SysTick->VAL =0X00; //清空計(jì)數(shù)器
- }
- void delay_xms(u32 nms)
- {
- u32 temp;
- SysTick->LOAD=(u32)nms*fac_ms; //時(shí)間加載(SysTick->LOAD為24bit)
- SysTick->VAL =0x00; //清空計(jì)數(shù)器
- SysTick->CTRL=0x01 ; //開(kāi)始倒數(shù)
- do
- {
- temp=SysTick->CTRL;
- }while((temp&0x01)&&!(temp&(1<<16))); //等待時(shí)間到達(dá)
- SysTick->CTRL=0x00; //關(guān)閉計(jì)數(shù)器
- SysTick->VAL =0X00; //清空計(jì)數(shù)器
- }
- //延時(shí)nms
- //nms:0~65535
- void delay_ms(u32 nms)
- {
- #if 1
- u8 repeat=nms/540; //這里用540,是考慮到某些客戶(hù)可能超頻使用,
- //比如超頻到248M的時(shí)候,delay_xms最大只能延時(shí)541ms左右了
- u16 remain=nms%540;
- while(repeat)
- {
- delay_xms(540);
- repeat--;
- }
- if(remain)delay_xms(remain);
- #else
- u32 t_cnt;
- for(t_cnt = 0; t_cnt < nms*1000; t_cnt++)
- {
- __nop();
- }
- #endif
- }
- #include "lks32mc03x_lib.h"
- #include "hardware_init.h"
- #include "delay.h"
- int main(void)
- {
- Hardware_init(); /* 硬件初始化 */
- for (;;)
- {
- GPIO_SetBits(GPIO1, GPIO_Pin_4); /* LED2 亮*/
- delay_ms(300); /* 延時(shí)20ms*/
-
- GPIO_ResetBits(GPIO1, GPIO_Pin_4); /* LED2 滅*/
- delay_ms(300);
- }
- }

程序下載到MCU后,然后將蜂鳴器連接到MCU板上P1排針上的1、2管腳上,按一下RESET鍵,重啟開(kāi)發(fā)板,則會(huì)發(fā)現(xiàn)LED2點(diǎn)亮的同時(shí),蜂鳴器報(bào)警聲響起。此次簡(jiǎn)單的點(diǎn)燈測(cè)試就到此結(jié)束,感謝凌鷗提供的板子,至于電機(jī)驅(qū)動(dòng)功能評(píng)測(cè)部分,工程中還需要針對(duì)電機(jī)類(lèi)型進(jìn)行調(diào)試,參考例程的注釋比較專(zhuān)業(yè),沒(méi)有接觸過(guò)工業(yè)電機(jī)應(yīng)用行業(yè)的開(kāi)發(fā)者,理解起來(lái)還是比較吃力的,后續(xù)有時(shí)間調(diào)試再評(píng)測(cè)電機(jī)應(yīng)用方面的測(cè)試效果。
LKS32MC037E點(diǎn)LED2與鳴蜂鳴器
-
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評(píng)論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開(kāi)放投稿
行業(yè)新聞
熱門(mén)標(biāo)簽
論壇活動(dòng)
more+
公開(kāi)課
more+
項(xiàng)目外包
more+
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開(kāi)發(fā)
預(yù)算:¥1100000015小時(shí)前
- 12V汽車(chē)啟動(dòng)電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時(shí)前
- 數(shù)據(jù)可視化軟件 開(kāi)發(fā)
預(yù)算:¥5000023小時(shí)前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動(dòng)電機(jī)控制器開(kāi)發(fā)
預(yù)算:¥1100001天前