首页 > 其他分享 >蓝桥杯备忘录——超声波

蓝桥杯备忘录——超声波

时间:2024-05-19 09:08:21浏览次数:15  
标签:定时器 0x00 TH0 蓝桥 备忘录 TL0 设置 time 超声波

有关蓝桥杯的超声波代码 实测测距能达到两米多 以下是代码 void chao_init() { uchar i; for(i=0;i<8;i++) { na1=1; //连续发送8个频率为40Khz的超声波信号 Delay12us(); na1=0; Delay12us(); } } ////////////////////////////////////////////////// 接下来是计算函数的定时器初始化 定时器初始化可以直接用软件生成,但需要把TH0和TL0的值清零 void Timer0_Init(void) //10微秒@12.000MHz { AUXR |= 0x40; //定时器时钟12T模式 TMOD &= 0xF0; //设置定时器模式 TL0 = 0x00; //设置定时初始值 TH0 = 0x00; //设置定时初始值 } ////////////////////////////////////////////////// 计算函数 uint get_chao() { uint time=0; //计算变量,通过return返回出去 TMOD &= 0xf0; //设置定时器模式 TL0 = 0x00; //设置定时初值 TH0 = 0x00; //设置定时初值 chao_init(); //发送八个40k的方波 TR0=1; //迅速开启定时器 while(nb1&&TF0==0); //当NB1等于0时或者TF标志位中断时推出while循环 TR0=0; //关闭定时器 if(TF0==0) //如果未溢出则判定值有效 { time=TH0<<8|TL0; //将定时器值高八位和低八位赋值给time return time*0.017; //测试发现无论定时器以1t还是12t的频率下都是乘与0.017 } else { TF0=0; //如果中断标志位超出,则清空中断标志位 time=0; return time; } }

标签:定时器,0x00,TH0,蓝桥,备忘录,TL0,设置,time,超声波
From: https://www.cnblogs.com/linjiawei/p/18200044

相关文章

  • 蓝桥杯国赛训练第二周
    H重建道路一道区间DP好题一开始以为有多种不同的括号匹配次序而导致自己一头大雾wuw,首先看到括号匹配就要想到用栈来求出每个括号对应的匹配项,对于一个区间来说,其左括号一定是具有与之对应的右括号存在时染色才有意义,所以我们要求出每个括号对应的位置\(should[i]\),首先设......
  • P8684 [蓝桥杯 2019 省 B] 灵能传输 题解
    题目传送门本题涉及到了\(3\)种算法:前缀和,排序以及贪心。(1)前缀和本题实际上要求通过某种灵能传输可以使得该序列的最大值最小。而由前缀和可知,当某一个前缀和序列保持有序(或前缀和序列表示的函数单调)时,其\(s[i]-s[i-1]\)的最大值可以达到最小。通过对几个样例的观察......
  • P8741 [蓝桥杯 2021 省 B] 填空问题 题解
    题目传送门试题A:空间【解析】本题考察计算机存储的基础知识,只要掌握空间存储的换算方法,就能够算出答案。【程序】#include<bits/stdc++.h>usingnamespacestd;intmain(){printf("%d\n",256*8/32*1024*1024);return0;}【答案】67108864......
  • P8679 [蓝桥杯 2019 省 B] 填空问题 题解
    题目传送门试题A:组队【解析】本题是一道经典的DFS搜索题,每次对各号位的选手进行DFS,找到各号位上有成绩的选手时再进行进一步搜索即可。【程序】#include<bits/stdc++.h>usingnamespacestd;intteam[20][6];intmax_sum;boolvis[20];voiddfs(intu,intsu......
  • P8806 [蓝桥杯 2022 国 B] 搬砖
    P8806[蓝桥杯2022国B]搬砖一、问题简析本题采用贪心+01背包。令\(a_i=\)第\(i\)块砖;\(a_i.w=\)\(a_i\)的质量;\(a_i.v=\)\(a_i\)的价值。本题与01背包模板不同的地方是,本次选择的砖块会对后续的选择产生影响。为了使承重能力强的砖块留在最后选,贪心地优先......
  • 蓝桥杯-航班时间(简单写法+sscanf的应用)
    小h前往美国参加了蓝桥杯国际赛。小h的女朋友发现小h上午十点出发,上午十二点到达美国,于是感叹到“现在飞机飞得真快,两小时就能到美国了”。小h对超音速飞行感到十分恐惧。仔细观察后发现飞机的起降时间都是当地时间。由于北京和美国东部有12小时时差,故飞机总共需要......
  • P8803 [蓝桥杯 2022 国 B] 费用报销
    P8803[蓝桥杯2022国B]费用报销一、问题简析本题是一道01背包。重点是\(K\)的限制,使我们在取\(a_i\)时,不能无所顾忌地套用模板\(dp_{i-1,j-a_i.worth}+a_i.worth\)。我们必须找到上一张合法的\(a_j\),即\(a_j\)与\(a_i\)之间的日期不小于\(K\)。通过以下步骤确......
  • 蓝桥杯-日期问题
    小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在1960年1月1日至2059年12月31日。令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。更加麻烦的是,年份也都省略了前两位,使得文献上的一个日期,存在......
  • 蓝桥杯-移动距离(最简单的写法)
    X星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为1,2,3…当排满一行时,从下一行相邻的楼往反方向排号。比如:当小区排号宽度为6时,开始情形如下:123456121110987131415.....我们的问题是:已知了两个楼号m和n,需要求出它们之间的最短移......
  • P9425 [蓝桥杯 2022 国 B] 2022
    一、题目描述将\(2022\)拆分成\(10\)个互不相同的正整数之和,有多少种方案?二、问题简析令\(dp[i][j]=\)\(i\)的\(j\)划分的方案数(满足互不相同的正整数)。有两种实现方式:\(dp[i][j]\)不含\(1\)在\(dp[i-j][j]\)的基础上,每个元素+1。有\(j\)个元素,每个元素+1,......