国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

迅為4412開發板Linux字符設備控制(二)

發布時間:2021-3-9 15:08    發布者:落風
17.3  字符類 Buzzer  蜂鳴器
和 led 燈類似,蜂鳴器的設備節點也是在/dev 目錄下,如下圖所示。

蜂鳴器的硬件和 led 燈類似,如下圖所示。

如上圖所示。
原理圖很容易理解,如果網絡 MOTOR_PWM 為高電平,則 L9014 導通,蜂鳴器響,如果網絡MOTOR_PWM 為低電平,則 L9014 截止,蜂鳴器則不響。
操作方式和 led 小燈類似。
蜂鳴器測試例程
編寫簡單的 buzzertest.c 文件測試蜂鳴器。
首先添加頭文件,如下圖所示,下面新加了幾個庫文件,一般常用的就是下面幾個,寫代碼的時候,
為了方便,可以直接都添加上。

然后 main 函數如下圖所示。

如上圖代碼所示。由于只有一個 IO,底層沒有做第三個參數的判斷,所以無效
第 16-19 行,對參數 argv[1]有個簡單的判斷,命令只能是 0 或者 1。
第 21-24 行,open 函數打開蜂鳴器設備節點
第 26 行,使用 ioctl 函數操作蜂鳴器。
第 27 行,使用 close 函數關閉設備節點。
編譯運行測試
Ubuntu 系統下,如下圖所示,進入前面實驗創建的目錄“/home/linuxsystemcode/charcontrol”,將源碼 buzzertest.c 拷貝進去,如下圖所示。

使用命令“arm-none-linux-gnueabi-gcc -o buzzertest buzzertest.c -static”編譯buzzertest 文件,如下圖所示,使用命令“ls”可以看到生成了 buzzertest 可執行文件。

這里介紹 U 盤拷貝代碼的方法,也可以編譯進文件系統。
將編譯成的可執行文件 buzzertest,拷貝到 U 盤,啟動開發板,插入 U 盤,加載 U 盤, 運行程序如下。
使用參數 1 和 0,蜂鳴器會響。第二個參數實際上并不起作用。

如下圖所示,使用參數 0 和 0,蜂鳴器會停止響。

17.4  字符類 ADC  模數轉換
和 led 燈類似,數模轉換的設備節點也是在/dev 目錄下,如下圖所示。

模數轉換的硬件部分如下圖所示。

如上圖所示。
XadcAIN0 網絡可以讀取到當前輸入電壓,滑動變阻器 R 移動的時候,1 和 2 之間的電阻 R12 改變,滑動變阻器最大電阻為 R13,然后電壓 Vadc=R12*VDD1V8_EXT/R13
上面公式中 Vadc 可以通過 4412 讀取出來,VDD1V8 和 R13 已知,那么就很容易求出 R12 的電阻。如下圖所示,在 4412datasheet 中 ADC 章節中有真實的電阻和電壓曲線圖。

這里將數值做一個簡單的換算,
1.8V 對應的是 10K 歐姆,對應的寄存器數值為 0xfff;
0V 對應的是 0 歐姆,對應的寄存器數值為 0x0。
這樣做一個簡單公式,將讀取的數值 r 轉化為電阻值 R。
R = r*10000/0xfff,即 R = r*10000/4095。
這個小公式在后面的代碼中將會使用到。
模數轉換例程
編寫簡單的 ADC.c 文件測試 adc 的驅動。首先添加頭文件,如下圖所示。

然后 main 函數如下圖所示。

如上圖代碼所示。
第 14 行,設備節點為 char *adc = "/dev/adc"。
第 21 行,打開設備節點文件。
第 26 行,使用 read 函數,將讀取數字賦予 buffer。
第 30 和 31 行,做個簡單地換算,將讀取的數值轉化為電阻值。
編譯運行測試
在 Ubuntu 系統下,如下圖所示,進入前面實驗創建的目錄“/home/linuxsystemcode/charcontrol/”將源
碼 ADC.c 拷貝進去,如下圖所示。

使用命令“arm-none-linux-gnueabi-gcc -o ADC ADC.c -static”編譯 ADC 文件,如下圖所示,使用命令“ls”可以看到生成了 ADC 可執行文件。

這里介紹 U 盤拷貝代碼的方法,也可以編譯進文件系統,具體方法參考 10.3.5 小節。將編譯成的可執行文件 open,拷貝到 U 盤,啟動開發板,插入 U 盤,加載 U 盤,運行程序。
如下圖所示,使用命令“./mnt/udisk/ADC”即可檢測當前電阻值,中間的大段打印參數是多次打印寄存器的數值,在驅動實驗中再去介紹。

調整滑動電阻器之后,再次使用測試程序,如下圖所示,輸出數值會有變化。

滑動變阻器向順時針旋轉,阻值會減小,最小為 0;
滑動變阻器向逆時針旋轉,阻值會增大,最大為 10K。


本文地址:http://m.qingdxww.cn/thread-761858-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人免费网址在线观看黄动漫 | 亚洲高清美女一区二区三区 | www99热| 日本亚洲最大的色成网站www | 国产在线成人一区二区 | 久久精品国产99久久99久久久 | 日韩欧美视频一区 | 又粗又硬女人免费视频 | 日韩黄色在线视频 | 亚洲h视频| 九九精品视频在线观看九九 | 久久久久激情免费观看 | 成人国产午夜在线视频 | 狠狠插入视频 | 成人美女免费网站视频 | 一二三四社区在线视频社区3 | 国产国产人免费视频成69大陆 | 亚洲日韩视频免费观看 | 九九婷婷 | 四虎永久影院 | 亚洲精品老司机福利在线播放 | 日韩欧美中文字幕一区二区三区 | 日本国产一区在线观看 | 欧美视频精品在线 | 欧美激情视频一区二区 | 黄毛片视频 | 欧美一区二区三区高清视频 | 麻豆免费永久网址入口网址 | 日本a在线天堂 | 爱视频福利 | 五月天婷婷视频在线观看 | 青青青国产手机在线播放 | 手机在线精品视频 | 成年免费大片黄在线观看一 | 国产精品亚洲国产三区 | 久久五月天综合 | 天堂网在线资源www最新版 | 国产麻豆精品一区二区 | 精品一区精品二区 | 久久精品一区二区三区中文字幕 | 95老司机免费福利 |