K60 GPIO外部中断
来源:互联网 发布:php程序员的发展方向 编辑:程序博客网 时间:2024/05/21 21:37
K60几乎可以把任意一个GPIO用作外部中断
gpio_init_struct.GPIO_PTx = PTA; //PORTA gpio_init_struct.GPIO_Pins = GPIO_Pin19; //引脚6、7 gpio_init_struct.GPIO_Dir = DIR_INPUT; //输入 gpio_init_struct.GPIO_PinControl =INPUT_PULL_UP|IRQC_FA; //内部上拉|上升沿中断 gpio_init_struct.GPIO_Isr = porta_isr; //中断函数 LPLD_GPIO_Init(gpio_init_struct); //使能中断 LPLD_GPIO_EnableIrq(gpio_init_struct); gpio_init_struct.GPIO_PTx=PTA; gpio_init_struct.GPIO_Pins =GPIO_Pin10; gpio_init_struct.GPIO_Dir =DIR_OUTPUT; gpio_init_struct.GPIO_Output =OUTPUT_H; gpio_init_struct.GPIO_PinControl =IRQC_DIS; LPLD_GPIO_Init(gpio_init_struct);
if(LPLD_GPIO_IsPinxExt(PORTA,GPIO_Pin19)) { //去抖 delay(); if(PTA19_I==0) { PTA10_O=0; delay();delay();delay(); delay();delay();delay(); delay();delay();delay(); PTA10_O=1; } }
要用外部中断,就要配置好寄存器,写好中断函数
我这里用A口的19号引脚作为按键外部中断检测,A口的10号引脚做LED输出
void init_gpio()
{
}
第五行的 gpio_init_struct.GPIO_Isr =porta_isr;是把中断函数的名字赋给GPIO_Isr,用来存中断函数的地址指针,然后使能中断
中断函数
void porta_isr()
{
}
这个中断函数的名字就是给GPIO_Isr的值,GPIO的每一个PIN都有中断标志位,而LPLD_GPIO_IsPinxExt(PORTx,GPIO_Piny)就是PORTx的Piny端口的中断标志位。一旦产生中断,标志位为1,执行中断函数内容。
还有提示,这里的中断函数是要声明的,和51不一样,51的是可以不用声明的
阅读全文
0 0
- K60 GPIO外部中断
- K60 first GPIO
- STM32--GPIO和外部中断
- STM32F10X系列GPIO外部中断
- STM32 外部GPIO中断配置
- STM32 GPIO外部中断总结
- STM32 GPIO外部中断总结
- 28335GPIO及外部中断配置介绍
- 【DSP】TMS320F28035 GPIO外部中断例程
- PIC 外部中断INT0
- STM32外部中断详解
- K60 ADC
- K60 PIT定时器
- STM32简单入门程序分析之GPIO,外部中断
- LPC1768菜鸟学习之GPIO和外部中断
- (4.2)uboot详解——外部中断(GPIO)
- STM32F103 GPIO的外部中断的使用例子。
- 一知半解学CubeMX——GPIO:外部(按键)中断
- NYOJ:14-会场安排问题
- 自动走迷宫_记录走的路径
- 腾讯2016研发工程师编程题
- K60 first GPIO
- 校招三期计划安排表
- K60 GPIO外部中断
- 面试题27:二叉搜索树与双向链表
- K60 ADC
- K60 PIT定时器
- 推荐两部rina的日剧(要喜欢看哦)
- 关于第一次在ARM处理器上搭载操作…
- Linux操作系统快速体验和常用指令…
- GCC编译器初步
- bootloader的核心初始化forARM11