完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
本帖最后由 蓝天ss 于 2014-7-23 15:15 编辑
#include #define uint unsigned int #define uchar unsigned char ***it SPK=P3^6; void delay(uint x); void main () { SPK=0; delay(1); SPK=1; } void delay(uint x) { uchar y; while(x--) { for(y=114;y>0;y--); } } 这是一段控制蜂鸣器的程序,其中的延时程序我想要延时0.25ms ,不知道该怎么写了 ,也不知道该怎么定义变量了 麻烦大家帮忙 设备晶振 应该是24MHZ |
|
相关推荐
9个回答
|
|
很想帮你 ,但是也不懂
|
|
|
|
|
|
|
|
|
|
|
|
单片机小精灵可以自动生成!
|
|
|
|
不是很理解你的意思
|
|
|
|
|
|
|
|
如果不是特别严格的话就是估算,或者找个示波器看看也行
|
|
|
|
void delay(uint z)
{ uint x,y; for(x=z;x>0;x--) for(y=113;y>0;y--); } 这是网上很典型的一种延时,采用的是12M晶振,延时一毫秒。如果你用24M晶振用这个子程序那就延时0.5毫秒。如果要延时0.25毫秒的哇,那程序改为下面那样。同时Z=1。这只是理论分析,不知道实际做出来怎么样,烧录以后用示波器测一下,如果大了或小了只是稍稍修改一下y的值就行。 void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=56;y>0;y--); } |
|
|
|
你的蜂鸣器肯定不会响。因为你在最后少调用一个延时。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
690 浏览 0 评论
735 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
624 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
1099 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
1092 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11794 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 05:33 , Processed in 0.683888 second(s), Total 91, Slave 73 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号