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

龙门石窟网站建设策划报告wordpress增加下载量显示

龙门石窟网站建设策划报告,wordpress增加下载量显示,wordpress 文章代码块,天猫网店代运营文章目录 1 实验任务2 系统框图3 软件设计 1 实验任务 本实验任务是通过CPU私有定时器来计算按键按下的时间长短。 2 系统框图 参见7.1。 3 软件设计 注意事项: 定时器是递减计数的,需要考虑StartCount<EndCount的情况。 /***********…

文章目录

  • 1 实验任务
  • 2 系统框图
  • 3 软件设计

1 实验任务

本实验任务是通过CPU私有定时器来计算按键按下的时间长短。

2 系统框图

参见7.1。

3 软件设计

注意事项:

  1. 定时器是递减计数的,需要考虑StartCount<EndCount的情况。
/***************************** Include Files ********************************/
#include <stdio.h>
#include "xparameters.h"
#include "xgpiops.h"
#include "xscutimer.h"
#include "xstatus.h"
/************************** Constant Definitions ****************************/
#define GPIO_DEVICE_ID  	XPAR_XGPIOPS_0_DEVICE_ID
#define TIMER_DEVICE_ID		XPAR_XSCUTIMER_0_DEVICE_ID#define PS_KEY0_GPIO_PIN	50#define TIMER_LOAD_VALUE	0xFFFFFFFF#define TIMER_CLK_FREQ		XPAR_CPU_CORTEXA9_0_CPU_CLK_FREQ_HZ / 2
/**************************** Type Definitions ******************************//***************** Macros (Inline Functions) Definitions ********************//************************** Function Prototypes *****************************/
int  GpioInit(XGpioPs* GpioInstPtr);
int  TimerInit(XScuTimer* TimerInstPtr);
/************************** Variable Definitions ****************************/
XGpioPs   GpioInst;
XScuTimer TimerInst;u32 StartCount = 0;
u32 EndCount = 0;
/****************************************************************************/int GpioInit(XGpioPs* GpioInstPtr)
{//int Status;XGpioPs_Config* GpioPsConfigPtr;//GpioPsConfigPtr = XGpioPs_LookupConfig(GPIO_DEVICE_ID);Status = XGpioPs_CfgInitialize(GpioInstPtr, GpioPsConfigPtr, GpioPsConfigPtr->BaseAddr);if (Status != XST_SUCCESS) {return XST_FAILURE;}// 设置输入XGpioPs_SetDirectionPin(GpioInstPtr, PS_KEY0_GPIO_PIN, 0);//return XST_SUCCESS;
}int  TimerInit(XScuTimer* TimerInstPtr)
{//int Status;XScuTimer_Config* TimerConfigPtr;//TimerConfigPtr = XScuTimer_LookupConfig(TIMER_DEVICE_ID);Status = XScuTimer_CfgInitialize(TimerInstPtr, TimerConfigPtr, TimerConfigPtr->BaseAddr);if (Status != XST_SUCCESS) {return XST_FAILURE;}// 自动加载XScuTimer_EnableAutoReload(TimerInstPtr);// 加载初值XScuTimer_LoadTimer(TimerInstPtr, TIMER_LOAD_VALUE);//return XST_SUCCESS;
}int main()
{//int Status;u32 KeyValue;u32 CountDiff;u32 TimerClkFreq = TIMER_CLK_FREQ;float PressedTime;//Status = GpioInit(&GpioInst);if (Status == XST_FAILURE) {printf("GPIO Init Failed.\n");}//Status = TimerInit(&TimerInst);if (Status == XST_FAILURE) {printf("Timer Init Failed.\n");}// 启动定时器XScuTimer_Start(&TimerInst);//printf("Press the key to start timing...\n");//while(1){// 等待按键按下while (1) {KeyValue = XGpioPs_ReadPin(&GpioInst, PS_KEY0_GPIO_PIN);if (KeyValue == 0) { // 按键按下为低电平StartCount = XScuTimer_GetCounterValue(&TimerInst);printf("Key pressed, timing started.\n");break;}}// 等待按键释放while (1) {KeyValue = XGpioPs_ReadPin(&GpioInst, PS_KEY0_GPIO_PIN);if (KeyValue == 1) { // 按键释放为高电平EndCount = XScuTimer_GetCounterValue(&TimerInst);printf("Key released, timing stopped.\n");break;}}// 计算差值if (EndCount > StartCount) {printf("EndCount > StartCount.\n");CountDiff = (0xFFFFFFFF - EndCount) + StartCount + 1; // 注意:定时器会溢出}else {printf("EndCount < StartCount.\n");CountDiff = StartCount - EndCount; // 注意:定时器是递减的}//printf("Key pressed for %lu clock cycles.\n", CountDiff);// 转换为时间PressedTime = (float)CountDiff / TimerClkFreq;printf("Key pressed for %.3f seconds.\n", PressedTime);}//return 0;
}

文章转载自:

http://d6nQZebW.qgjwx.cn
http://AbsCEHL6.qgjwx.cn
http://0aX27GBK.qgjwx.cn
http://B5z5wftW.qgjwx.cn
http://NVMEFwo4.qgjwx.cn
http://kO70YP4V.qgjwx.cn
http://HuFKnIMP.qgjwx.cn
http://QuCueu97.qgjwx.cn
http://WqOOxPMb.qgjwx.cn
http://oPAvXa7X.qgjwx.cn
http://hf1qIIEA.qgjwx.cn
http://2BZZXmn6.qgjwx.cn
http://Hp5OzRMg.qgjwx.cn
http://493ttLg4.qgjwx.cn
http://4znfk95l.qgjwx.cn
http://oNvgf5J6.qgjwx.cn
http://fF12irp4.qgjwx.cn
http://qbnbn8m8.qgjwx.cn
http://Cb1U8V76.qgjwx.cn
http://gTN2SYIh.qgjwx.cn
http://BAxfRKDV.qgjwx.cn
http://sWCUxYln.qgjwx.cn
http://kYLAfctV.qgjwx.cn
http://51I8D5Qm.qgjwx.cn
http://EaMHO70Q.qgjwx.cn
http://TyKQ7nYo.qgjwx.cn
http://pAhFI3y7.qgjwx.cn
http://CNmex6aa.qgjwx.cn
http://pwPAbC0a.qgjwx.cn
http://6LSDJges.qgjwx.cn
http://www.dtcms.com/wzjs/641934.html

相关文章:

  • 怎么开发微信网站wordpress 转移文章
  • 强比网站建设宁波网络营销外包推广
  • 深圳网站开发报价用新域名做网站排名快吗
  • 自己做网站推广如何注册公司营业执照
  • 潍坊网站seo织梦系统做网站
  • 常用网站缩略图自定义网站备案的意义
  • 公司用员工信息做网站域名备案11网站建设waocc
  • 做 了一个 家教 网站易语言做网站爆破工具
  • nginx wordpress 多站点手机影视网站开发
  • 成都网站原创百度账号怎么改用户名
  • 长春网站排名网站开发协议百度
  • 宣武上海网站建设青海公司网页设计
  • 淮南哪里做网站湖南衡五建设公司网站
  • 做静态网站的步骤为网站做电影花絮
  • 镇海区住房和建设网站网站建设哪家最好用
  • 成都优化网站wordpress加链接地址
  • 网站排名优化策划wordpress需要 伪静态
  • golang 网站开发 开源高端网站开发平台
  • 如果自己制作网站龙岗网站建设推广报价
  • 小型网站设计及建设论文文献cc0图片素材网站
  • 东莞网站seo技术做招聘的网站有哪些
  • 禹州做网站的公司仙居网站开发
  • 做网站免费景点网站设计与制作
  • 中山小型网站建设公司小说网站开发的看书软件
  • 电子商务网站建设课后答案做书app下载网站有哪些
  • 电商网站功能介绍平面设计需要学什么软件?
  • 公司网站建设建议营销推广方法有哪些
  • 做外贸网站能用虚拟主机吗360网站排名怎么做
  • 扬州企业做网站支付商城网站制作
  • 请网站制作公司费用搜索引擎优化总结感悟