Linux下的51单片机蜂鸣器模拟出玩具枪声音

本文介绍了如何在Linux环境下,利用51单片机的定时器中断和蜂鸣器,模拟出玩具枪的声音。实验涉及单片机定时器原理、设置定时常数、中断服务程序以及蜂鸣器的频率控制。通过改变定时器初值,调整蜂鸣器发声频率,从而实现不同声音的模拟。
摘要由CSDN通过智能技术生成

1、 实验目的
了解单片机定时器中断原理
学会单片机定时器中断和蜂鸣器结合的用法;
2、 实验设备
装有sdcc交叉编译环境,Python烧写工具,装有Linux的系统;
51单片机开发板 1 个,USB 数据线 1 根,跳线帽 1 个
3、 实验内容
了解单片机定时器原理说明
编写程序实现单片机定时器中断;
烧写单片机定时器和蜂鸣器结合程序。
4、 实验原理
关于内部定时/计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部定
时/计数器在单片机中主要有定时器和计数器两个功能。本实验用的是定时器。内部定时/计
数器用作定时器时,是对机器周期计数。每个机器周期的长度是 12 个振荡器周期。因为实
验系统的晶振是 11.0592MHz,所以定时常数的设置可按以下方法计算:
机器周期=12÷11.0592MHz=1.08507μs
(65536-定时常数)*1.08507μs =50ms(50ms 中断一次)
定时常数=4C00H。
定时器的有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON。TMOD 用于设置定时器/计数器的工作方式 0~3,并确定用于定时还是用于计数。 TCON 主要功能是为定时
器在溢出时设定标志位,并控制定时器的运行或停止等。在例程的中断服务程序中,因为中
断定时常数的设置对中断程序的运行起到关键作用,置数前先关定时器,置数完再打定时器。
**蜂鸣器模拟枪声实质就是利用定时器产生不同频率的值来导通蜂鸣器产生不同的声音。
通过改变定时器初值,来设置中断时间的长短,改变蜂鸣器发声频率,从而改变声音。**
5,实验相应寄存器

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值