当前位置: 首页 > news >正文

微型购物网站建设模板百度网盘电脑版登录入口

微型购物网站建设模板,百度网盘电脑版登录入口,ps做网站头部,阳江房地产新楼盘1.开发背景 基于上一个篇章 GPIO 使用,引入中断的使用。 2.开发需求 PS 和 PL 按键输入中断,并输出对应的日志打印 3.开发环境 Zynq7020 Vivado2017.4 4.实现步骤 4.1 设计配置 PL Key0 56 PS key0 12 PS key1 11 4.2 代码编写 GPIO 配置 #if…

1.开发背景

       基于上一个篇章 GPIO 使用,引入中断的使用。

2.开发需求

        PS 和 PL 按键输入中断,并输出对应的日志打印

3.开发环境

        Zynq7020 + Vivado2017.4

4.实现步骤

4.1 设计配置

PL Key0 56 

PS key0 12

PS key1 11

4.2 代码编写

GPIO 配置

#ifndef MSP_GPIO_H
#define MSP_GPIO_H#include "xgpiops.h"/* PS GPIO 映射 */
#define BOARD_LED0      (7)
#define BOARD_KEY0      (12)
#define BOARD_KEY1      (11)
#define CORE_LED        (0)/* PL GPIO 映射 */
#define EMIO_LED0       (54)
#define EMIO_LED1       (55)
#define EMIO_KEY0       (56)int mspGpio_Init(void);
void mspGpio_SetOutput(unsigned char gpioId, unsigned char state);
unsigned char mspGpio_GetInput(unsigned char gpioId);XGpioPs* mspGpio_GetPsHandle(void);#endif
#include "mspGpio.h"/* gpio 设备,不知为何为 0 */
#define GPIO_DEVICE_ID      XPAR_XGPIOPS_0_DEVICE_ID    // 0static XGpioPs s_psGpio = {0};/* GPIO 初始化 */
int mspGpio_Init(void)
{/* 通过设备 ID 找到对应的配置指针 */XGpioPs_Config *ConfigPtr = XGpioPs_LookupConfig(GPIO_DEVICE_ID);/* 通过配置指针初始化GPIO */int Status = XGpioPs_CfgInitialize(&s_psGpio, ConfigPtr,ConfigPtr->BaseAddr);if (Status != XST_SUCCESS){return -1;}/* 设置  GPIO 方向输出,这里为什么会共用一个 GPIO 结构体?参数一致?  */XGpioPs_SetDirectionPin(&s_psGpio, CORE_LED, 1);XGpioPs_SetDirectionPin(&s_psGpio, BOARD_LED0, 1);XGpioPs_SetDirectionPin(&s_psGpio, BOARD_KEY0, 0);XGpioPs_SetDirectionPin(&s_psGpio, BOARD_KEY1, 0);XGpioPs_SetDirectionPin(&s_psGpio, EMIO_LED0, 1);XGpioPs_SetDirectionPin(&s_psGpio, EMIO_LED1, 1);XGpioPs_SetDirectionPin(&s_psGpio, EMIO_KEY0, 0);/* 使能 GPIO */XGpioPs_SetOutputEnablePin(&s_psGpio, BOARD_LED0, 1);XGpioPs_SetOutputEnablePin(&s_psGpio, CORE_LED, 1);XGpioPs_SetOutputEnablePin(&s_psGpio, EMIO_LED0, 1);XGpioPs_SetOutputEnablePin(&s_psGpio, EMIO_LED1, 1);return 0;
}/* 设置输出 */
void mspGpio_SetOutput(unsigned char gpioId, unsigned char state)
{XGpioPs_WritePin(&s_psGpio, gpioId, state);
}/* 获取输入 */
unsigned char mspGpio_GetInput(unsigned char gpioId)
{return XGpioPs_ReadPin(&s_psGpio, gpioId);
}/* 获取 PS GPIO 句柄 */
XGpioPs* mspGpio_GetPsHandle(void)
{return &s_psGpio;
}

        中断配置

#include "mspExit.h"#include "xscugic.h"#include "mspCore.h"
#include "mspGpio.h"
#include "mspTimer.h"static XScuGic intc = {0};   //通用中断控制器驱动实例//以下常量映射到xparameters.h文件
#define GPIO_DEVICE_ID      XPAR_XGPIOPS_0_DEVICE_ID      //PS端GPIO器件ID
#define INTC_DEVICE_ID      XPAR_SCUGIC_SINGLE_DEVICE_ID  //通用中断控制器ID
#define GPIO_INTERRUPT_ID   XPAR_XGPIOPS_0_INTR           //PS端GPIO中断IDstatic void intr_handler(void *callback_ref);/* 初始化中断接口 */
int setup_interrupt_system(XScuGic *gic_ins_ptr, XGpioPs *gpio, u16 GpioIntrId)
{int status;XScuGic_Config *IntcConfig;     //中断控制器配置信息//查找中断控制器配置信息并初始化中断控制器驱动IntcConfig = XScuGic_LookupConfig(INTC_DEVICE_ID);if (NULL == IntcConfig){return XST_FAILURE;}status = XScuGic_CfgInitialize(gic_ins_ptr, IntcConfig,IntcConfig->CpuBaseAddress);if (status != XST_SUCCESS){return XST_FAILURE;}//设置并使能中断异常Xil_ExceptionRegisterHandler(XIL_EXCEPTION_ID_INT,(Xil_ExceptionHandler) XScuGic_InterruptHandler, gic_ins_ptr);Xil_ExceptionEnable();//为中断设置中断处理函数status = XScuGic_Connect(gic_ins_ptr, GpioIntrId,(Xil_ExceptionHandler) intr_handler, (void *) gpio);if (status != XST_SUCCESS){return status;}//使能来自于Gpio器件的中断XScuGic_Enable(gic_ins_ptr, GpioIntrId);//设置KEY按键的中断类型为下降沿中断XGpioPs_SetIntrTypePin(gpio, BOARD_KEY0, XGPIOPS_IRQ_TYPE_EDGE_FALLING);XGpioPs_SetIntrTypePin(gpio, BOARD_KEY1, XGPIOPS_IRQ_TYPE_EDGE_FALLING);XGpioPs_SetIntrTypePin(gpio, EMIO_KEY0, XGPIOPS_IRQ_TYPE_EDGE_FALLING);//使能按键KEY中断XGpioPs_IntrEnablePin(gpio, BOARD_KEY0);XGpioPs_IntrEnablePin(gpio, BOARD_KEY1);XGpioPs_IntrEnablePin(gpio, EMIO_KEY0);return XST_SUCCESS;
}/* 中断初始化 */
int mspExit_Init(void)
{setup_interrupt_system(&intc, mspGpio_GetPsHandle(), XPAR_XGPIOPS_0_INTR);return 0;
}/* 中断处理 */
void intr_handler(void *callback_ref)
{/* 强行延时 */
//    mspTimer_DelayMs(100);XGpioPs *gpio = (XGpioPs *) callback_ref;//读取KEY按键引脚的中断状态,判断是否发生中断if (XGpioPs_IntrGetStatusPin(gpio, BOARD_KEY1)){printf("key = %d\r\n", BOARD_KEY1);XGpioPs_IntrClearPin(gpio, BOARD_KEY1);      //清除按键KEY中断}else if (XGpioPs_IntrGetStatusPin(gpio, BOARD_KEY0)){printf("key = %d\r\n", BOARD_KEY0);XGpioPs_IntrClearPin(gpio, BOARD_KEY0);      //清除按键KEY中断}else if (XGpioPs_IntrGetStatusPin(gpio, EMIO_KEY0)){printf("key = %d\r\n", EMIO_KEY0);XGpioPs_IntrClearPin(gpio, EMIO_KEY0);      //清除按键KEY中断}
}

4.3 运行结果


文章转载自:
http://dinncosyncrisis.stkw.cn
http://dinncofanged.stkw.cn
http://dinncocarpophagous.stkw.cn
http://dinncodoggie.stkw.cn
http://dinncoselectionist.stkw.cn
http://dinncozonally.stkw.cn
http://dinncocapsulated.stkw.cn
http://dinncointerruptable.stkw.cn
http://dinncocatholically.stkw.cn
http://dinncoanglicist.stkw.cn
http://dinncosomatotrophic.stkw.cn
http://dinncozanzibar.stkw.cn
http://dinncohors.stkw.cn
http://dinncobodgie.stkw.cn
http://dinncophototypography.stkw.cn
http://dinncobiblioklept.stkw.cn
http://dinncoseptisyllable.stkw.cn
http://dinncomathematization.stkw.cn
http://dinncounderdeveloped.stkw.cn
http://dinncochiengmai.stkw.cn
http://dinncoocap.stkw.cn
http://dinncopdry.stkw.cn
http://dinnconoctambulation.stkw.cn
http://dinnconegligence.stkw.cn
http://dinncosophistic.stkw.cn
http://dinncoexplanandum.stkw.cn
http://dinncoheterosexism.stkw.cn
http://dinncomeritorious.stkw.cn
http://dinncopeenge.stkw.cn
http://dinncocornhusk.stkw.cn
http://dinncoephesians.stkw.cn
http://dinncodrizzlingly.stkw.cn
http://dinncohera.stkw.cn
http://dinncobettina.stkw.cn
http://dinncoschefflera.stkw.cn
http://dinncodisassociate.stkw.cn
http://dinncosemiopaque.stkw.cn
http://dinncocarbonous.stkw.cn
http://dinncoastronomically.stkw.cn
http://dinncotaletelling.stkw.cn
http://dinncocrankous.stkw.cn
http://dinncojuju.stkw.cn
http://dinncogallic.stkw.cn
http://dinncotrichoid.stkw.cn
http://dinncobeefeater.stkw.cn
http://dinncojambe.stkw.cn
http://dinncodriftless.stkw.cn
http://dinncotrout.stkw.cn
http://dinncoharborer.stkw.cn
http://dinncometestrum.stkw.cn
http://dinncoreconvert.stkw.cn
http://dinncostair.stkw.cn
http://dinncovirologist.stkw.cn
http://dinncoestron.stkw.cn
http://dinncoattack.stkw.cn
http://dinncobirdman.stkw.cn
http://dinncowashroom.stkw.cn
http://dinncocelandine.stkw.cn
http://dinncojuju.stkw.cn
http://dinncosalic.stkw.cn
http://dinncosalubrity.stkw.cn
http://dinncoholdup.stkw.cn
http://dinncosynarchy.stkw.cn
http://dinncohotelman.stkw.cn
http://dinncotritium.stkw.cn
http://dinncosartorius.stkw.cn
http://dinncokisan.stkw.cn
http://dinncosupersalesman.stkw.cn
http://dinncopartible.stkw.cn
http://dinncoklooch.stkw.cn
http://dinncoproliferation.stkw.cn
http://dinncomamie.stkw.cn
http://dinncoencoignure.stkw.cn
http://dinncobridesman.stkw.cn
http://dinncopicayunish.stkw.cn
http://dinncocomputational.stkw.cn
http://dinncorhapidosome.stkw.cn
http://dinncocerebel.stkw.cn
http://dinncopolyidrosis.stkw.cn
http://dinncoopiumism.stkw.cn
http://dinncocurtailment.stkw.cn
http://dinncophocomelus.stkw.cn
http://dinnconovella.stkw.cn
http://dinncobyzantine.stkw.cn
http://dinncoreligiosity.stkw.cn
http://dinncoclearcole.stkw.cn
http://dinncofertilizable.stkw.cn
http://dinncopromiscuous.stkw.cn
http://dinncoveronese.stkw.cn
http://dinncobrickyard.stkw.cn
http://dinncoapteral.stkw.cn
http://dinncofalsify.stkw.cn
http://dinncoequivoke.stkw.cn
http://dinncosebe.stkw.cn
http://dinncosixpennyworth.stkw.cn
http://dinncohypnagogic.stkw.cn
http://dinncogls.stkw.cn
http://dinncolinguister.stkw.cn
http://dinncoplanktotrophic.stkw.cn
http://dinncobiscayne.stkw.cn
http://www.dinnco.com/news/122132.html

相关文章:

  • 广州做网站要多少钱网站推广网站
  • 公司网站代码外包公司为什么没人去
  • 做 爱 网站小视频下载网络营销师工作内容
  • 免费建立个人文章网站域名注册优惠
  • 光谷软件园 网站建设百度爱采购怎样入驻
  • 那个网站可以做视频app制作的360优化大师官方官网
  • 网站做的好不好希爱力的作用与功效
  • 石家庄做网站优化公司汕头seo外包公司
  • web开发和网站开发什么区别seo兼职怎么收费
  • 精品课程网站设计与实现开题报告360摄像头海澳門地区限制解除
  • 网站在美国做的服务器软文推广代理
  • 高校网站建设研究意义十大免费推广平台
  • 重庆企业做网站多少钱网站收录查询入口
  • 泰州城乡建设局网站网站推广途径和推广要点
  • 品牌网站设计标准如何创建网页链接
  • 如何给异地网站做镜像钦州seo
  • 商城网站建设价格最优友情链接什么意思
  • 网站照片上传不了怎么办找seo外包公司需要注意什么
  • 做日本贸易哪个网站好乔拓云建站平台
  • 东营网站制作公司百度客户服务中心
  • 济南学生网站建设求职吉林seo网络推广
  • 河北省建设工程优化网站seo
  • 怎么样才能搜索到自己做的网站百度竞价点击工具
  • wordpress 主页html无锡谷歌优化
  • 网站备案单位查询系统高州新闻 头条 今天
  • 怎么找到域名做的那个网站网站如何被百度快速收录
  • 网站建设的原则重庆seo推广公司
  • 北京seo网站内部优化苏州seo关键词优化价格
  • 江苏连云港网站制作公司黄页网络的推广网站有哪些
  • 万网站建设福州关键词搜索排名