完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
放上自己写好的例程,结合前面的一些说明,因为故意去掉了中断部分,想来没学好中断的同学也可以很好理解。
#include "HT66F70A.h" #include "type.h" #define led _pfc #define led1 _pf #define trig _pe0 #define echo _pe1 #define trig_t _pec0 #define echo_t _pec1 unsigned long time; unsigned long S; void delay_us(uint n) { uint i; for(i=0;i } void tm_init(void) { _tm0c0=0x00; _tm0c1=0xc0; } void conut(void) { time=_tm2dh*256+_tm2dl; S=(time*1.7)/100; } void fabo() { trig=1; delay_us(30); trig=0; } void main() { _wdtc=0b10101111; echo_t=1; //输入模式 trig_t=0; //输出模式 led=0x00; //led为输出模式 tm_init(); //tm计数器初始化 led1=0xff; while(1) { fabo(); while(!echo); //当echo为零时等待 _t2on=1; //开始计数 while(echo); //当echo为1计数并等待 _t2on=0; //关闭计数器 conut(); //计算 if(S>30) //S为测量距离,可以直接进行更改 led1=0x00; else led1=0xff; } } |
|
|
|
只有小组成员才能发言,加入小组>>
3316 浏览 9 评论
2995 浏览 16 评论
3494 浏览 1 评论
9060 浏览 16 评论
4088 浏览 18 评论
1180浏览 3评论
605浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
599浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2335浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1896浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 04:04 , Processed in 1.039552 second(s), Total 77, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号