驅動蜂鳴器

2021-06-03 18:30:41 字數 1731 閱讀 6790

硬體說明

蜂鳴器用過**管開關驅動,連到s3c6410的gpf15腳,且高電平蜂鳴器響。

gpf配置暫存器gpfcon位址為0x7f0080a0,且[31:30]配置為01時,表示gpf15腳用於輸出。

gpf資料暫存器gpfdat位址為0x7f0080a4,且[15]配置為1時,表示gpf15腳為高電平。

gpf上拉控制暫存器gpfpud位址為0x7f0080a8。

**檔案buzzer.s

.text

.global main

main:

stmfd sp!,

@ mov r0, #1

@ mov r0, r0, lsl #30

ldr r0, =(1 << 30)

ldr r1, gpfcon

str r0, [r1]

beep:

@ mov r0, #1

@ mov r0, r0, lsl #15

ldr r0, =(1 << 15)

ldr r1, gpfdat

str r0, [r1]

b beep

ldmfd sp!,

gpfcon:

.word 0x7f0080a0

gpfdat:

.word 0x7f0080a4

gpfpud:

.word 0x7f0080a8

連線指令碼buzzer.lds

獲取lds模板

# arm-none-linux-gnueabi-ld --verbose > buzzer.lds
修改為

output_format("elf32-littlearm", "elf32-bigarm",

"elf32-littlearm")

output_arch(arm)

entry(main)

sections

.align = 4 ;

}

編譯**

# arm-none-linux-gnueabi-gcc -c buzzer.s -o buzzer.o

# arm-none-linux-gnueabi-ld -t buzzer.lds buzzer.o -o buzzer

# arm-none-linux-gnueabi-objcopy -o binary buzzer /tftpboot/buzzer.bin

執行**

在u-boot命令狀態

$ tftp 0x50008000 buzzer.bin

$ go 0x50008000

執行結果

蜂鳴器長響不停

蜂鳴器驅動電路

蜂鳴器驅動電路一般包含 乙個三極體 乙個蜂鳴器 乙個續流二極體 乙個濾波電容。蜂鳴器 發聲元件,在其兩端施加直流電壓 有源蜂鳴器 或者方波 無源蜂鳴器 就可以發聲,其主要引數是外形尺寸 發聲方向 工作電壓 工作頻率 工作電流 驅動方式 直流 方波 等。這些都需要根據需要進行選擇。續流二極體 蜂鳴器本...

蜂鳴器驅動電路

在電子產品設計中,蜂鳴器是常用到的元件。那麼,今天來說說如何驅動蜂鳴器。以 興化市華宇電子 hyt 12電磁式有源蜂鳴器為例。1.hyt 12電磁式有源蜂鳴器技術引數。如下圖 2.額定電壓3.3v的蜂鳴器驅動電路。如下圖 2.1 蜂鳴器限流電阻的計算。根據蜂鳴器的引數得知,3.3v蜂鳴器的工作電壓v...

linux 驅動之PWM蜂鳴器驅動

table of contents 1 常用pwm函式 2 驅動程式設計例項 3 應用程式設計 4 pwm裝置樹節點配置 5 核心配置 6 測試 申請乙個pwm裝置 pwm device pwm get struct device dev,const char con id 配置pwm週期和占空比 ...