博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【iCore1S 双核心板_ARM】例程十:SYSTICK定时器实验——定时点亮LED
阅读量:6219 次
发布时间:2019-06-21

本文共 1768 字,大约阅读时间需要 5 分钟。

实验原理:

  通过STM32的三个GPIO口驱动三色LED的三个通道,设定GPIO为推挽输出,采用

灌电流的方式与LED连接,输出高电平LED灭,输出低电平LED亮,通过系统定时器实现

1s定时,每秒变换一次LED颜色。

核心代码:

int main(void){  /* USER CODE BEGIN 1 */    static int work_status = 0;  /* 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();             //GPIO ³õʼ»¯  /* USER CODE BEGIN 2 */  /* USER CODE END 2 */  /* Infinite loop */  /* USER CODE BEGIN WHILE */  while (1)  {    //ÿ¸ôÒ»ÃëÈýÉ«µÆ½øÐн»ÌæÑ­»·ÉÁ˸  /* USER CODE END WHILE */  /* USER CODE BEGIN 3 */                if(systick.second_flag == 1){            systick.second_flag = 0;            work_status += 1;            if(work_status > 2)work_status = 0;        }        switch (work_status){            case 0 :                LED_RED_ON;                LED_GREEN_OFF;                LED_BLUE_OFF;                break;                            case 1 :                LED_RED_OFF;                LED_GREEN_ON;                LED_BLUE_OFF;                break;                            case 2:                LED_RED_OFF;                LED_GREEN_OFF;                LED_BLUE_ON;                break;                            default:                                break;            }  }  /* USER CODE END 3 */}
void HAL_SYSTICK_Callback(void){    static int counter = 0;        if((counter ++ % 1000) == 0){        systick.second_flag = 1;    }}

源代码下载链接:

链接: 密码:70sj

转载地址:http://xqoja.baihongyu.com/

你可能感兴趣的文章
高仿Instagram 页面效果android特效
查看>>
2016 年总结
查看>>
将String转化成Stream,将Stream转换成String
查看>>
java路径Java开发中获得非Web项目的当前项目路径
查看>>
【工具使用系列】关于 MATLAB 遗传算法与直接搜索工具箱,你需要知道的事
查看>>
Kali-linux Arpspoof工具
查看>>
PDF文档页面如何重新排版?
查看>>
基于http协议使用protobuf进行前后端交互
查看>>
bash腳本編程之三 条件判断及算数运算
查看>>
php cookie
查看>>
linux下redis安装
查看>>
弃 Java 而使用 Kotlin 的你后悔了吗?| kotlin将会是最好的开发语言
查看>>
JavaScript 数据类型
查看>>
量子通信和大数据最有市场突破前景
查看>>
StringBuilder用法小结
查看>>
对‘初学者应该选择哪种编程语言’的回答——计算机达人成长之路(38)
查看>>
如何申请开通微信多客服功能
查看>>
Sr_C++_Engineer_(LBS_Engine@Global Map Dept.)
查看>>
非监督学习算法:异常检测
查看>>
App开发中甲乙方冲突会闹出啥后果?H5 APP 开发可以改变现状吗
查看>>