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

校园网站集群建设wordpress音乐加载慢

校园网站集群建设,wordpress音乐加载慢,泰安专业网站建设公司,深圳企业500强名单上一课#xff1a; 【小黑嵌入式系统第八课】初识PSoC Creator™开发——关于PSoC Creator下载、创建项目、单片机中的hello world#xff08;点亮一个led) 文章目录 1 实验目的2 实验要求3 实验设备4 实验原理1. 基于 PWM 原理的 LED 亮度控制2. 时间的计量3. 按键抖动… 上一课 【小黑嵌入式系统第八课】初识PSoC Creator™开发——关于PSoC Creator下载、创建项目、单片机中的hello world点亮一个led) 文章目录 1 实验目的2 实验要求3 实验设备4 实验原理1. 基于 PWM 原理的 LED 亮度控制2. 时间的计量3. 按键抖动影响的消除 5 设计实现1硬件连接2 软件设计 6 测试与分析 1 实验目的 掌握PSoC 5LP入门项目开发的基本流程熟悉PSoC 5LP I/O系统的主要结构熟悉PSoC 5LP GPIO的结构掌握其输入输出控制方法熟悉字符型LCD模块的基本显示控制方法实现由独立按键、LED、字符型LCD构造的基本人机接口。 2 实验要求 1结合LED流水灯示例项目学习并熟悉PSoC 5LP I/O系统的基本结构特别是GPIO的结构并掌握GPIO的输入输出控制实现方法 2结合Creator软件自带的HelloWorld_Blinky示例项目学习并熟悉HD44780型字符LCD模块的基本显示控制实现方法 3设计一个PSoC 5LP项目实现以下功能 a能够正确判断按键SW2、SW3的按下和松开的状态并通过软件延时再判的方式消除按键动作时抖动的影响b. LED3 ~ LED2同时闪烁亮度可以调整。提示基于PWM原理实现c. 用SW2调整LED3的亮度每按下一次增加或减少1挡亮度。用LED4亮指示LED3当前处于最低亮度或最高亮度其它亮度时LED4灭d. 用SW3调整LED2的亮度每按下一次增加或减少1挡亮度。用LED1亮指示LED2当前处于最低亮度或最高亮度其它亮度时LED1灭e. LCD的第一行显示LED3的亮度百分比值第二行显示LED2的亮度百分比值。 4以上功能可以全软件实现也可以考虑部分功能使用硬件方式实现如按键消抖参考应用笔记AN60024、LED显示。 更多的显示效果 5使LCD内容的显示更加友好 3 实验设备 CY8CKIT-050实验板 安装了PSoC Creator软件的PC机 4 实验原理 1. 基于 PWM 原理的 LED 亮度控制 本实验要求使用数字 I/O 口来连接控制 LED由于数字输出口只能输出高低两种电平并不能输出中间电压因此不能直接控制 LED 的亮度故采用 PWM 方式来实现亮度控制。 如果让 LED 全亮一段时间接着灭一段时间这个过程周而复始重复进行若重复频率足够高60Hz由于人眼的视觉暂留现象人眼辨别不出有闪烁看到的现象就是 LED 以一个中间亮度一直亮着。全亮占整个周期的比例越大LED 就越亮这个比例称为占空比假定高电平时亮其值范围为 0~100%。显然占空比为 0 时 LED 为灭100%时 LED 全亮度。 我们在需要 LED 亮时让连接到它的数字输出口输出 PWM 波形这样 LED 看起来就以某种亮度亮着在需要 LED 灭时则让数字输出口输出低电平假定低电平时灭。在需要 LED 闪烁时让这两个过程交替的重复进行重复频率设置得足够低如 1Hz人眼就能看到 LED 在闪烁了。 亮度受控的 LED 闪烁原理示意图 亮度受控的 LED 闪烁波形图左图 1 个闪烁周期右图为其中一部分 PWM 波形的放大 2. 时间的计量 要计量所经过的一段时间的时长总需要有一个时间粒度较细的参考时钟如 1ms 为周期的时钟。 1如果用硬件定时器Creator 提供了定时器组件来实现计时把这个参考时钟提供给硬件定时器定时器里的计数值会随参考时钟同步递增或递减那么 t1、t2 时刻的计数值差值乘以参考时钟周期就是 t1 到 t2 时刻所经历的时长。时间计量的需求非常普遍所有的处理器芯片内部都会包含至少一个硬件定时器。 2如果单纯用软件的方法来实现计时则必然会想到用软件延时函数Creator 提供了CyDelay()、CyDelayUs()函数这些延时函数是通过让 CPU 执行无意义的指令单纯消耗时间的方式实现的。如果 CPU 仅执行这些延时函数期间也没有被中断打断那么延时是准确的。 对于本实验的要求一方面的 LED 亮亮度受控PWM 波形什么时候输出高什么时候输出低需要计时另一方面的 LED 闪烁效果什么时候 LED 亮什么时候灭也需要计时。软件如何利用延时函数实现各种计时需求程序不能总是在做各种不同的延时因为延时期间是不能处理其它事情的而是应该仿照硬件定时器构造一个周期性的参考时钟。一种合理的实现方式如图 3所示在 main()函数主循环中串行地加入软件延时、任务 1、任务 2、……任务 m 的代码如果所有任务的执行耗时都比延时代码的耗时少很多则主循环一次的耗时一个主循环周期约等于延时代码的耗时。这样主循环就可以作为计时的参考时钟若程序运行经历了 n 轮主循环则经历的时长即为n * 主循环周期。 当然需要提醒也容易看出的是这个方案的计时准确性不能做到很高。即使想把各任务的执行时间考虑进来提高计时精度也是难以做到的因为实现某任务时经常难以做到任务执行时间等时而是会随任务流程的不同分支而波动。如果有中断计时会被中断处理延长并且发生波动。总之这个方案适用于不那么精确的计时需求。 因此对于 LED 亮亮度受控方面的计时需要设置一个变量来数经过的主循环次数可将其命名为tmr_pwm3与硬件定时器里的计数值等效对于 LED 闪烁效果方面的计时也需要设置一个变量来数经过的主循环次数可将其命名为 tmr_led3blink。 此外如图 1PWM 波形高→低的转换时刻决定了占空比程序中需要调整因此需要设置一个变量可将其命名为 tmout_pwm3comp。PWM 波形周期、LED 闪烁周期一般固定不变即可图 1 中因此分别用宏 TMOUT_PWMPRD、TMOUT_LED3BLINKPRD 定义单位为主循环周期。 3. 按键抖动影响的消除 机械按键在发生按下或松开动作的短时间内由于接触片的接触不良会出现反复通-断的现象称为按键抖动。按键抖动期间的时长一般**20ms**然后按键才处于稳定的通或断状态。如图 4 所示的按键状态波形图。 为了消除按键抖动的影响一种简单而有效的方法是对按键状态定时采样采样周期需大于抖动时长一般可取 20ms这种方法既可以用软件实现也可以用硬件实现。如图 4 所示波形每格为 10ms箭头处代表采样时刻及采样值很明显图中的各种采样值序列都只出现了一次 1→0对应到有一次按键按下假设按键松开时为高电平动作从而消除了按键抖动的影响。 从以上可以得出只要记录按键的当前采样值sw2_cur和上一采样值sw2_prev便可以判定当前的按键状态包括持续松开sw2_prev1 且 sw2_cur1、有按下动作发生sw2_prev1且 sw2_cur0、持续按下sw2_prev0 且 sw2_cur0、有松开动作发生sw2_prev0 且 sw2_cur1。 什么时候需要进行按键采样读取按键状态需要计时。如果单纯用软件的方法来实现这个计时如“一. 2.2”节所述也需要设置一个变量来数经过的主循环次数可将其命名为 tmr_debouncer采样周期固定不变则可以用宏 TMOUT_DEBOUNCER 定义之单位为主循环周期。 5 设计实现 1硬件连接 TopDesign PWM1 和 PWM2 分别控制LED2和LED3的亮度和闪烁当按键按下按键通过引脚 SW2 或 SW3 输出中 断中断程序调整 PWM 输出的占空比输出到 LED3 和 LED2 的引脚实现 LED3 和 LED2 亮度改变同时 LCD 显示 LED 亮度相关的字符。 1输出端口 配置4个相同的输出端口分别对应四个LED灯两个提供外部物理连接对应连接PWM输出LED_2、LED_3调节亮度两个端口悬空对应两个指示灯LED_1、LED_4设置初始状态为低电平为了后面给LED从外部灌电流增大。 2输入端口 配置两个输入端口对应两个按钮SW_2、SW_3连接两个中断中断源为按钮是否按下此处要进行软件消抖可以增加按钮动作的识别准确度当检测到按钮按下时产生中断反馈到PWM中进行动作。 3PWM模块 配置两个PWM模块PWM1、PWM2pwm1 和 pwm2 分别控制 LED2 和 LED3 的亮度以及闪烁因为我后面要实现LED亮度逐级从低到高所以初始占空比设置为0程序中以25%四级增加增加时钟为PWM进行计数和计时。 2 软件设计 1 总体设计 CyGlobalIntEnable; 启用全局中断允许中断事件触发处理函数。 2.uint8_t led3_brightness 0; uint8_t led2_brightness 0; 初始化LED3和LED2的亮度为0即初始状态下LED灯是关闭的。LCD_Char_Start(); LCD_Char_Position(0, 0); LCD_Char_PrintString(“LED3 Bright:”); LCD_Char_Position(1,0); LCD_Char_PrintString(“LED2 Bright:”); 启动LCD显示并在第一行显示LED3 Bright:“在第二行显示LED2 Bright:”。PWM_1_Start(); PWM_2_Start(); 启动PWM模块用于控制LED的亮度。if(!SW_2_Read()) // 如果按下SW2 检测SW2按钮是否被按下。led3_brightness25; PWM_1_WriteCompare(led3_brightness); 增加LED3的亮度并将新的亮度值设置为PWM的占空比从而控制LED3的 亮度。 7.while(!SW_2_Read()); 等待按键释放避免按键抖动。if(led3_brightness 100) { LED_4_Write(1); } 在LED3的亮度达到100%时点亮另一个LEDLED4。同样的操作和逻辑也适用于LED2和SW3。LCD_Char_Position(0, 12); LCD_Char_PrintNumber(led3_brightness); LCD_Char_PrintString(“%”); 用于更新LCD显示显示LED3的亮度百分比。CyDelay(100); // 延时消除按键抖动 引入延时以消除按键抖动。 2 详细设计 #include project.h #include stdio.hint main() {CyGlobalIntEnable; /* Enable global interrupts. */uint8_t led3_brightness 0; // 初始化LED3亮度为50%uint8_t led2_brightness 0; // 初始化LED2亮度为50%LCD_Char_Start(); // 启动LCDLCD_Char_Position(0, 0);LCD_Char_PrintString(LED3 Bright:);LCD_Char_Position(1,0);LCD_Char_PrintString(LED2 Bright:);PWM_1_Start();PWM_2_Start();for(;;){if(!SW_2_Read()) // 如果按下SW2{if(led3_brightness 100) // 增加LED3亮度{led3_brightness25;PWM_1_WriteCompare(led3_brightness); // 设置PWM占空比}while(!SW_2_Read()); // 等待按键释放if(led3_brightness 100){LED_4_Write(1);}}if(!SW_3_Read()) // 如果按下SW3{if(led2_brightness 100) // 增加LED2亮度{led2_brightness25;PWM_2_WriteCompare(led2_brightness); // 设置PWM占空比}while(!SW_3_Read()); // 等待按键释放if(led2_brightness 100){LED_1_Write(1);}}// 更新LCD显示LCD_Char_Position(0, 12);LCD_Char_PrintNumber(led3_brightness);LCD_Char_PrintString(%);LCD_Char_Position(1, 12);LCD_Char_PrintNumber(led2_brightness);LCD_Char_PrintString(%);CyDelay(100); // 延时消除按键抖动} }6 测试与分析 1初始状态四个LED灯都处于关闭状态LCD上显示LED2和LED3的亮度都为0%。 2亮度增加阶段SW2和SW3分别控制LED3和LED2的亮度每按一次亮度增加25%下面两张照片可以看出亮度的不一样。 3亮度最大阶段当LED2的亮度达到最大时LED1提示灯会亮起当LED3的亮度达到最大时LED4提示灯会亮起。
http://www.zqtcl.cn/news/65348/

相关文章:

  • 网站服务费网络建设会计分录微信代运营收费标准
  • 做推广必须知道的网站吗什么后台做网站安全
  • 如何做环保管家网站网站修改用什么工具
  • 网站开发建设中甘肃省建设厅网站
  • 做网站分什么软件网站电脑版和手机版区别
  • 毕业设计是做网站设计网站怎么集成支付宝
  • 开网站挣不挣钱vps网站如何设置缓存
  • 济南专门做公司网站的公司wordpress移动端广告位
  • 哈尔滨网站开发电话免费英文网站模板
  • 做面食视频网站网站建设和网页设计的关系
  • 互联网行业招聘网站移动公司需要网络工程专业
  • 成品网站源码68w68游戏福田祥菱双排座小货车
  • asp网站耗资源台州网站建设找哪家好点
  • dx网站是哪家公司做的建设对公银行网站打不开
  • 企业网站帮助中心excel做网页放进网站
  • 模版建站西安做网站缑阳建
  • 网站开发开题报告计划进度安排平台推广精准客源
  • 郑州模板网站设计哪家便宜网站开发相关专业
  • 网站建设技术托管招聘网站建设需求文档
  • 住房和城乡建设厅网站首页中国现在哪里建设最多
  • 娄底企业网站建设制作软件开发赚钱多吗
  • 企业做网站怎么做大连微信网站开发
  • 兴平住房和城乡建设局门户网站网页制作的软件是
  • 游戏网站建设公司手机网站可以做动态吗
  • 本地搭建wordpress建站教程做商城网站怎么做
  • 自己免费做网站的流程建设网站管理规定
  • 厦门网站建设格给医院做网站赚钱吗
  • 网站的seo相关指标湖南有实力seo优化
  • 制作门户网站如何用wordpress搭建企业网站
  • 如何修复网站中的死链wordpress 用户验证