- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图理解this code :
#include <pic.h>
#include "delay.h"
#define brisi_flag timer_flag=0
unsigned char timer;
unsigned char impuls;
unsigned char ton_koji_ne_svira;
static bit disable @ (unsigned)&PORTA*8+4;
static bit izlaz @ (unsigned)&PORTA*8+1;
static bit izlaz_inv @ (unsigned)&PORTA*8+0;
static unsigned char stanja @ 0x2e;
static bit stanje_izlaza @ (unsigned)&stanja*8+1;
static bit timer_flag @ (unsigned)&INTCON*8+2;
void
DelayMs_2(unsigned char cnt)
{
unsigned char i;
do { asm("CLRWDT");
if(ton_1)
return;
i = 4;
do {
DelayUs(250);
} while(--i);
} while(--cnt);
}
void
DelayMs(unsigned char cnt)
{
unsigned char i;
do { asm("CLRWDT");
i = 4;
do {
DelayUs(250);
} while(--i);
} while(--cnt);
}
void ton_1_2(unsigned char onaj_drugi_ton)
{
izlaz=0;
izlaz_inv=1;
stanje_izlaza=0;
TMR0=timer;
ton_1_2_start:
brisi_flag;
disable=0;
ton_1_2_sviranje:
while(timer_flag==0)
{
if((TMR0-timer)>=impuls)
{izlaz=0;
izlaz_inv=0;
}
}
brisi_flag;
TMR0=timer;
if(stanje_izlaza==0)
izlaz_inv=1;
else
izlaz=1;
stanje_izlaza=stanje_izlaza+1;
if((PORTA&0x0c)==onaj_drugi_ton)
return;
asm("CLRWDT");
goto ton_1_2_sviranje;
}
void main()
{
CMCON=0x07;//portA su normalni ulazi (za 16F628A)
TRISA=0x0c;
TRISB=0xff;
disable=1;
OPTION=0x81; //WDT na 18 msec, preset TMR0 sa 4
izlaz=0;
izlaz_inv=0;
timer=107;
impuls=0x1d;
ton_1_2(ton_koji_ne_svira);
}
该程序在扬声器上生成800 Hz声音。我不明白如何计算频率(它必须是带有变量 impuls
和 timer
的东西)。此代码适用于 PIC16F628A
,其外部振荡器设置为 4Mhz。
最佳答案
这是我对代码的理解。
定时器从 107 开始。由于定时器中断在溢出时触发,因此周期为 256-107 = 149 个时钟周期。在每个周期内,输出在 IMPULS=29 个时钟周期后关闭。因此,占空比为 29/149=19%。此外,脉冲在两个引脚之间交替。
OPTION=0x81 为定时器设置 1:4 预分频器。因此,如果时钟以 4MHz(周期 0.25μs)运行,则定时器以 1MHz(周期 1μs)滴答。因此,149 个刻度的周期应等于 149μs,对应于 6711Hz 的频率。添加每次启动定时器所需的时间,实际频率略低。
你确定频率是800Hz吗?你测量了吗?也许处理器确实以 500Hz 运行,或者某处存在全局 1:8 预分频器。
关于c - PIC 16F628A 扬声器声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11740020/
本文实例讲述了Android开发之关闭和打开Speaker(扬声器)的方法。分享给大家供大家参考,具体如下: ?
是否可以在Delphi Code中控制(启用/禁用)扬声器图标。 是否有注册表项? 非常感谢... 最佳答案 尽管可以通过更改未记录的注册表值来“隐藏”图标,但用户可以在tray icon选项中再次取
我正在尝试从麦克风获取音频并通过连接到辅助设备的扬声器进行流式传输我使用了此代码,但它在录音机的初始化中不起作用但我真正的问题是“这是正确的方法还是有更好的方法”以及如何解决初始化音频的问题 publ
此问题之前已在此站点上被问过和回答过两次,但该代码似乎根本不适用于现代手机。我正在使用 Android 4.2 和 Android 4.3,但似乎都不起作用。 我在通话期间通过媒体播放器播放 MP3,
我想知道如何开发应用程序/服务器。我的安卓手机会在我说话时录制我的声音,并将其发送到 PC,然后使用 PC 的扬声器播放。 我想我需要一个在计算机上运行的媒体服务器来接收我的声音,然后使用手机上已有的
背景 我需要在软电话应用程序中显示连接的耳机列表(麦克风和耳机组合)。为了进行测试,我有以下设备: 捷波朗 PRO 9470 缤特力 BT300M 罗技 G430 游戏耳机麦克风 用户应该能够从 Co
如标题,我想知道如何获得我的 voip 应用程序的可用输出声音路径列表,或重现默认的 IOS 效果。此时我可以在用户调用电话时启用/禁用扬声器,但如果用户连接了蓝牙耳机,我希望用户可以选择使用哪条路由
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 1
我使用了以下代码,它希望通过系统扬声器发出声音。代码确实听起来但通过声卡(桌面扬声器/耳机)。 我认为可以直接使用系统蜂鸣器发出声音,因为在设备管理器中它会显示相应的驱动程序。有没有解决这个问题的方法
我正在尝试使用nodejs(带 Electron )播放警告声音,即使音量调低或连接了耳机,也应始终在系统默认设备(扬声器)上以最大音量播放警告声音。 到目前为止,我使用 naudiodon播放声音,
如标题所示,如何将来电中的音频静音?我对任何类型的解决方案都感兴趣,使用 SDK、NDK 中的 API,甚至修改 AOSP 内核源代码并重新编译它们,可能会公开一个新接口(interface)。 最佳
我正在尝试开发一个应用程序来记录双方(麦克风和扬声器)的通话。我已经看到有一个应用程序 vrecorder 为 android 1.6 提供这个 vrecorder。 现在我想为 android 2.
在我正在使用的应用中,我们目前支持 Chromecast,但我们有兴趣添加对 Sonos 扬声器的转换支持,就像在 Play Music 中所做的那样。 当使用 MediaRouter 列出可用路线时
有没有办法在 java 中获取设备(扬声器、耳机)的 GUID?我正在尝试修改注册表中的特定值,例如我需要这个键名 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wind
我正在运行 Debian Sid,我想知道我的 USB 扬声器在系统中的什么位置。例如:当我插入笔式驱动器时,dmesg 会显示它的位置(sda、sdb 等)。但是当我插入 USB 扬声器时,它没有显
我在使用 Galaxy S5 时遇到了一个奇怪的设备特定问题。我正在使用 SIP (Linphone) 从 Galaxy S5 调用另一台设备,当我启用扬声器时,该设备开始使用其主麦克风作为降噪麦克风
我想在iPad上专门检测一下有没有耳机 例如 - 我可以使用 AVFoundation 检测 iOS 设备是否有 Tourch,所以有什么方法可以检测耳机的可用性。 最佳答案 1) 如果你想检查设备上
如何在 linux 中使用 PC 扬声器进行 c/c++ 编程?我可以控制哔声的时间和频率吗? 最佳答案 取自 here : #include #include #include int mai
我正在尝试使用 C# 和 NAudio API 记录扬声器输出以检测任何播放音乐的音量和 BPM。 问题是,我不知道该怎么做:/ 我有来自 http://opensebj.blogspot.de/20
想要的功能: 它类似于 iPhone 原生手机应用程序。当有蓝牙/耳机连接到 iPhone 时,扬声器按钮(通常只有扬声器/电话切换)将显示所有可用的音频输出设备。默认使用蓝牙。用户可以选择另一个设备
我是一名优秀的程序员,十分优秀!