日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

歷史上的今天

今天是:2025年03月09日(星期日)

正在發(fā)生

2019年03月09日 | STM32串口通信之超級(jí)終端控制LED燈

發(fā)布者:Jinyu521 來源: eefocus關(guān)鍵字:STM32  串口通信  超級(jí)終端控制  LED燈 手機(jī)看文章 掃描二維碼
隨時(shí)隨地手機(jī)看文章

一、硬件介紹


本程序使用開發(fā)板:STM32-PZ6806L


1、GPIO控制LED


開發(fā)板中LED的硬件電路參看:直接通過寄存器地址操作控制LED燈


2、串口


開發(fā)板中連接了MCU的2個(gè)串口,分別為USART1和USART3,其中USART1通過CH340G接PC端USB口,實(shí)現(xiàn)USB轉(zhuǎn)串口功能,可以用于程序下載和串口通信,但通過PC端的超級(jí)終端連接時(shí)不能連接,所以本程序使用開發(fā)板上的另一個(gè)串口USART3,該串口信號(hào)轉(zhuǎn)換成RS232,通過直連串口線與PC端的COM口相連,可以實(shí)現(xiàn)與超級(jí)終端通信。


開發(fā)板串口的硬件連接圖請(qǐng)參考:STM32串口通信之Hello


二、項(xiàng)目創(chuàng)建與配置


請(qǐng)參看《STM32串口通信之Hello》中的“使用庫函數(shù)的串口程序項(xiàng)目配置”,在此基礎(chǔ)上,在"User"文件夾下新建"Led"文件夾,并將該文件夾配置在"C/C++"選項(xiàng)卡中的"Include Paths"包含文件路徑中。


三、LED燈控制


1、新建"Led.h"文件并保存在"User/Led"文件夾下,內(nèi)容如下:


#ifndef __LED__H


#define __LED__H


#include "stm32f10x.h"


#define LED_PORT     GPIOC


#define LED_PIN        (GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7)


#define LED_PORT_RCC RCC_APB2Periph_GPIOC


#define LED1 GPIO_Pin_0


#define LED2 GPIO_Pin_1


#define LED3 GPIO_Pin_2


#define LED4 GPIO_Pin_3


#define LED5 GPIO_Pin_4


#define LED6 GPIO_Pin_5


#define LED7 GPIO_Pin_6


#define LED8 GPIO_Pin_7


 


void LED_Init(void);


void LED_On(u8 x, u8 en);


#endif


2、新建"Led.c"文件并保存在"User/Led"文件夾下,內(nèi)容如下:


#include "led.h"


void LED_Init()


{


         GPIO_InitTypeDef GPIOC_0_mode;


         RCC_APB2PeriphClockCmd( LED_PORT_RCC, ENABLE );           //使能GPIOC時(shí)鐘


         GPIOC_0_mode.GPIO_Pin = LED_PIN;


         GPIOC_0_mode.GPIO_Speed = GPIO_Speed_50MHz;


         GPIOC_0_mode.GPIO_Mode = GPIO_Mode_Out_PP;


         GPIO_Init(GPIOC, &GPIOC_0_mode);


}


void LED_On(u8 x, u8 en)


{


         uint16_t led[] = {LED1,LED2,LED3,LED4,LED5,LED6,LED7,LED8};


         if(x


                   return;


         if(en=='y')


                   GPIO_ResetBits(LED_PORT,led[x-0x31]);


         else


                   GPIO_SetBits(LED_PORT,led[x-0x31]);


}


LED_Init函數(shù)使能GPIOC時(shí)鐘,設(shè)置GPIOC_0~GPIOC_7為推挽輸出模式,LED_On函數(shù)根據(jù)參數(shù)x和en來設(shè)置單個(gè)LED燈的亮滅狀態(tài),調(diào)用函數(shù)GPIO_ResetBits來復(fù)位管腳,即點(diǎn)亮LED燈,調(diào)用函數(shù)GPIO_SetBits來置位管腳,即滅LED燈。x參數(shù)為第幾個(gè)LED燈的數(shù)字字符,en參數(shù)為'y'字符或'n'字符,'y'表示點(diǎn)亮,'n'表示滅燈。


四、串口通信程序


該串口通信采用USART3,發(fā)送數(shù)據(jù)采用查詢方式,接收數(shù)據(jù)采用中斷方式,所以需要使能GPIOB和USART3時(shí)鐘、配置中斷、配置USART3、使能中斷和使能USART3等操作。


1、創(chuàng)建"usrt.h"文件并保存在"User/Uart"文件夾下,內(nèi)容為:


#ifndef __UART__H


#define __UART__H


#include "stm32f10x.h"


#include "stdarg.h"


#include "stdlib.h"


#include "string.h"


#include "stdio.h"        


#define EN_USART1 0         //禁用USART1


#define EN_USART3 1         //啟用USART3


 


#define USART_n                 USART3    //使用USART3用于fputc


 


#define USART1_REC_LEN                          200 


extern u8  USART1_RX_BUF[USART1_REC_LEN];


extern u16 USART1_RX_STA;  


 


#define USART3_REC_LEN                          200 


extern u8  USART3_RX_BUF[USART3_REC_LEN];


extern u16 USART3_RX_STA;  


 


void USART1_Config(u32 baud);


void USART1_printf(char* fmt,...);


 


void USART3_Config(u32 baud);


void USART3_printf(char* fmt,...);


#endif


2、創(chuàng)建"usrt.c"文件并保存在"User/Uart"文件夾下,內(nèi)容為:


#include "uart.h"


 


//重寫fputc函數(shù)


int fputc(int ch, FILE *f){      


         while(USART_GetFlagStatus(USART_n, USART_FLAG_TC)!=SET);


  USART_SendData(USART_n, (unsigned char)ch);     


         return ch;


}


 


#if EN_USART1


u8 USART1_RX_BUF[USART1_REC_LEN];     //接收緩沖區(qū),最大USART_REC_LEN個(gè)字節(jié).


//接收標(biāo)志


//bit15,        置位表示接受完成


//bit14,        置位表示接收到0x0d


//bit13~0,   接收字符個(gè)數(shù)


u16 USART1_RX_STA=0;       //16位接收記錄標(biāo)志全局變量 


void USART1_Config(u32 baud)


{


         GPIO_InitTypeDef GPIO_InitStructure;


         USART_InitTypeDef USART_InitStructure;


         NVIC_InitTypeDef NVIC_InitStructure;


         //Enable GPIOA and USART1


         RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA, ENABLE);


         //Config GPIOA_9 and GPIOA_10


         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;


         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;


         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;


         GPIO_Init(GPIOA, &GPIO_InitStructure);


        


         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;


         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;


         GPIO_Init(GPIOA, &GPIO_InitStructure);


         //USART1 NVIC config


         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);      //配置NVIC中斷分組2:2位搶占,2位響應(yīng)


         NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;


         NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=3 ;//搶占優(yōu)先級(jí)3


         NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;            //子優(yōu)先級(jí)3


         NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;                            //IRQ通道使能


         NVIC_Init(&NVIC_InitStructure);          //初始化NVIC寄存器


         //Config USART1


         USART_InitStructure.USART_BaudRate = baud;


         USART_InitStructure.USART_WordLength = USART_WordLength_8b;


         USART_InitStructure.USART_StopBits = USART_StopBits_1;


         USART_InitStructure.USART_Parity = USART_Parity_No;


         USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;


         USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;


         USART_Init(USART1, &USART_InitStructure);


         USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//使能USART1的接收中斷


         //Enable USART1


         USART_Cmd(USART1, ENABLE);


}


 


void USART1_IRQHandler(void){ //USART1中斷函數(shù) 


         u8 Res;


         //(USART1_RX_STA&0x3FFF)為數(shù)據(jù)的長(zhǎng)度(不包括回車符)


         //當(dāng)(USART1_RX_STA&0xC000)為真時(shí)表示數(shù)據(jù)接收完成(超級(jí)終端按下回車鍵),


         //讀到0x0d 0x0a表示數(shù)據(jù)結(jié)束


         //在main函數(shù)中處理完接收數(shù)據(jù)后將USART_RX_STA置0


                   printf("a");


         if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)


         {    


                   Res =USART_ReceiveData(USART1);//接收一個(gè)字符


                   printf("%c",Res); //會(huì)送給PC


                   if((USART1_RX_STA & 0x8000)==0)            //本次接收未完成


                   {                                  


                            if(USART1_RX_STA & 0x4000)                     //已經(jīng)接收到了0x0d


                            {                                                              


                                     if(Res!=0x0a)      //如果已經(jīng)接收了回車符,而本次接收的不是換行符,則數(shù)據(jù)出錯(cuò)


                                               USART1_RX_STA = 0;       


                                     else


                                               USART1_RX_STA |= 0x8000;      //標(biāo)記數(shù)據(jù)接收完成


                            }


                            else   //沒有接收過0X0D表示為信息字符


                            {                                 


                                     if(Res==0x0d)    //本次接收是0x0d,則在USART1_RX_STA中標(biāo)記


                                               USART1_RX_STA |= 0x4000;


                                     else   //本次接收不是0x0d,則確定是信息字符,存入數(shù)組中


                                     {


                                               USART1_RX_BUF[USART1_RX_STA & 0X3FFF]=Res ; //字符存入數(shù)組中


                                               USART1_RX_STA++;         //數(shù)據(jù)長(zhǎng)度加1


                                               if(USART1_RX_STA > (USART1_REC_LEN-1))   //如果數(shù)據(jù)長(zhǎng)度超過緩沖區(qū)大小,出錯(cuò),重新接收


                                                        USART1_RX_STA=0;


                                     }                


                            }


                   }               


         }


}


#endif


 


#if EN_USART3


u8 USART3_RX_BUF[USART3_REC_LEN];     //接收緩沖區(qū),最大USART_REC_LEN個(gè)字節(jié).


//接收標(biāo)志


//bit15,        置位表示接受完成


//bit14,        置位表示接收到0x0d


//bit13~0,   接收字符個(gè)數(shù)


u16 USART3_RX_STA=0;       //16位接收記錄標(biāo)志全局變量 


void USART3_Config(u32 baud)   //初始化UASRT3


{


  //GPIO端口設(shè)置


  GPIO_InitTypeDef GPIO_InitStructure;


         USART_InitTypeDef USART_InitStructure;


         NVIC_InitTypeDef NVIC_InitStructure;


                    


         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE); //使能UART3對(duì)應(yīng)的GPIOB


         RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3, ENABLE); //使能串口的RCC時(shí)鐘


 


         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11; //配置USART3的RX引腳PB11


         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//浮空輸入


         GPIO_Init(GPIOB, &GPIO_InitStructure);


 


         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; //配置USART3的TX引腳PB10


         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;


         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;         //服用推挽輸出


         GPIO_Init(GPIOB, &GPIO_InitStructure); 


 


   //Usart3 NVIC 配置


         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);


  NVIC_InitStructure.NVIC_IRQChannel = USART3_IRQn;


         NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=3 ;//搶占優(yōu)先級(jí)3


         NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;            //子優(yōu)先級(jí)3


         NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;                            //IRQ通道使能


         NVIC_Init(&NVIC_InitStructure);          //初始化NVIC


   //USART3 初始化設(shè)置


         USART_InitStructure.USART_BaudRate = baud;//波特率;


         USART_InitStructure.USART_WordLength = USART_WordLength_8b;//字長(zhǎng)為8位


         USART_InitStructure.USART_StopBits = USART_StopBits_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; //收/發(fā)


         USART_Init(USART3, &USART_InitStructure); //初始化串口


         USART_ITConfig(USART3, USART_IT_RXNE, ENABLE);//使能接收中斷


         USART_Cmd(USART3, ENABLE);                    //使能串口


}


 


void USART3_IRQHandler(void)  //USART3中斷函數(shù)


{     


         //(USART1_RX_STA&0x3FFF)為數(shù)據(jù)的長(zhǎng)度(不包括回車符)


         //當(dāng)(USART1_RX_STA&0xC000)為真時(shí)表示數(shù)據(jù)接收完成(超級(jí)終端按下回車鍵),


         //讀到0x0d 0x0a表示數(shù)據(jù)結(jié)束


         //在main函數(shù)中處理完接收數(shù)據(jù)后將USART_RX_STA置0


         u8 Res;


         //       printf("a");


         if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)


         {    


                   Res =USART_ReceiveData(USART3);//接收一個(gè)字符


                   printf("%c",Res); //回送給PC


                   if((USART3_RX_STA & 0x8000)==0)            //本次接收未完成


                   {                                  


                            if(USART3_RX_STA & 0x4000)                     //已經(jīng)接收到了0x0d


                            {                                                              


                                     if(Res!=0x0a)      //如果已經(jīng)接收了回車符,而本次接收的不是換行符,則數(shù)據(jù)出錯(cuò)


                                               USART3_RX_STA = 0;       


                                     else


                                               USART3_RX_STA |= 0x8000;      //標(biāo)記數(shù)據(jù)接收完成


                            }


                            else   //沒有接收過0X0D表示為信息字符


                            {                                 


                                     if(Res==0x0d)    //本次接收是0x0d,則在USART1_RX_STA中標(biāo)記


                                               USART3_RX_STA |= 0x4000;


                                     else   //本次接收不是0x0d,則確定是信息字符,存入數(shù)組中


                                     {


                                               USART3_RX_BUF[USART3_RX_STA & 0X3FFF]=Res ; //字符存入數(shù)組中


                                               USART3_RX_STA++;         //數(shù)據(jù)長(zhǎng)度加1


                                               if(USART3_RX_STA > (USART3_REC_LEN-1))   //如果數(shù)據(jù)長(zhǎng)度超過緩沖區(qū)大小,出錯(cuò),重新接收


                                                        USART3_RX_STA=0;


                                     }                


                            }


                   }               


         }


}


#endif


3、"main.c"程序


#include "uart.h"


#include "led.h"


int main()


{


         u8 ch1, ch2, i;


         LED_Init();//LED GPIO初始配置


         USART3_Config(115200); //USART1配置,接收中斷


         USART3_RX_STA = 0xC000; //數(shù)據(jù)初始為接收回車狀態(tài)


         for(i=0;i<8;i++)  //將8個(gè)LED初始設(shè)為滅燈狀態(tài)


                   LED_On(i+0x31,'n');


         while(1)


         {


                   if(USART3_RX_STA & 0xC000)//接收到回車-0xC000


                   {


                            if((USART3_RX_STA & 0x3FFF)==0) //數(shù)據(jù)長(zhǎng)度為0,顯示菜單


                            {


                                     printf("\033[1;47;33m\r\n"); //設(shè)置超級(jí)終端文字顏色


                                     printf(" xy--開LEDx燈     xn--滅LEDx燈 \r\n");


                                     printf(" 請(qǐng)輸入控制指令,按回車鍵執(zhí)行! \033[0m\r\n");


                            }


                            else if((USART3_RX_STA&0x3FFF)==2)


                            {


                                     ch1 = USART3_RX_BUF[0];


                                     ch2 = USART3_RX_BUF[1];


                                     if(      ch1>='1' && ch1<='8'&&( ch2=='y' || ch2=='n'))


                                     {


                                               LED_On(ch1, ch2);


                                               printf("LED%c%s\r\n",ch1,ch2=='y'?"開了":"關(guān)了");


                                     }


                                     else


                                               printf("命令錯(cuò)誤\r\n");


                            }


                            USART3_RX_STA = 0; //完成一次操作,復(fù)位


                   }


         }


}


在此程序中分別對(duì)USART1和USART3實(shí)現(xiàn)了同樣的操作,這里實(shí)際用到的是USART3,本程序參考杜洋老師的程序?qū)崿F(xiàn)。


五、項(xiàng)目編譯、開發(fā)板設(shè)置及程序運(yùn)行


1、在項(xiàng)目的"User"組中加入"led.c"和"uart.c"文件,編譯,連接生成.hex文件;


2、將開發(fā)板中的P232的兩個(gè)跳線帽連接到COM3;


3、將程序下載到開發(fā)板;


4、在PC機(jī)上運(yùn)行"HyperTerminal"程序,新建連接:


HyperTerminal運(yùn)行如下:

超級(jí)終端上的顯示與開發(fā)板上LED燈的狀態(tài)一致。


關(guān)鍵字:STM32  串口通信  超級(jí)終端控制  LED燈 引用地址:STM32串口通信之超級(jí)終端控制LED燈

上一篇:成功移植icore的shell串口到STM32F4
下一篇:使用STM32固件庫函數(shù)操作控制LED燈

推薦閱讀

去年年底,德馬泰克宣布2018年開始,將英杰明自動(dòng)化和NDC自動(dòng)化整合到德馬泰克的全球品牌中,這一舉措明顯是物流行業(yè)一大重要事件。本文將重新簡(jiǎn)單梳理德馬泰克、英杰明、NDC、凱傲之間的并購關(guān)系。去年年底,德馬泰克宣布接下來的工作是通過品牌整合,將英杰明自動(dòng)化和NDC自動(dòng)化整合到德馬泰克組織中. 自2018年開始,英杰明和NDC倉儲(chǔ)自動(dòng)化解決方案將以...
集微網(wǎng)消息 3月7日,有投資者向通富微電提問,請(qǐng)問特斯拉上海工廠目前為公司帶來了相關(guān)訂單了嗎?通富微電回答表示,公司為客戶提供芯片封測(cè)服務(wù),相關(guān)客戶再將芯片賣給特斯拉。特斯拉為公司封測(cè)產(chǎn)品的終端應(yīng)用客戶,目前與公司沒有直接業(yè)務(wù)往來。據(jù)悉,通富微電專業(yè)從事集成電路封裝測(cè)試,擁有Bumping、WLCSP、FC、BGA、SiP等先進(jìn)封測(cè)技術(shù),QFN、QFP、SO...
疫情發(fā)生后,“500強(qiáng)”佛企碧桂園捐出煲仔飯機(jī)器人馳援戰(zhàn)“疫”一線成為佳話。值得關(guān)注的是,在碧桂園餐飲機(jī)器人研發(fā)團(tuán)隊(duì)中,就有一位“鋼鐵女俠”,在柔與剛的狀態(tài)之間切換自如。她,是碧桂園旗下餐飲機(jī)器人板塊——千璽機(jī)器人餐飲集團(tuán)研發(fā)副總監(jiān)李偉,她也是研發(fā)團(tuán)隊(duì)中唯一一名女博士。 昨日是“三八”國(guó)際婦女節(jié),在這一特殊節(jié)日,記者帶你走進(jìn)她的...
3月8日下午消息,今日一加舉辦影像溝通會(huì),正式宣布與哈蘇達(dá)成深度戰(zhàn)略合作關(guān)系,共同打造一加丨哈蘇手機(jī)影像系統(tǒng)。此外,一加也將在未來三年內(nèi)投入10億元用于提升手機(jī)影像能力,在色彩、成片率、專業(yè)體驗(yàn)等方面不斷尋求突破。此次一加全面發(fā)力影像,將進(jìn)一步增強(qiáng)高端影像實(shí)力,幫助一加在行業(yè)競(jìng)爭(zhēng)中獲取更大優(yōu)勢(shì)?! ≡谠缦鹊牟稍L中,劉作虎表示2021年是...

史海拾趣

問答坊 | AI 解惑

步進(jìn)電機(jī)資料

#include #define uchar unsigned char #define uint unsigned int uint time void timer1(void) interrupt 1 using 1{ //定時(shí)器0中斷,定時(shí)1ms// TH0=(65536-1000)/256; TL0=(65536-1000)%256; time++; } void delay(uint n){ &n ...…

查看全部問答∨

Tieto招聘:Senior PCB designer

疊拓(原迪易通)信息技術(shù)有限公司 (Tieto),成立于1968年,是一家北歐的從事軟件解決方案的全外資集團(tuán)公司,分別在赫爾辛基和斯德哥爾摩證券交易所掛牌。是綜合實(shí)力北歐地區(qū)第一,歐洲前三的IT業(yè)務(wù)供應(yīng)商。 請(qǐng)將簡(jiǎn)歷發(fā)送到 xiaoli.yang@tieto.co ...…

查看全部問答∨

nRF24L01無線模塊PCB圖及調(diào)試程序

nRF24L01無線模塊的PCB圖及相關(guān)資料,mega16源程序已調(diào)試通過…

查看全部問答∨

S3C2440A嵌入式手持終端電源管理系統(tǒng)設(shè)計(jì)

replyreload += \',\' + 374598;這是一個(gè)關(guān)于電源管理設(shè)計(jì)的文章,附上一段節(jié)選供參考?;靥敲赖?nbsp;   電源管理軟件設(shè)計(jì)可分為:操作系統(tǒng)層和應(yīng)用層。     (1)操作系統(tǒng)層     電源管理的功能執(zhí)行層,它 ...…

查看全部問答∨

WINCE6.0觸屏驅(qū)動(dòng)怎么沒有鼠標(biāo)光標(biāo)以及不能產(chǎn)生右鍵

各位高手,我使用MS的分層驅(qū)動(dòng)模型寫個(gè)一個(gè)觸屏驅(qū)動(dòng),目前驅(qū)動(dòng)可以進(jìn)行校準(zhǔn),能夠拖動(dòng)、單擊、雙擊,就是不能產(chǎn)生右鍵,而且桌面上沒有鼠標(biāo)光標(biāo)。還望各位高手指點(diǎn)迷津。在下不勝感激?!?

查看全部問答∨

DirectDraw問題

1>.\\YX_GPS\\port\\c\\yu_port_gui.c(79) : error C2039: \'Release\' : is not a member of \'IDirectDrawSurface\' 1>        D:\\Program Files\\Windows CE Tools\\wce500\\STANDARDSDK_500\\include\\ARMV4I\ ...…

查看全部問答∨

一個(gè)潛入式的OS調(diào)度問題!

    以UC/OS為例子,系統(tǒng)調(diào)度是由一個(gè)軟中斷A進(jìn)行管理的,而這個(gè)軟中斷是由系統(tǒng)的時(shí)鐘節(jié)拍中斷HA觸發(fā)的,但是同時(shí),一個(gè)問題,假如現(xiàn)在一個(gè)其他的硬件中斷HB觸發(fā)了另外一個(gè)軟中斷B,但是不巧的是,這個(gè)B在執(zhí)行的時(shí)候,HA觸發(fā)了,那么: ...…

查看全部問答∨

STM32F103C6T61K訂單

    ST推出STM32后,STM32的第一個(gè)1K訂單已經(jīng)完成。   6.11號(hào)ST推出STM32,上海XX自動(dòng)化公司在前3周內(nèi)完成了PCB設(shè)計(jì)和軟件代碼的移植,第四周內(nèi)做了10套測(cè)試樣片,現(xiàn)場(chǎng)連續(xù)測(cè)試2個(gè)月,EMC,工業(yè)測(cè)試全部測(cè) ...…

查看全部問答∨

我這樣設(shè)置gpio對(duì)嗎??

我懷疑我的設(shè)置順序,如下:  //初始化GPIO接口  /* Enable GPIOC clock */  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);  RCC_APB2PeriphClockCmd(RCC_APB2Peri ...…

查看全部問答∨

香主問您一個(gè)問題!

                                 我現(xiàn)在用ZET6的FSMC控制TFT了,系統(tǒng)上還有SRAM,NOR等,現(xiàn)在PE5口已經(jīng)是FSMC的地址線A20了,但是我的存儲(chǔ)器地址線 ...…

查看全部問答∨
小廣播
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號(hào)

 
EEWorld服務(wù)號(hào)

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號(hào) 京ICP備10001474號(hào)-1 電信業(yè)務(wù)審批[2006]字第258號(hào)函 京公網(wǎng)安備 11010802033920號(hào) Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved