C语言在单片机开发中的一些技巧
来源:互联网 发布:java开源吗 编辑:程序博客网 时间:2024/05/19 20:01
1、不改变其他位的值的状况下,对某几个位进行设值,方法就是先对需要设置的位用&操作符进行清零操作,然后用|操作符设值。比如我要改变GPIOA-> BSRRL的状态,可以先对寄存器的值进行&清零操作
GPIOA-> BSRRL &=0XFF0F; //将第4-7位清0 然后再与需要设置的值进行|或运算
GPIOA-> BSRRL |=0X0040; //设置相应位的值,不改变其他位的值。
2、结构体定义
MDK中有很多这样的结构体变量需要定义。这里我们可以为结体定义一个别名GPIO_TypeDef,这样我们就可以在其他地方通过别名GPIO_TypeDef来定义结构体变量了。方法如下:
typedef struct
{
__IO uint32_t MODER;
__IO uint32_t OTYPER; …
} GPIO_TypeDef;
Typedef为结构体定义一个别名GPIO_TypeDef,这样我们可以通过GPIO_TypeDef来定义结构体变量:
GPIO_TypeDef _GPIOA, _GPIOB;
这里的GPIO_TypeDef就跟struct _GPIO是等同的作用了。
阅读全文
0 0
- C语言在单片机开发中的一些技巧
- C语言在单片机开发过程中的应用
- 单片机中的C语言
- 笔记4:单片机C语言编程中的一些注意事项
- C语言开发过程中的一些积累
- 51单片机开发中的问题与技巧
- c语言的一些技巧
- c语言的一些技巧
- C语言之51单片机中的数据类型
- 在单片机C语言中const是什么意思
- C语言和汇编语言开发单片机
- 《C语言单片机开发趣味入门》第一节
- C语言"#","#@"和"##"在宏定义中的使用技巧
- 手把手教你学单片机--51单片机C语言开发
- 手把手教你学单片机--51单片机C语言开发
- 堆栈在C语言中的定义(单片机的中堆栈相当于栈)
- .NET开发中的一些技巧
- iOS开发中的一些技巧
- cocos2d-x C++部分编译出现 error C1083 无法打开源文件,No such file or directory
- 发现了一个有趣的字体:Fira Code字体(Eclipse可用)
- centos7 安装rmp mysql 5.7过程
- Android进阶之路
- 虚拟继承与菱形虚拟继承
- C语言在单片机开发中的一些技巧
- EFR32MG项目开发“复盘”
- 目标检测与跟踪
- 微信小程序开发(6)-表单数据组件的使用(picker,form,input,button)
- 数学黑洞
- 经典算法之快速排序
- Docker常用命令总结
- 关于AfxMessageBox没有重载函数
- Nagios监控linux主机以及硬件信息