色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

聚豐項目 > 基于AB32VG1的工程師調試電源控制器

基于AB32VG1的工程師調試電源控制器

基于AB32VG1開發板實現一個可監控控制的USB調試電源,實現設備自動化控制自動化運行,解放工程師的雙手。 在項目開發調試階段總會遇到一些小問題,這時候工程師總會拿起電烙鐵、示波器、邏輯分析儀一頓操作,但是這時候需要脫離市電操作。或者在量產下載時需要多個端口供電穩定的USB電源。我常常因為這些原因拿著線到處焊,效率低還不穩定。 正好發現RT-Thread聯手中科藍訊、沁恒微電子、電子發燒友開展本次RT-Thread X RISC-V 創新應用設計大賽。在之前使用過CH32V103的芯片而且在量產使用中了,感覺移植程序挺快的。現在國內都在發力造芯片,RISC-V作為一個開源開放的架構是很有取代ARM的趨勢的。我作為一個嵌入式開發者,為RT-Thread和RISC-V貢獻一點一點力量。所以我立馬去申請AB32VG1開發板做這個USB電源。

CB電子 CB電子

分享
1 喜歡這個項目
團隊介紹

CB電子 CB電子

團隊成員

CB 嵌入式

分享
項目簡介
基于AB32VG1開發板實現一個可監控控制的USB調試電源,實現設備自動化控制自動化運行,解放工程師的雙手。 在項目開發調試階段總會遇到一些小問題,這時候工程師總會拿起電烙鐵、示波器、邏輯分析儀一頓操作,但是這時候需要脫離市電操作。或者在量產下載時需要多個端口供電穩定的USB電源。我常常因為這些原因拿著線到處焊,效率低還不穩定。 正好發現RT-Thread聯手中科藍訊、沁恒微電子、電子發燒友開展本次RT-Thread X RISC-V 創新應用設計大賽。在之前使用過CH32V103的芯片而且在量產使用中了,感覺移植程序挺快的。現在國內都在發力造芯片,RISC-V作為一個開源開放的架構是很有取代ARM的趨勢的。我作為一個嵌入式開發者,為RT-Thread和RISC-V貢獻一點一點力量。所以我立馬去申請AB32VG1開發板做這個USB電源。
硬件說明

1.AB32VG1開發板部分

AB32VG1開發板的主要功能是控制usb板的電壓輸出和oled顯示,以及采集按鍵和電流采樣的數據。使用芯片的硬件部分 ADC、uart、和gpio等等,等以后有時間了再增加藍牙與手機通信,音頻播放提示音等功能

USB供電板的主要由USB HUB芯片FE1.1S和電源控制、電壓采樣、電流采樣、OLED顯示和按鍵電路。電壓采樣和電流采樣使用了TL431做基準參考電壓來計算值。

同時USB端口板上面有一個CH340芯片連接USB HUB的port1 和AB32VG1的uart1,可以通過PC端的modbus主機軟件查詢到USB1、USB2、USB3的電流值、并且能控制電源通斷。


img_20211208002540.png

img_20211208002540.png




img_20211208002502.png




軟件說明

軟件上,AB32VG1開發板肯定首選是rt-thread操作系統,因為rt-thread有AB32VG1的bsp而且有gpio、uart、adc等驅動,對于一個經常使用rtthread的人來說真的是太方便了。

1.rt-thread的設備驅動

我的項目比較簡單,主要使用gpio、adc、uart,在RT-Thread Studio中創建了一個基于AB32VG1的工程后,打開RT-Thread Setting工具,將硬件欄里的uart1  adc0 使能,這個時候保存編譯下載到開發板,在msh中輸入 list_device 查看設備  adc0 和 uart1都在,OK第一步就準備好了。

msh >list_device
device           type         ref count
-------- -------------------- ----------
adc0     Miscellaneous Device 0      
uart1    Character Device     1      
uart0    Character Device     2      
pin      Miscellaneous Device 0  


2.軟件包選擇

由于我需要驅動oled和使用modbus功能,所以我再次打開了RT-Thread Setting工具。

軟件包-》IOT -》small_modbus 軟件包勾選

軟件包-》drivers-》ssd1306 軟件包勾選

3.軟件架構和程序流程

整個項目的功能主要是一個虛擬io和三個線程相互配合實現的。

(1)虛擬io,負責存儲modbus線圈數據寄存器數據,是按照modbus數據格式存儲的。

(2)slave modbus從機線程,負責uart1的modbus從機處理功能,當modbus主機來查詢讀寫數據時,都會最終讀寫到虛擬io的存儲區。這部分主要由small modbus軟件實現。

(3)scanio 的功能比較繁重費時,主要是按一定周期循壞 掃描按鍵、采集adc值換算結果、更新電源輸出狀態。

adc采集比較簡單主要采集五路的adc,第一路是tl431的基準電壓2.5v,通過這路adc的值就可以計算出每個單位adc代表的精準的電壓值。讓后推算出第二路的5V電壓,三到五的電流值,三到五路的電流值是經過運算放大器放大的mv電壓值,精度應該在ma級。

按鍵掃描主要是掃描三個按鍵狀態,并存儲到虛擬io中以便modbus查看,同時檢測到按鍵上升沿變化時會切換對應的USB電源狀態,并同時oled的信號量立即更新oled畫面。

(4)還有一個main主線程,main函數里面運行著oled顯示的任務。平常oled是通過sem_oled_update的信號量每500ms超時來更新畫面數據的。

(5)線程列表

msh >ps
thread   pri  status      sp     stack size max used left tick  error
-------- ---  ------- ---------- ----------  ------  ---------- ---
slave      8  suspend 0x00000168 0x00000800    18%   0x00000009 000
scanio     9  suspend 0x000000bc 0x00000800    12%   0x0000000a 000
tshell    20  running 0x000000fc 0x00000800    26%   0x00000009 000
drv       18  suspend 0x000000f0 0x00000200    46%   0x00000001 000
tidle0    31  ready   0x00000098 0x00000200    29%   0x0000001e 000
timer      4  suspend 0x000000a8 0x00000100    65%   0x00000009 000
main      10  suspend 0x000000c4 0x00000800    16%   0x00000005 000


(5)軟件框架圖

img_20211208002747.png







評論區(0 )
主站蜘蛛池模板: 伊人国产在线观看 | 一本色道久久综合亚洲精品蜜桃冫 | 亚洲国产高清视频在线观看 | 补课H湿 1V1 PLAY| 亚洲成A人片在线观看中文不卡 | 清晨紧湿爱运动h高h | 国产日韩欧美另类 | 6080yy奇领电影在线看 | 成人免费肉动漫无遮网站 | 国产福利一区二区精品 | jaPanesmature儿母 japanese幼儿videos | 亚洲 日韩 自拍 视频一区 | 浪荡受自我调教纯肉BL | 免费光看午夜请高视频 | 伊伊人成亚洲综合人网 | 男生J桶进女人P又色又爽又黄 | 又爽又黄又粗又大免费视频 | 亚洲日韩欧美国产中文在线 | 久久视频在线视频观品15 | 9久高清在线不卡免费无吗视频 | 伊人青青草原 | 精品无码久久久久久国产百度 | 色悠久久综合 | 99精品国产高清自在线看超 | 两性色午夜视频免费国产 | 欧美手机在线播放 | 国产激情视频在线播放 | 国产精品一区二区AV白丝在线 | 成人免费观看国产高清 | 被公疯狂玩弄的漂亮人妻 | 青娱乐国产精品视频 | 男人J进女人P | 中国少妇内射XXXHD免费 | 呻吟翘臀后进爆白浆 | 在线高清视频不卡无码 | 打开双腿狠狠蹂躏蜜桃臀 | np高h肉文 | 久久精品免费观看久久 | 最新影音先锋av资源台 | 伊人久久大香线蕉资源 | 短篇合集纯肉高H深陷骚 |