使用AVR控制一个蜂鸣器,能随心所欲控制蜂鸣器的鸣叫,不会让它乱叫! | |||||||||||||||||||||||||||||||||||||||||||
关于AVR的I/O结构及相关介绍详见Datasheet,这里仅对作部分简单介绍,下面是AVR的I/O引脚配置表:
AVR主控电路原理图(点击图片放大,不需要放大镜!) 蜂鸣器控制电路原理图 | |||||||||||||||||||||||||||||||||||||||||||
下面部分从TXT拷出,拷到网页,代码部分缺省了很多空格,比较凌乱,请谅解! //目标系统: 基于AVR单片机 //应用软件: ICC AVR /*01010101010101010101010101010101010101010101010101010101010101010101 ---------------------------------------------------------------------- 实验内容: 能随心所欲控制蜂鸣器的鸣叫,不会让它乱叫。 示例程序使蜂鸣器间歇式的进行鸣叫,叫1秒,停1秒。 ---------------------------------------------------------------------- 硬件连接: 将PD口的LED指示灯使能开关切换到"ON"状态。 ---------------------------------------------------------------------- 注意事项: (1)若有加载库程序,请将光盘根目录下的“库程序”下的“ICC_H”文件夹拷到D盘 (2)请详细阅读:光盘根目录下的“产品资料\开发板实验板\SMK系列\SMK1632\说明资料” ---------------------------------------------------------------------- 10101010101010101010101010101010101010101010101010101010101010101010*/ #include <iom16v.h> #include "D:\ICC_H\CmmICC.H" #define OUT_BUZ sbi(DDRB,3) //PB3 #define BUZ_ON cbi(PORTB,3) #define BUZ_OFF sbi(PORTB,3) /*-------------------------------------------------------------------- 程序名称: 程序功能: 注意事项: 提示说明: 输 入: 返 回: --------------------------------------------------------------------*/ void main(void) { OUT_BUZ; //设置相应的IO口为输出 while(1) { BUZ_ON; //我叫 delay50ms(20); BUZ_OFF; //我不叫 delay50ms(20); } } | |||||||||||||||||||||||||||||||||||||||||||
|
欢迎光临 DIY编程器网 (http://diybcq.com./) | Powered by Discuz! X3.2 |