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

汕头专业网站建设公司前端网站主题怎么做

汕头专业网站建设公司,前端网站主题怎么做,wordpress买域名,网站开发课题研究背景在完成《让Pegasus天马座开发板用上OLED屏》后#xff0c;我觉得可以把超声波测距功能也在Pegasus天马座开发板上实现。于是在箱子里找到了#xff0c;Grove - Ultrasonic Ranger 这一超声波测传感器。 官方地址: https://wiki.seeedstudio.com/Grove-Ultrasonic_Ranger 超声…在完成《让Pegasus天马座开发板用上OLED屏》后我觉得可以把超声波测距功能也在Pegasus天马座开发板上实现。于是在箱子里找到了Grove - Ultrasonic Ranger 这一超声波测传感器。 官方地址: https://wiki.seeedstudio.com/Grove-Ultrasonic_Ranger 超声波传感器使用 Grove - Ultrasonic Ranger测距模块一般配备有一个标准的Grove接口使得接线变得简单。通常这个模块有4个引脚 VCC供电引脚通常连接到5V。GND地引脚连接到微控制器的GND。SIG信号引脚用于传输数据。NC未连接No Connection通常不用 其中SIG信号引脚,是触发信号引脚也是发送测距时长反馈引脚(高电平的时长为超声波往返距离所以使用的时间)。 触发信号: 发送一个大于10us的脉冲信号到SIG引脚回复信号: 接收脉冲及得到高电平时间长度 按照初中物理声音传播公式: 我们只要测出公式中T所用的时间即可得到距离。 硬件接线 为了方便捕获SIG信号高脉冲的宽度为使用芯片的TIMER2的通道3作为输入捕获口。此通道对应的是PA3这个IO口。如下图所示: 功能实现思路  发送出发信号到SIG引脚 配置PA3推挽输出口,并拉高10us的高电平接收SIG引脚并检测高电平时间 配置PA3为悬浮输入并将TIMER2配置为在通道3启用输入捕获模式。然后先后捕获上升沿及下降沿时的时间点。通过这两个参数,即可计算得到超声波往返点时间。通过得到时间后套用物理公式即可得到转换后的距离得到距离数据后即可将数值显示到OLED上实现动态测距 main.c代码 #include config.h #include delay.h #include ultrasonic.h #include oled.h#define LED_GPIO_PORT GPIOD #define LED_PIN GPIO_PIN_4#define BUTTON_GPIO_PORT GPIOD #define BUTTON_PIN GPIO_PIN_3static void init_gpio() {GPIO_Init(LED_GPIO_PORT, LED_PIN, GPIO_MODE_OUT_PP_LOW_FAST);GPIO_Init(BUTTON_GPIO_PORT, BUTTON_PIN, GPIO_MODE_IN_PU_NO_IT); OLED_Init(); } void set_screen_color_and_display(uint8_t cfg) {// BIT0作为屏幕颜色控制 0: 正常显示 1: 反色显示OLED_ColorTurn(cfg 0x01);// BIT1作为屏幕颜色控制 0: 正常显示 1: 屏幕翻转显示 OLED_DisplayTurn((cfg 1) 0x01); }void main(void) {static uint8_t testBuffer[32] {0};static uint8_t k 0;bool isKeyDown FALSE;uint8_t screenCfg 0;uint8_t t ;uint32_t range 0;disable_interrupts();for (uint16_t i 0; i sizeof(testBuffer); i){testBuffer[i] i;}enable_interrupts();LOG(Startup...\r\nss);DUMP(testBuffer,sizeof(testBuffer));init_gpio();OLED_ColorTurn(0);//0正常显示1 反色显示OLED_DisplayTurn(0);//0正常显示 1 屏幕翻转显示 while (1){ GPIO_WriteReverse(LED_GPIO_PORT,LED_PIN);isKeyDown GPIO_ReadInputPin(BUTTON_GPIO_PORT,BUTTON_PIN) RESET;range ultrasonic_get_range_in_centimeters();LOG(OLED Test app_sdcc %u key %s , range %lu cm\r\n,k, isKeyDown ? down : up,range);if (isKeyDown TRUE){if (screenCfg 3){screenCfg 0;}set_screen_color_and_display(screenCfg);OLED_Clear(); }OLED_ShowString(25,0,Pegasus Board,8);OLED_ShowString(35,2,2023/09/20,8);OLED_ShowString(20,4,isKeyDown ? Button Down : Button Up ,8);OLED_ShowNum(90,4,range,3,8);OLED_ShowString(108,4, cm,8); OLED_ShowString(0,6,ASCII:,8); OLED_ShowString(63,6,CODE:,8);OLED_ShowChar(48,6,t,8);t;if(t~)t ;OLED_ShowNum(103,6,t,3,8); delay(500);} } #ifdef USE_FULL_ASSERT/*** brief Reports the name of the source file and the source line number* where the assert_param error has occurred.* param file: pointer to the source file name* param line: assert_param error line source number* retval None*/ void assert_failed(uint8_t* file, uint32_t line) { /* User can add his own implementation to report the file name and line number,ex: printf(Wrong parameters value: file %s on line %d\r\n, file, line) */LOG(Wrong parameters value: file %s on line %d\r\n, file, line); /* Infinite loop */while (1){} } #endif 运行效果 让Pegasus天马座开发板实现超声波测距 工程分享 工程下载路径
http://www.dnsts.com.cn/news/25692.html

相关文章:

  • 网站建设的公司哪家好福州网站运营
  • 建手机版网站品牌建设
  • 传媒网站建设方案网站维护 英语
  • 自己做服务器的网站吗网站建设资源kindle
  • 长沙精品网站建设公司威县网站建设代理价格
  • 广东省建设交易中心网站沈阳建设工程信息网 最佳中项网
  • 黄页网络的推广网站有哪些好美发网站带手机版
  • 建设自己的网站步骤南京做网站建设搭建的公司
  • 网站菜单样式个人网站备案名字重要吗
  • wordpress制作网站步骤淘客网站如何做能加快收录
  • 个人网站能不能做论坛源码搭建app教程
  • 中国建设银行官网站电脑版多用户商城系统哪家好
  • 网站建设流程资讯网站设计团队分工
  • 微信公众号免费制作成微网站做网站外包大学生
  • 大型网站开发团队公司管理流程
  • aspcms手机网站怎么做商城网站规划
  • 元芳重庆网站建设淘宝seo优化怎么做
  • 站长工具查询官网建设旅游景点的网站的好处
  • 做网站几天能学会网站用html模拟图片
  • 重庆快速网站建设平台做问卷哪个网站好
  • 北京做网站的公司有哪些沈阳seo专业培训
  • 电子商务如何设计网站建设本地wordpress无法打开网站
  • 做网站卖菜刀需要什么手续paypal网站集成
  • 太仓智能网站开发免费网站现在是怎么了
  • 360提示的危险网站网站建设工作室门头
  • 花都营销型网站wordpress会员邮件通知
  • 东莞网站关键词优化怎么做c2c电子商务网站的功能
  • 系统难还是网站设计难做自己建网站怎么推广
  • 网站定制站绵阳新农网的网站是哪个公司做的
  • 专门做鞋的网站网页开发基础答案