实验原理:

  通过STM32的三个GPIO驱动一个三色LED,引脚PB2接红色LED(ARM_LEDR),

引脚PA9接蓝色LED(ARM_LEDB),引脚PA10接绿色LED(ARM_LEDG),  GPIO为推

挽输出模式,采用灌电流方式与LED连接,通过拉高拉低GPIO电平,从而控制LED亮灭。

实验现象:

  该实验实现跑马灯功能,红、绿、蓝三色LED每隔500ms循环点亮。

源代码下载链接:

链接:http://pan.baidu.com/s/1eSu18A2 密码:ud87

核心源码:

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();/* USER CODE BEGIN 2 *//* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */
        LED_RED_ON;LED_BLUE_OFF;LED_GREEN_OFF;HAL_Delay(500);LED_RED_OFF;LED_BLUE_ON;LED_GREEN_OFF;HAL_Delay(500);LED_RED_OFF;LED_BLUE_OFF;LED_GREEN_ON;HAL_Delay(500);}/* USER CODE END 3 */}

/* USER CODE BEGIN Private defines */
#define LED_RED_ON HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_RESET)
#define LED_RED_OFF HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2, GPIO_PIN_SET)#define LED_BLUE_ON HAL_GPIO_WritePin(GPIOA, GPIO_PIN_9, GPIO_PIN_RESET)
#define LED_BLUE_OFF HAL_GPIO_WritePin(GPIOA, GPIO_PIN_9, GPIO_PIN_SET)#define LED_GREEN_ON HAL_GPIO_WritePin(GPIOA, GPIO_PIN_10, GPIO_PIN_RESET)
#define LED_GREEN_OFF HAL_GPIO_WritePin(GPIOA, GPIO_PIN_10, GPIO_PIN_SET)
/* USER CODE END Private defines */

iCore4链接:

【iCore4 双核心板_ARM】例程一:ARM驱动三色LED相关推荐

  1. 【iCore4 双核心板_ARM】例程五:SYSTICK定时器 实验——定时点亮LED

    实验原理: 通过STM32的三个GPIO口驱动三色LED的三个通道,设定GPIO为推挽输出模式,采 用灌电流方式与LED连接,输出高电平LED灭,输出低电平LED亮,通过系统定时器实现 1s定时,每秒 ...

  2. 【iCore4 双核心板_ARM】例程十七:USB_MSC实验——读/写U盘(大容量存储器)

    实验方法: 1.将跳线冒跳至USB_UART,通过Micro USB 线将iCore4 USB-UART接口与电脑相连. 2.打开PUTTY软件. 3.通过读U盘转接线将U盘(或者读卡器)与iCore ...

  3. 【iCore4 双核心板_ARM】例程三十八:DSP MATH库测试

    实验现象: 核心代码: int main(void) {/* USER CODE BEGIN 1 */int i,j;int res;float time[2];static int error_fl ...

  4. 【iCore4 双核心板_ARM】例程二十:LWIP_TCP_CLIENT实验——以太网数据传输

    实验现象: 核心代码: int main(void) { system_clock.initialize(); //ϵͳʱÖÓ³õʼ»¯led.initialize(); //LED³õʼ» ...

  5. 【iCore4 双核心板_ARM】例程二十三:LWIP_HTTP实验——网页服务器

    实验现象: 核心代码: int main(void) { system_clock.initialize(); led.initialize(); adc.initialize(); delay.in ...

  6. 【iCore4 双核心板_ARM】例程十一:DMA实验——存储器到存储器的传输

    实验原理: DAM(直接存储器访问)传输不需要占用CPU,可以在存储器至存储器实现高速的数据 传输.本实验采用DAM2控制器的数据流0,选用通道0进行数据传输.通过LED的颜色来 判断传输是否成功. ...

  7. 【iCore1S 双核心板_ARM】例程五:IWDG看门狗实验——复位ARM

    实验原理: STM32内部包含独立看门狗,通过看门狗可以监控程序运行,程序错误 时,未在规定时间喂狗,自动复位ARM.本实验通过按键按下,停止喂狗, 制造程序运行 错误,从而产生复位 . 实验现象: ...

  8. 【iCore4 双核心板_FPGA】例程七:状态机实验——状态机使用

    实验现象: 按键每按下一次,三色LED改变一次状态. 核心代码: //--------------------module_rst_n---------------------------// mod ...

  9. SAM9X60 curiosity开发板,SYSFS文件系统控制板载三色Led

    驱动位于\buildroot-external-microchip\build\linux-custom\drivers\leds 开发板使用sam9x60_curiosity 应用层控制外设的两种不 ...

最新文章

  1. 【记录】入选《开发工具领域内容榜》第6名
  2. HDU.4903.The only survival(组合 计数)
  3. SQL Server 2012入门T-SQL基础篇:(1)环境准备
  4. IOS报错:Unexpected ‘@’ in program
  5. C++中对象的构造顺序和析构顺序
  6. 尚学python课程---11、linux环境下安装python注意
  7. ad元件定位孔放在哪一层_打造个人IP系列(4)——确立定位 搭建人设(上)
  8. 简明Vim练级攻略(初学者)
  9. J2EE的13个规范之(二) JDBC 及其使用
  10. 获取本机IP(考虑多块网卡、虚拟机等复杂情况)
  11. 品质标签分几种颜色_常见标签种类分析
  12. 数据可视化系列(六):场景案例显神通
  13. 用fiddler解决跨域访问
  14. Android--建立能与访问者进行相互通信的本地服务
  15. 网站中应用QQ一键登录,详细讲解和范例
  16. java编写的视频网站实例_一个在线视频网站的java web 后端开发
  17. 好工具推荐系列:Github客户端GitHub Desktop使用方法
  18. 抖音视频怎么上热门 视频去水印
  19. 关于python中.item()的用法
  20. 热搜第一!中国烟草总公司工资曝光,员工人均年收入超18万元!网友:简直是不锈钢饭碗!...

热门文章

  1. 5分钟读懂什么是虚拟数字人
  2. 电脑计算机管理点不出来,控制面板在哪? 如何解决控制面板打不开?
  3. Java读写word带样式,java将html导出带样式word文档
  4. 初中生计算机网络试题,中学生2020年信息考试考试题库120份试卷汇编(含答案)(50页)-原创力文档...
  5. python判断城市属于的省份
  6. 我的feko怎么了?
  7. 微信小程序胶囊提示气泡
  8. 读书笔记_011《肖申克的救赎》
  9. UnityVR--组件1--Camera--第三人称相机控制
  10. 六 c# 字符与字符串