91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CW32數(shù)字電壓電流表軟件教程-實(shí)驗(yàn)一:LED原理與驅(qū)動(dòng)

CW32生態(tài)社區(qū) ? 來(lái)源:CW32生態(tài)社區(qū) ? 作者:CW32生態(tài)社區(qū) ? 2024-05-31 15:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

2.1.LED燈基礎(chǔ)知識(shí)

2.1.1.LED燈結(jié)構(gòu)組成

LED燈,也稱發(fā)光二極管,是一種能夠?qū)㈦娔苻D(zhuǎn)化為可見(jiàn)光的固態(tài)的半導(dǎo)體器件,它可以直接把電轉(zhuǎn)化為光。LED的內(nèi)部是一個(gè)半導(dǎo)體的晶片,晶片的一端附在一個(gè)支架上,一端是負(fù)極,另一端連接電源的正極,整個(gè)晶片環(huán)-氧樹(shù)脂封裝起來(lái)。常見(jiàn)的LED燈如圖2-1所示。

圖2-1 常見(jiàn)LED燈

2.1.2.LED燈發(fā)光原理

半導(dǎo)體晶片由兩部分組成,一部分是P型半導(dǎo)體,另一端是N型半導(dǎo)體。這兩種半導(dǎo)體連接起來(lái)的時(shí)候,它們之間就形成了一個(gè)P-N結(jié)。當(dāng)電流通過(guò)導(dǎo)線作用于這個(gè)晶片的時(shí)候,電子就會(huì)被推向P區(qū),在P區(qū)里電子跟空穴復(fù)合,然后就會(huì)以光子的形式發(fā)出能量,這就是LED燈發(fā)光的原理。

2.1.3.LED燈驅(qū)動(dòng)原理

LED 驅(qū)動(dòng)指的是通過(guò)穩(wěn)定的電源為 LED 提供合適的電流和電壓,使其正常工作點(diǎn)亮。LED 驅(qū)動(dòng)方式主要有恒流和恒壓兩種。限定電流的恒流驅(qū)動(dòng)是最常見(jiàn)的方式,因?yàn)?LED 燈對(duì)電流敏感,電流大于其額定值可能導(dǎo)致?lián)p壞。恒流驅(qū)動(dòng)保證了穩(wěn)定的電流,從而確保了 LED 安全。

LED 燈的驅(qū)動(dòng)比較簡(jiǎn)單,只需要給將對(duì)應(yīng)的正負(fù)極接到單片機(jī)的正負(fù)極即可驅(qū)動(dòng)。LED的接法也分有兩種,灌入電流和輸出電流。

圖2-2 LED接法示例

  • 灌入電流指的是LED的供電電流是由外部提供電流,將電流灌入我們的MCU;風(fēng)險(xiǎn)是當(dāng)外部電源出現(xiàn)變化時(shí),會(huì)導(dǎo)致MCU的引腳燒壞。
  • 輸出電流指的是由MCU提供電壓電流,將電流輸出給LED;如果使用 MCU的GPIO 直接驅(qū)動(dòng) LED,則驅(qū)動(dòng)能力較弱,可能無(wú)法提供足夠的電流驅(qū)動(dòng) LED。

需要注意的 是 LED 燈的顏色不同,對(duì)應(yīng)的電壓也不同。電流不可過(guò)大,通常需要接入220歐姆到10K歐姆左右的限流電阻,限流電阻的阻值越大,LED的亮度越暗。

2.2.LED燈原理圖

CW32F003小藍(lán)板關(guān)于LED燈的原理圖如圖2-3所示

圖 2-3 小藍(lán)板LED燈原理圖

2.3.LED燈驅(qū)動(dòng)流程(庫(kù)函數(shù))

通過(guò)上面的原理圖可以了解到,LED2中負(fù)極接到了電源地,LED2的正極經(jīng)限流電阻R3連接到電源正。當(dāng)核心板上電時(shí),使LED2導(dǎo)通,這時(shí)便有電流流過(guò)發(fā)光二極管LED2,使LED2發(fā)光指示電源接入;

LED1的正極經(jīng)限流電阻R5接到電源正極,LED1的負(fù)極連接到單片機(jī)的GPIO口上,通過(guò)LED燈的驅(qū)動(dòng)原理,只需要將相應(yīng)GPIO(PC0)配置為低電平即可點(diǎn)亮LED1。CW32F003小藍(lán)板的LED部分實(shí)物圖如圖2-4所示

圖 2-4 小藍(lán)板LED實(shí)物圖

2.3.1.配置流程

一般我們使用GPIO的端口,都需要有以下幾個(gè)步驟。

  • 開(kāi)啟GPIO的端口時(shí)鐘
  • 配置GPIO的模式
  • 配置GPIO的輸出

從開(kāi)發(fā)板原理圖了解到LED2接的是單片機(jī)的PC0。我們要使能LED就需要配置GPIOC端口。下面我們就以LED1接的PC0進(jìn)行介紹。

2.3.1.1.開(kāi)啟CW32F003系統(tǒng)內(nèi)部時(shí)鐘

CW32的系統(tǒng)內(nèi)部時(shí)鐘默認(rèn)并不是我們想要的運(yùn)行頻率,在使用CW32之前我們需要先配置內(nèi)部時(shí)鐘樹(shù)。查找CW32F003的用戶手冊(cè)可以找到系統(tǒng)內(nèi)部時(shí)鐘樹(shù)如下圖:

圖2-5 CW32F003內(nèi)部時(shí)鐘樹(shù)

在CW32的庫(kù)函數(shù)中找到cw32f003_rcc.h,頭文件中有時(shí)鐘樹(shù)相關(guān)配置的函數(shù),如下圖:

圖2-6 時(shí)鐘樹(shù)相關(guān)配置函數(shù)

void RCC_Configuration(void)
{
  FLASH_SetLatency(FLASH_Latency_2); // 設(shè)置主頻為48MHZ需要注意,F(xiàn)lah的訪問(wèn)周期需要更改為FLASH_Latency_2。
  RCC_HSI_Enable(RCC_HSIOSC_DIV1);   // 設(shè)置頻率為48M
  RCC_SYSCLKSRC_Config(RCC_SYSCLKSRC_HSI);  //選擇SYSCLK時(shí)鐘源  48MHz
  RCC_HCLKPRS_Config(RCC_HCLK_DIV1);  //配置SYSTICK到HCLK分頻系數(shù)  48MHz
  RCC_PCLKPRS_Config(RCC_PCLK_DIV8); //配置HCLK 到 PCLK的分頻系數(shù)  6MHz
}

2.3.1.2.開(kāi)啟GPIO的端口時(shí)鐘

CW32的外時(shí)鐘默認(rèn)是全部關(guān)閉,使用GPIO外設(shè)之前我們需要先開(kāi)啟對(duì)應(yīng)的時(shí)鐘。

在CW32提供的庫(kù)函數(shù)中找到cw32f003_rcc.h,這個(gè)頭文件包含了所有時(shí)鐘相關(guān)的函數(shù)接口。外設(shè)時(shí)鐘的接口如下圖所示:

圖2-7 GPIO配置相關(guān)函數(shù)

LED1的控制IO是PC0,因此需要打開(kāi)GPIOC對(duì)應(yīng)的時(shí)鐘,代碼如下:

__RCC_GPIOC_CLK_ENABLE();//打開(kāi)GPIOC的時(shí)鐘

2.3.1.3.配置GPIO初始化

GPIO初始化包含了模式,中斷使能,io引腳位號(hào)。CW32的GPIO初始化是先把所有初始化項(xiàng)寫(xiě)在一個(gè)結(jié)構(gòu)體里面,然后把結(jié)構(gòu)體傳入帶初始化函數(shù)里,完成初始化功能。與GPIO相關(guān)的函數(shù)接口都在cw32f003_gpio.h頭文件里面,我們先看GPIO模式有哪些,如下圖所示:

圖2-8 GPIO模式

GPIO模式包含了模擬輸入,數(shù)字輸入,數(shù)字上拉輸入,數(shù)字下拉輸入,數(shù)字推挽輸出,數(shù)字開(kāi)漏輸出模式。根據(jù)發(fā)光二極管控制原理,PC0接在LED的反向端,因此PC0為低電平時(shí),LED點(diǎn)亮。我們需要PC0輸出高低電平,模式需要選擇數(shù)字輸出模式,由于開(kāi)漏模式需要外部有上拉或者下拉電阻才可輸出高低電平,所以我們選擇推挽模式。代碼如下:

GPIO_Init_Struct.IT = GPIO_IT_NONE;

GPIO位號(hào)如下圖所示:

圖2-10 GPIO位腳

LED的控制端為PC0,最后的這個(gè)0就是位號(hào),配置代碼如下:

GPIO_Init_Struct.Pins = GPIO_PIN_0;

以上配置就完成了GPIO的結(jié)構(gòu)體初始化,然后我們需要調(diào)用初始化函數(shù),在cw32f003_rcc.h里找到void GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init);包含了兩個(gè)參數(shù),第一個(gè)參數(shù)是GPIO的基地址,第二個(gè)參數(shù)是初始化配置結(jié)構(gòu)體。調(diào)用代碼如下:

GPIO_Init(CW_GPIOC, &GPIO_Init_Struct);

結(jié)合以上配置,完整代碼如下:

GPIO_InitTypeDef GPIO_Init_Struct;
  __RCC_GPIOC_CLK_ENABLE();
  GPIO_Init_Struct.IT   = GPIO_IT_NONE;
  GPIO_Init_Struct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_Init_Struct.Pins = GPIO_PIN_0;
  GPIO_Init(CW_GPIOC, &GPIO_Init_Struct);

2.3.1.4.配置LED輸出

配置好GPIO之后,就可以進(jìn)行點(diǎn)燈了。就是讓PC0輸出高低電平。在cw32f003_gpio.h頭文件中可以找到函數(shù)

GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pins, GPIO_PinState PinState);

傳參有三個(gè),第一個(gè)是第一個(gè)參數(shù)是GPIO的基地址,第二個(gè)參數(shù)是引腳位號(hào),第三個(gè)參數(shù)是輸出狀態(tài)。

GPIO_WritePin(CW_GPIOC,GPIO_PIN_0,GPIO_Pin_SET);//PC0輸出高電平
GPIO_WritePin(CW_GPIOC,GPIO_PIN_0,GPIO_Pin_RESET);//PC0輸出低電平

我們要點(diǎn)亮LED1根據(jù)上文的電路圖可知要將PC0置低。2.3.1.5.程序下載接線我們使用DAP-Link作為程序下載媒介,DAP-Link的接線圖如下。其中藍(lán)色(3.3V)、綠色(GND)、紫色(數(shù)據(jù)線SWD)、灰色(時(shí)鐘信號(hào)線SCK),與圖2-12一一對(duì)應(yīng)。

圖2-11 DAP-Link接線圖

圖2-12 CW32F003程序下載接線

2.3.2.實(shí)驗(yàn)效果

最終的實(shí)驗(yàn)效果如下圖所示:

圖2-13 LED點(diǎn)亮實(shí)驗(yàn)現(xiàn)象

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • led
    led
    +關(guān)注

    關(guān)注

    243

    文章

    24596

    瀏覽量

    690832
  • 發(fā)光二極管
    +關(guān)注

    關(guān)注

    14

    文章

    1243

    瀏覽量

    69125
  • 電壓電流表
    +關(guān)注

    關(guān)注

    0

    文章

    25

    瀏覽量

    2279
  • CW32
    +關(guān)注

    關(guān)注

    1

    文章

    299

    瀏覽量

    1846
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    請(qǐng)問(wèn)CW32中的CW是啥意思?

    CW32中的CW是啥意思?
    發(fā)表于 02-02 07:10

    CW32仿真器是什么?

    CW32仿真器是什么
    發(fā)表于 01-05 08:04

    CW32單片機(jī)如何讓生活更便捷

    單片機(jī)有著巨大的需求,例如在燃?xì)?b class='flag-5'>表、水表、料位開(kāi)關(guān)等設(shè)備中。此外,隨著綠色能源和節(jié)能環(huán)保理念的普及,低功耗的CW32單片機(jī)在LED調(diào)光板、BLDC無(wú)刷電機(jī)驅(qū)動(dòng)器等產(chǎn)品中的應(yīng)用也將越來(lái)越
    發(fā)表于 12-11 06:11

    CW32不是寬電壓供電嗎?為啥好多設(shè)計(jì)還是加個(gè)LDO3.3V的電源?

    CW32不是寬電壓供電么?為啥好多設(shè)計(jì)還是加個(gè)LDO3.3V的電源?
    發(fā)表于 12-08 08:11

    CW32 MCU在高頻率運(yùn)行下的系統(tǒng)穩(wěn)定性的提升方案

    問(wèn)題,并提出系列應(yīng)對(duì)措施,包括硬件設(shè)計(jì)改進(jìn)和軟件優(yōu)化策略,以確保系統(tǒng)在高頻工作環(huán)境中的可靠性和持續(xù)穩(wěn)定運(yùn)行。 具體內(nèi)容包括: 高頻運(yùn)行對(duì)MCU的影響分析: 探討CW32 MCU在高頻率運(yùn)行時(shí),對(duì)電源
    發(fā)表于 12-04 08:04

    基于芯源CW32 MCU的LED閃爍示例及代碼分析

    最近我在項(xiàng)目中使用了芯源的CW32 MCU,這是款非常適合物聯(lián)網(wǎng)和低功耗應(yīng)用的微控制器。在初步學(xué)習(xí)和使用中,我做了個(gè)簡(jiǎn)單的LED閃爍實(shí)驗(yàn)
    發(fā)表于 12-04 06:52

    CW32 MCU溫度監(jiān)測(cè)應(yīng)用

    最近,我在項(xiàng)目中使用CW32 MCU,來(lái)實(shí)現(xiàn)個(gè)簡(jiǎn)單的溫度監(jiān)測(cè)系統(tǒng)。CW32的靈活性和性能讓我在這個(gè)應(yīng)用中得心應(yīng)手。以下是我的實(shí)現(xiàn)過(guò)程和代碼示例。 應(yīng)用簡(jiǎn)介本項(xiàng)目通過(guò)連接個(gè)溫度傳感器
    發(fā)表于 12-03 08:03

    基于芯源半導(dǎo)體MCU cw32芯片制作的USB電壓電流表

    1、項(xiàng)目功能介紹 基于芯源半導(dǎo)體MCU cw32芯片制作 USB電壓電流表 基于芯源半導(dǎo)體MCU cw32芯片+INA199芯片制作 USB電壓電流表,精度1%??梢詸z測(cè)
    發(fā)表于 12-02 06:39

    cw32 systick怎么用?

    cw32 systick怎么用
    發(fā)表于 12-01 08:10

    CW32嵌入式軟件開(kāi)發(fā)的必備知識(shí)

    嵌入式軟件開(kāi)發(fā)作為計(jì)算機(jī)科學(xué)和電子工程的交叉領(lǐng)域,要求開(kāi)發(fā)人員具備系列的專業(yè)知識(shí)和技能。 而基于CW32的嵌入式軟件開(kāi)發(fā)必備知識(shí)包括以下部分: 1 、編程語(yǔ)言 熟練掌握C(C++
    發(fā)表于 11-28 07:48

    【活動(dòng)評(píng)測(cè)】基于CW32的wegui實(shí)驗(yàn)+代碼

    簡(jiǎn)介 最近參加了cw32生態(tài)社區(qū)的體驗(yàn)活動(dòng),CW32L012C8T6評(píng)估板是款非常典型的、用于展示和評(píng)估國(guó)產(chǎn)低功耗MCU的開(kāi)發(fā)板。它的核心價(jià)值在于讓開(kāi)發(fā)者能夠以極低的成本,接觸到武漢芯源半導(dǎo)體
    的頭像 發(fā)表于 11-19 16:37 ?824次閱讀
    【活動(dòng)評(píng)測(cè)】基于<b class='flag-5'>CW32</b>的wegui<b class='flag-5'>實(shí)驗(yàn)</b>+代碼

    CW32 MCU用什么IDE開(kāi)發(fā)?

    推薦使用IAR Embedded Workbench for ARM、Keil μVision for ARM等IDE開(kāi)發(fā)CW32 MCU應(yīng)用,其中新版本IAR EWARM直接支持CW32 MCU,Keil MDK-ARM則需要安裝CW
    發(fā)表于 11-12 07:52

    CW32 MCU有哪些系列?

    目前CW32 MCU有通用高性能MCU、安全低功耗MCU、無(wú)線射頻MCU等3個(gè)系列。其中射頻MCU集成了無(wú)線收發(fā)器,主要包括CW32R031(2.4GHz BLE-Lite)系列和CW32W031(Sub-1G)系列。
    發(fā)表于 11-12 07:34

    CW32 MCU的工作電壓、工作溫度是多少?

    CW32通用型MCU工作電壓是1.65V~5.5V,射頻MCU工作電壓則是1.8V/2.2V~3.6V;通用型CW32F系列MCU,比如:CW
    發(fā)表于 11-12 06:49

    CW32 MCU用什么仿真器開(kāi)發(fā)?

    理論上各主流IDE枚舉的、支持ARM Cortex內(nèi)核的所有硬件仿真器,比如:J-LINK,ULINK,DAP,ST-Link等,都可以仿真、下載CW32 MCU的應(yīng)用代碼。如果想實(shí)現(xiàn)量產(chǎn)或者離線下載應(yīng)用代碼,則必須配套支持CW32 MCU的PC端
    發(fā)表于 11-12 06:01