常用的stm32库函数
//初始化的方式:先定义初始化机构体、再打开时钟使能、在对每一组GPIO口进行初始化。 GPIO_InitTypeDef LED_GPIO;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB |RCC_APB2Periph_GPIOD, ENABLE); //ʹÄÜPB,PD¶Ë¿ÚʱÖÓ LED_GPIO.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6; //Ö¸¶¨Òý½Å PD3,4,5,6LED_GPIO.GPIO_Mode = GPIO_Mode_Out_PP; //ÍÆÍìÊä³öLED_GPIO.GPIO_Speed = GPIO_Speed_50MHz; //IO¿ÚËÙ¶ÈΪ50MHzGPIO_Init(GPIOD, &LED_GPIO); //¸ù¾ÝÉ趨²ÎÊý³õʼ»¯//---------- PB8 ----------------------------LED_GPIO.GPIO_Pin = GPIO_Pin_8; //Ö¸¶¨Òý½Å PB8LED_GPIO.GPIO_Mode = GPIO_Mode_Out_PP; //ÍÆÍìÊä³öLED_GPIO.GPIO_Speed = GPIO_Speed_50MHz; //IO¿ÚËÙ¶ÈΪ50MHzGPIO_Init(GPIOB, &LED_GPIO); //¸ù¾ÝÉ趨²ÎÊý³õʼ»¯
- 点亮某个灯的代码
GPIO_SetBits(GPIOD, GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6);GPIO_SetBits(GPIOB,GPIO_Pin_8);
或者用宏定义
#define LED_light(x) ( GPIOD_BSRR |= 0x0001<<x ) #define LED_Close(x) ( GPIOD_BRR |= 0x0001<<x ) #define LED_ALL_light ( GPIO_ODR |= 0x0078 ) #define LED_ALL_close ( GPIO_ODR &= 0xff87 )
- 在数码管上显示对应的数字的代码
//单个来看:在PE8对应的数码管上显示数字0的代码 case 1: { GPIOE->BSRR |= 0x0001<<8; //将PE8端口置高电平GPIOE->BRR |= 0x3e00;//将其他的PE9,10,11都置为地电平GPIOE->BRR |= 0x00ff; //将数码管对应的8段都置为0GPIOE->BSRR |= Nixie_x[data]; //按数组里面的设置显示对应的字符break;}
void Nixietube_light(u8 num, u8 data){switch(num){ // 第几位 数字0-9case 1: { GPIOE->BSRR |= 0x0001<<8; GPIOE->BRR |= 0x3e00; GPIOE->BRR |= 0x00ff; GPIOE->BSRR |= Nixie_x[data]; break;}case 2: { GPIOE->BSRR |= 0x0001<<9; GPIOE->BRR |= 0x3d00; GPIOE->BRR |= 0x00ff;GPIOE->BSRR |= Nixie_x[data]; break;}case 3: { GPIOE->BSRR |= 0x0001<<10; GPIOE->BRR |= 0x3b00; GPIOE->BRR |= 0x00ff;GPIOE->BSRR |= Nixie_x[data]; break;}case 4: { GPIOE->BSRR |= 0x0001<<11; GPIOE->BRR |= 0x3700; GPIOE->BRR |= 0x00ff;GPIOE->BSRR |= Nixie_x[data]; break;}case 5: { GPIOE->BSRR |= 0x0001<<12; GPIOE->BRR |= 0x2f00; GPIOE->BRR |= 0x00ff;GPIOE->BSRR |= Nixie_x[data]; break;}case 6: { GPIOE->BSRR |= 0x0001<<13; GPIOE->BRR |= 0x1f00; GPIOE->BRR |= 0x00ff;GPIOE->BSRR |= Nixie_x[data]; break;}default: break;}}
转载于:https://www.cnblogs.com/dadidelearning/p/10018257.html
常用的stm32库函数相关推荐
- STM32——库函数开发小结
STM32--库函数开发小结 宗旨:技术的学习是有限的,分享的精神是无限的. 基本上所有外设都有以下几类寄存器:[CR/DR/SR] (1)控制寄存器 xxx_CR(Control/Configura ...
- 基于不同STM32库函数的代码性能对比
前言 ST已经推出了三种库函数,以方便客户快速开发STM32系列MCU.从最早的标准外设驱动库,到后来的Cube HAL,再到Cube LL以及直接操作寄存器.这几种库的代码效率到底如何呢?本文将针对 ...
- c++fabs函数_C语言中常用的标准库函数有哪些?
点击上方蓝色字关注我们! 本文转自网络,版权归原作者所有. 标准头文件包括: 一.标准定义() 文件里包含了标准库的一些常用定义,无论我们包含哪个标准头文件,都会被自动包含进来. 这个文件里定义: 类 ...
- 使用MDK创建stm32 库函数工程简单教程
一. 需要准备的资料及环境: 1.STM32固件库,我们使用的固件库为STM32F10x_StdPeriph_Lib_V3.5.0,可在st官方下载 2.MDK开发环境(我们使用的版本为MDK4.7A ...
- STM32 库函数学习 TIM篇
1.HAL_StatusTypeDef HAL_TIM_Base_Init (TIM_HandleTypeDef * htim) 这个函数属于定时器使用基本的定时功能的初始化函数,它的输入参数为自定义 ...
- 初学24CXX系列EEPROM使用详解STM32库函数I2C总线
24CXX系列芯片属于EEPROM(Electrically Erasable Programmable read only memory)即电可擦可编程只读存储器,是一种掉电后数据不丢失(不挥发)存 ...
- 常用oracle数据库函数总结
wm_concat的基本语法 select proj_id,max(scale_valus) as scale_valus from(select a.proj_id, wm_concat(a.sca ...
- 【C】——常用C时间库函数
asctime(将时间和日期以字符串格式表示) 相关函数 time,ctime,gmtime,localtime 表头文件 #include<time.h> 定义函数 char * ...
- linux的常用操作——C库函数和系统函数的关系
最新文章
- 2010 ACM/ICPC Online-Contest-SCU[四川赛区网络预选赛]
- 区块链死亡项目列表小程序:死亡硬币
- Java8 ReentrantLock 源码分析
- 2017 ACM Jordanian Collegiate J.Efficiency Test 动态规划、类倍增
- tomcat的安装及配置
- Syntax Error: TypeError: this.getOptions is not a function
- 听云数据库管理平台NetopGO简介
- Leetcode每日一题:402.remove-k-digits(移掉k位数字)
- RESTLET开发实例
- Matlab归一化方法
- ulead gif animator 5.11中文破解版|ulead gif animator绿色中文破解版下载 v5.11
- 【信号处理】基于高阶统计量特征的通信系统中微弱信号检测附matlab代码
- iOS小知识:nib本地化、图片本地化字符串本地化(APP 内的本地化切换)
- 生于七十年代的20位最具潜质商业精英
- cf446 div2
- 计算机辅助语文识字教学的优势,开放式识字教学研究
- windows下nginx+lua+redis实现短域名服务
- 嵌入式ARM64 Linux内核FIT uimage方式启动
- html5猜大王游戏,水果大王小游戏
- 如何避免毕业论文选题和别人雷同?