历史上的今天
返回首页

历史上的今天

今天是:2025年04月10日(星期四)

正在发生

2019年04月10日 | stm32 通过串口控制led灯亮灭 并通过lcd显示led灯的亮灭状态

2019-04-10 来源:eefocus


#include "main.h"

#include "stm32f0xx_hal.h"

 

/* USER CODE BEGIN Includes */

#include "lcd.h"

/* USER CODE END Includes */

 

/* Private variables ---------------------------------------------------------*/

UART_HandleTypeDef huart1;

 

/* USER CODE BEGIN PV */

/* Private variables ---------------------------------------------------------*/

 

/* USER CODE END PV */

 

/* Private function prototypes -----------------------------------------------*/

void SystemClock_Config(void);

static void MX_GPIO_Init(void);

static void MX_USART1_UART_Init(void);

 

/* USER CODE BEGIN PFP */

/* Private function prototypes -----------------------------------------------*/

 

/* USER CODE END PFP */

 

/* USER CODE BEGIN 0 */

 

/* USER CODE END 0 */

 

/**

  * @brief  The application entry point.

  *

  * @retval None

  */

int main(void)

{

  /* USER CODE BEGIN 1 */

 

  /* USER CODE END 1 */

 

  /* MCU Configuration----------------------------------------------------------*/

 

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */

  HAL_Init();

 

  /* USER CODE BEGIN Init */

 

  /* USER CODE END Init */

 

  /* Configure the system clock */

  SystemClock_Config();

 

  /* USER CODE BEGIN SysInit */

 

  /* USER CODE END SysInit */

 

  /* Initialize all configured peripherals */

  MX_GPIO_Init();

  MX_USART1_UART_Init();

  /* USER CODE BEGIN 2 */

Lcd_Init();

Lcd_Clear(WHITE);

  /* USER CODE END 2 */

 

  /* Infinite loop */

  /* USER CODE BEGIN WHILE */

Gui_DrawFont_GBK16(0, 0, BLACK, WHITE, "LED1 OFF");

Gui_DrawFont_GBK16(0, 25, BLACK, WHITE, "LED2 OFF");

Gui_DrawFont_GBK16(0, 50, BLACK, WHITE, "LED3 OFF");

HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2, GPIO_PIN_SET);

  while (1)

  {

 

  /* USER CODE END WHILE */

 

  /* USER CODE BEGIN 3 */



uint8_t data = 0;  

HAL_UART_Receive_IT(&huart1, &data, 1);  

if(data == '1')  

{  

HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_RESET);  

HAL_UART_Transmit(&huart1, &data, 1, 0);  

Gui_DrawFont_GBK16(0, 0, BLACK, WHITE, "LED1  ON");

//HAL_Delay(500);

}  

else if(data == '2')  

{  

HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET);  

HAL_UART_Transmit(&huart1, &data, 1, 0);  

Gui_DrawFont_GBK16(0, 0, BLACK, WHITE, "LED1 OFF");

//HAL_Delay(500);

else if(data == '3')  

{  

HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET);  

HAL_UART_Transmit(&huart1, &data, 1, 0);  

Gui_DrawFont_GBK16(0, 25, BLACK, WHITE, "LED2  ON");

//HAL_Delay(500);

}

else if(data == '4')  

{  

HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_SET);  

HAL_UART_Transmit(&huart1, &data, 1, 0);  

Gui_DrawFont_GBK16(0, 25, BLACK, WHITE, "LED2 OFF");

//HAL_Delay(500);

}

else if(data == '5')  

{  

HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_RESET);  

HAL_UART_Transmit(&huart1, &data, 1, 0);  

Gui_DrawFont_GBK16(0, 50, BLACK, WHITE, "LED3  ON");

//HAL_Delay(500);

}

else if(data == '6')  

{  

HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_SET);  

HAL_UART_Transmit(&huart1, &data, 1, 0);  

Gui_DrawFont_GBK16(0, 50, BLACK, WHITE, "LED3 OFF");

//HAL_Delay(500);

}

  }

  /* USER CODE END 3 */

 

}


推荐阅读

史海拾趣

Dino-Lite公司的发展小趣事

Dino-Lite公司在发展过程中,始终注重市场拓展和合作伙伴关系的建立。公司与多家知名企业建立了长期稳定的合作关系,共同开拓市场、分享资源。通过与合作伙伴的紧密合作,Dino-Lite公司的产品得以快速进入各个行业领域,并获得了良好的口碑和市场份额。

此外,Dino-Lite公司还积极参与国际展览和交流活动,展示公司的最新技术和产品。这些活动不仅提高了公司的知名度,也为公司带来了更多的商业机会和合作伙伴。

CIPS公司的发展小趣事

为了满足市场不断变化的需求,CIPS公司不断推出创新产品和服务。例如,推出了CIPS汇路指南、CIPS数据洞察等产品服务,这些服务不仅解决了跨境支付过程中的信息不对称问题,还提高了支付效率,降低了退汇率。此外,CIPS还推出了港元业务等多元化服务,进一步丰富了其服务内容与形式。

ASC Capacitors公司的发展小趣事

随着公司规模的不断扩大和产品质量的不断提升,ASC Capacitors开始积极拓展市场。公司不仅在国内市场上取得了显著成绩,还成功打入国际市场,产品远销海外。通过与全球知名企业的合作,ASC Capacitors进一步提升了品牌知名度和影响力,成为了电容器行业的佼佼者。

Aromat Corp公司的发展小趣事

在电子行业的初创期,Aromat Corp以其独特的技术突破而崭露头角。公司创始人带领团队研发出了一款高效能、低功耗的芯片,迅速吸引了市场的关注。通过不断优化产品性能和降低成本,Aromat Corp逐渐在竞争激烈的电子市场中站稳脚跟,为后续的发展奠定了坚实的基础。

Cobham Semiconductor Solutions公司的发展小趣事

品质是Cobham Semiconductor Solutions的生命线。公司始终坚持严格的质量管理体系,从原材料采购到生产流程,再到产品出厂,每一个环节都经过严格把控。公司还引入了先进的生产设备和技术,确保产品质量的稳定性和可靠性。这种对品质的执着追求,使得Cobham的产品在市场上赢得了良好的声誉和口碑。

集创北方(CHIPONE)公司的发展小趣事

近年来,集创北方在电子行业的地位日益稳固。从2019年到2021年,公司的营收实现了飞跃式增长,从14.47亿元增长至56.74亿元,复合增长率高达98%。这一成绩的背后,是公司不断创新、积极应对市场变化的结果。

问答坊 | AI 解惑

求一完整的音响功放电路

各位高手,小弟对音响功放这方面不是很专业,我是搞LED的,现在自己想做一个具有低音功能的音响功放! 在网上找了一下,都不确实际,请问各位有没有完整的电路给我,谢谢![qq]306048732[/qq]…

查看全部问答>

AT89S51单片机控制GSM模块(M22)发送短信程序!!!!

自己改的AT89S51单片机控制GSM模块(M22)发送短信程序,在Keil上编译没错,但还未试过烧入片内运行。。 大家看看,这个程序可行否? 还有什么错误的地方? 希望搞过GSM的朋友多提点意见,让程序完善起来! (偶弄GSM也一段时间啦,希望有兴趣 ...…

查看全部问答>

请教如何开发linux平台下web界面方式的硬件管理器

时间紧,任务重,所以,请GGJJ们不吝赐教! 环境简述:拟开发一网关,在1U机箱里安装必要的硬件(不详述了吧,反正差不多就一PC),软件采用linux系统,拟在此平台上实现一网关功能,仅允许授权的IP或客户端的连接请求访问应用层的服务(web,ftp,ma ...…

查看全部问答>

急急急 RTL8139 系统重启问题

小弟今天遇到一个很莫名的问题,请各位大侠指点啊!     目前有两块8139的网卡,同时用大包不断的ping这两个网卡时候,会出现系统的重启问题,咋解决啊! 我看过原来有人在发帖遇到这个问题,但没有见到解决的办法,哪位大侠帮帮忙啊。 ...…

查看全部问答>

中*美*爱*梯*科*技, 9月10日新班开课, 免费试听!

中*美*爱*梯*科*技, .NET外企软件工程师班将于2007年9月10日开课, 开课第一周免费试听, 欢迎大家踊跃报名参加!   公司网址:  http://www.happyit.com.cn   报名电话:  82240069 &n ...…

查看全部问答>

MSP430团购

玩过STM32,ARM9,实验室里有几个项目用到过430,但始终没有时间接触号称最低功耗的MCU,超低功耗适合手持设备的应用、3轴加速计、FRAM十分的吸引人,团购的用途主要还是学习,了解430结构,接触一下FRAM的原理和具体的操作,希望能够团购到此神器 ...…

查看全部问答>

有没有人搞过溶解环氧解封电路板的?

好像是有机硅灌封胶,一大块,封死了电路板。。。有没有人弄过这种东西的解封?有没有好的溶剂啥的推荐。。。…

查看全部问答>

LED市场 2013该走向哪里

      2011年尾,很多人抱着美好的期待,希望在2012年里能大展拳脚,好好在LED行业中狠狠的赚上一笔,然而很多人的这一梦想如同泡沫破碎般,在即将到来的2013年衔接点上,消散得无影无踪。寒风将冬天带到了世界,末日并没有来 ...…

查看全部问答>

周计划+基于瑞萨RL78/G14双轮自平衡小车

周计划+基于瑞萨RL78/G14双轮自平衡小车试用者ID:mcu200689 周计划周论坛提交内容9.16-9.22  (第一周)熟悉开发板硬件资源基于开发板的基础实验9.23-9.29  (第二周)查找设计需要的元件资料,设计原理图公布原理图,基于两轮自 ...…

查看全部问答>

求助大神编程序~~在线等

  实验过程中搭建的模块有:单片机最小系统,DS18B20 模块,蜂鸣器或者红色 LED(也 可两者都有) 。 此次实验的目标是,制作基于 DS18B20 的温度报警系统。任意设定一个安全温度,当 温度达到或超过安全温度时,令蜂鸣器发出声响, ...…

查看全部问答>