国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于STM32F103ZET6單片機驅(qū)動SM16306SJ控制8個LED燈的系統(tǒng)設(shè)計

這篇具有很好參考價值的文章主要介紹了基于STM32F103ZET6單片機驅(qū)動SM16306SJ控制8個LED燈的系統(tǒng)設(shè)計。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1.設(shè)計要求:使用stm32f103zet6精英開發(fā)板? 采用SM16306SJ驅(qū)動8個LED燈。

2.原理圖

sm16306,單片機,stm32,嵌入式硬件

3.代碼

.H文件

#ifndef __MBI5020_H
#define __MBI5020_H	 
#include "sys.h"

#define OE_H     GPIO_SetBits(GPIOD, GPIO_Pin_2)  
#define OE_L     GPIO_ResetBits(GPIOD,GPIO_Pin_2) 

#define LE_H     GPIO_SetBits(GPIOB, GPIO_Pin_5)  
#define LE_L     GPIO_ResetBits(GPIOB,GPIO_Pin_5) 

#define CLK_H    GPIO_SetBits(GPIOB, GPIO_Pin_4)  
#define CLK_L    GPIO_ResetBits(GPIOB,GPIO_Pin_4)

#define SDI_H    GPIO_SetBits(GPIOB, GPIO_Pin_3) 
#define SDI_L    GPIO_ResetBits(GPIOB,GPIO_Pin_3) 

void MBI5020_Init(void);//初始化
void MBI5020_Driver(uint16_t data);
		 				    
#endif

.C文件

#include "MBI5020.h"  
void MBI5020_Init(void)
{
 
 GPIO_InitTypeDef  GPIO_InitStructure;
 	
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOD,ENABLE);
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);    //
 GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE );

 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;				 //CLK 端口配置
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 		 //推挽輸出
 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;		 //IO口速度為50MHz
 GPIO_Init(GPIOB, &GPIO_InitStructure);					 //根據(jù)設(shè)定參數(shù)初始化GPIOB.4
 GPIO_ResetBits(GPIOB,GPIO_Pin_4);				

 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;	    		 //SDI 端口配置, 推挽輸出
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 		 //推挽輸出
 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;		 //IO口速度為50MHz
 GPIO_Init(GPIOB, &GPIO_InitStructure);	  				 //推挽輸出 ,IO口速度為50MHz
 GPIO_ResetBits(GPIOB,GPIO_Pin_3);

 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5;	    		 //LE
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 		 //推挽輸出
 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;		 //IO口速度為50MHz
 GPIO_Init(GPIOB, &GPIO_InitStructure);	  				 //推挽輸出 ,IO口速度為50MHz
 GPIO_ResetBits(GPIOB,GPIO_Pin_5);
	
 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;	    		 //OE
 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; 		 //推挽輸出
 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;		 //IO口速度為50MHz
 GPIO_Init(GPIOD, &GPIO_InitStructure);	  				 //推挽輸出 ,IO口速度為50MHz	
 GPIO_SetBits(GPIOD,GPIO_Pin_2);
}

void MBI5020_Driver(uint16_t data)
	
{
	uint8_t  j;	
	
	//第一組
	 SDI_L;//第一路數(shù)據(jù)
	
   CLK_L;//時鐘
	 LE_L;
	 OE_H;//使能
		
			for (j = 0; j < 16; j++) 
			{
					//先準(zhǔn)備好數(shù)據(jù)
								
				if (data &0x8000) 
				{
					SDI_H;			//數(shù)據(jù)1
				} 
				else 
				{
					SDI_L;			//數(shù)據(jù)0
				}
				CLK_H;
		  	data  = (data << 1);//數(shù)據(jù)左移一位				
		  	CLK_L;
			}
		
		LE_H;//開始移位
		LE_L;//拉低移位	
		OE_L;//使能輸出
}

main函數(shù)
int main(void)
{
    MBI5020_Init();
    whlie(1)
    {
       MBI5020_Driver(0x00FF);  
    }
}

4.實物效果圖

sm16306,單片機,stm32,嵌入式硬件

備注:1 硬件上有一個LED燈壞了,所以才亮了7個LED燈

???????????2 一個SM16306SJ最多可以驅(qū)動16個LED燈

???????????3 SM16306SJ跟MBI5020程序通用文章來源地址http://www.zghlxwxcb.cn/news/detail-854730.html

到了這里,關(guān)于基于STM32F103ZET6單片機驅(qū)動SM16306SJ控制8個LED燈的系統(tǒng)設(shè)計的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 矩陣鍵盤之門鎖小項目(stm32f103zet6)

    矩陣鍵盤之門鎖小項目(stm32f103zet6)

    今天,給大家分享的是自己弄著玩的一個矩陣鍵盤控制控制舵機模擬一個智能門鎖的功能。 用到的硬件: 開發(fā)板我用的是原子哥的精英板(殺雞用宰牛刀了)。 矩陣鍵盤(寶上十幾塊買的): 外加一個舵機和一個0.96的oled顯示屏。 矩陣鍵盤: 有VCC,GND,SCL,SDO四條線,這個矩陣鍵

    2024年02月10日
    瀏覽(22)
  • AD7606與STM32F103ZET6的串行通信

    AD7606與STM32F103ZET6的串行通信

    ??本文是AD7606與STM32的串行通信的學(xué)習(xí)心得,可幫助你快速入門AD7606。 ??圖一 ??圖二 ??圖三 ??圖四 ??根據(jù)圖一,一些引腳在置高或置低時的上升或下降沿會受時間影響,因此在編寫代碼時,一些對引腳的操作需要放在一起,且延時函數(shù)不能隨意使用。 ??圖

    2024年02月08日
    瀏覽(32)
  • 【單片機】STM32單片機,定時器的輸入捕獲,基于捕獲的頻率計,STM32F103

    【單片機】STM32單片機,定時器的輸入捕獲,基于捕獲的頻率計,STM32F103

    下面的定時器都具有輸入捕獲能力: 查看另一篇文章:https://qq742971636.blog.csdn.net/article/details/131471539 外部計數(shù)頻率計的缺點:需要兩個定時器配合,最高能測量的頻率是否有限制我沒具體嘗試。 基于捕獲的頻率計的缺點:最高能測量的頻率有限制。 TIM3_CH1 PWM PA6 10KHZ。 輸入

    2024年02月14日
    瀏覽(27)
  • 【單片機】STM32單片機頻率計程序,外部脈沖計數(shù)程序,基于脈沖計數(shù)的頻率計程序,STM32F103

    【單片機】STM32單片機頻率計程序,外部脈沖計數(shù)程序,基于脈沖計數(shù)的頻率計程序,STM32F103

    兩種方法用于在單片機中實現(xiàn)頻率計的功能。 第一種方法是通過定時器來衡量信號的周期,然后將周期轉(zhuǎn)換為頻率。在這種方法中,你可以使用單片機的定時器模塊來測量輸入信號的周期,定時器會產(chǎn)生一個計數(shù)值,你可以根據(jù)這個計數(shù)值來推算出輸入信號的周期,并通過簡

    2024年02月11日
    瀏覽(26)
  • 基于STM32F103ZET6的(單/三)路HC-SR04超聲波測距+TFTLCD實時顯示+距離報警

    基于STM32F103ZET6的(單/三)路HC-SR04超聲波測距+TFTLCD實時顯示+距離報警

    一、成果圖 說明:本程序的源碼地址: https://github.com/Lfy-YF/Campus-Project ?????????? CSDN下載連接:https://download.csdn.net/download/weixin_58849239/87829470 源碼包含四個版本,涉及單路測距、三路測距、增加外部中斷(用來版本記錄的~) 運行效果: 本程序?qū)崿F(xiàn)脫機測距,共左中右

    2024年02月11日
    瀏覽(27)
  • 用正點原子STM32F103ZET6精英板控制舵機轉(zhuǎn)動實驗保姆教程

    用正點原子STM32F103ZET6精英板控制舵機轉(zhuǎn)動實驗保姆教程

    正點原子精英板一塊 Jlink4線SWD下載線一根 精英板usb供電/下載線一根(負(fù)責(zé)給開發(fā)板供電) SG90舵機一個(三線:其中紅線接5V電壓,棕線接GED,橙黃色為信號線接開發(fā)板PB5引腳,舵機所給為3pin杜邦線母頭,可用單根杜邦線(一頭子一頭母)將舵機線飛開接到精英板上)。 以

    2023年04月15日
    瀏覽(90)
  • STM32F103ZET6【標(biāo)準(zhǔn)庫函數(shù)開發(fā)】------04五個串口的詳細(xì)配置

    STM32F103ZET6【標(biāo)準(zhǔn)庫函數(shù)開發(fā)】------04五個串口的詳細(xì)配置

    正點原子戰(zhàn)艦開發(fā)板 STM32F103ZET6有5個串口,查看引腳圖可以找到對應(yīng)的IO口分別如下 串口 USART1 USART2 USART3 UART4 UART5 輸入/輸出方式 USARTx_TX PA9 PA2 PB10 PC10 PC12 復(fù)用推挽輸出 USARTx_RX PA10 PA3 PB11 PC11 PD2 浮空輸入 USART1掛在APB2下 USART2,USART3,USART4,USART5掛在APB1下 串口調(diào)試助手設(shè)置波特率

    2024年02月03日
    瀏覽(25)
  • STM32---stm32f103c8t6與stm32f103zet6之間的代碼移植轉(zhuǎn)換

    STM32---stm32f103c8t6與stm32f103zet6之間的代碼移植轉(zhuǎn)換

    目錄 一、將c8t6轉(zhuǎn)換為zet6 1、修改啟動文件 2、修改芯片 3、將MD修改為HD ?4、下載器的修改 5、修改完成,編譯成功 ?二、將zet6轉(zhuǎn)換為c8t6 最終結(jié)果如下:? ?將STM32F103C8改為STM32F103ZE ? 基本相同,反向即可。 ? ?

    2024年02月06日
    瀏覽(46)
  • MDK Keil5 創(chuàng)建Stm32工程-理論篇(這里以Stm32F103Zet6為例)

    MDK Keil5 創(chuàng)建Stm32工程-理論篇(這里以Stm32F103Zet6為例)

    整個工程可以粗略的劃分為幾個文件夾: BSP 底層驅(qū)動比如GPIOTimer等驅(qū)動文件 CMSIS 內(nèi)核相關(guān)的文件 Firmware 生成的固件下載文件 Mycode 用戶編寫的相關(guān)文件,主要編寫的文件都在這個文件夾里 Project 工程文件 startup 芯片啟動文件 STM32F10x_FWLib 標(biāo)準(zhǔn)庫文件 USER 主函數(shù)等文件 readm

    2023年04月24日
    瀏覽(95)
  • 【LVGL】STM32F103ZET6——LVGL_GUI_GUIDER移植過程成功

    【LVGL】STM32F103ZET6——LVGL_GUI_GUIDER移植過程成功

    STM32F103ZET6——LVGL_GUI_GUIDER移植過程 STM32F103ZET6——LVGL_GUI_GUIDER移植過程 使用工具: 1.LVGL庫8.02 2.GUI_GUIDER 3.keil5 設(shè)計出來的總體是這樣 提示:以下是本篇文章正文內(nèi)容,下面案例可供參考 這部分有很多大佬已經(jīng)寫的很成熟了,我就不贅述了 安裝包在這里硬件資源 右上角可將

    2024年02月12日
    瀏覽(58)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包